Expand description
§kona-common
This library offers utilities for developing verifiable client executables that may run on top of Fault Proof Virtual
Machine targets.
- The
alloc_heapmacro allows for statically allocating a heap of a certain size, and allclientprograms will need to run it if they require heap allocation. Thealloccrate can be used for programs targeting any FPVM, but is optional. - The
iomodule provides a high-level safe interface over theread,write, andexitsyscalls on all available FPVM targets. While the FPVMs support a larger set of Linux syscalls, this crate looks to support the bare-minimum required forclientprograms to communicate back and forth with the host and exit properly. If a consumer of the library would like to extend the functionality of theClientIO, an extension trait can be made for theClientIOtype in theiomodule.
Modules§
- errors
- Errors for the
kona-commoncrate. - io
- This module contains the
ClientIOstruct, which is a system call interface for the kernel. - malloc
- This module contains an implementation of a basic memory allocator for client programs in running on an embedded device.
Macros§
- alloc_
heap - Initialize heap memory for the
clientprogram with the given size.
Enums§
- File
Descriptor - File descriptors available to the
clientwithin the FPVM kernel.
Traits§
- Basic
Kernel Interface - The BasicKernelInterface trait describes the functionality of several core system calls inside of the kernel.
Functions§
- block_
on - This function busy waits on a future until it is ready. It uses a no-op waker to poll the future in a thread-blocking loop.