#virtual-machine #fault #proof #programs #io #system-interface #fpvm

kona-common

Common traits and system interfaces for developing client programs on top of Fault Proof VMs

6 releases

new 0.1.0 Nov 20, 2024
0.0.5 Nov 20, 2024
0.0.4 Oct 25, 2024
0.0.3 Sep 4, 2024
0.0.1 Feb 22, 2024

#178 in Memory management

Download history 4/week @ 2024-07-29 3/week @ 2024-08-12 15/week @ 2024-08-19 14/week @ 2024-08-26 159/week @ 2024-09-02 19/week @ 2024-09-09 50/week @ 2024-09-16 37/week @ 2024-09-23 41/week @ 2024-09-30 43/week @ 2024-10-07 31/week @ 2024-10-14 116/week @ 2024-10-21 44/week @ 2024-10-28 30/week @ 2024-11-04 9/week @ 2024-11-11

202 downloads per month
Used in 2 crates

MIT license

27KB
452 lines

kona-common

This library offers utilities for developing verifiable client executables that may run on top of Fault Proof Virtual Machine targets.

  • The alloc_heap macro allows for statically allocating a heap of a certain size, and all client programs will need to run it if they require heap allocation. The alloc crate can be used for programs targeting any FPVM, but is optional.
  • The io module provides a high-level safe interface over the read, write, and exit syscalls on all available FPVM targets. While the FPVMs support a larger set of Linux syscalls, this crate looks to support the bare-minimum required for client programs to communicate back and forth with the host and exit properly. If a consumer of the library would like to extend the functionality of the ClientIO, an extension trait can be made for the ClientIO type in the io module.

Dependencies

~340–800KB
~18K SLoC