Skip to main content

Crate javm

Crate javm 

Source
Expand description

JAR v3 integration crate.

Composes the foundational cap system (javm-cap) and the pure execution engine (javm-exec) into a call-stack-aware VM driver that implements the v3 kernel ABI.

This crate is what jar-kernel-v3 will call into for every CALL, CALL_RESUME, host call, and yield routing.

Vm::invoke_cached is the canonical entry point: callers publish caps into a CacheDirectory (via javm_cap::CacheDirectory::publish_*) and then ask the Vm to drive a published instance by hash. The Vm holds only the call-stack-side working state; cap content lives in the cache.

Re-exports§

pub use callstack::CallStack;
pub use callstack::DEFAULT_MAX_DEPTH;
pub use callstack::Entry;
pub use callstack::EntryStatus;
pub use callstack::InstanceEntry;
pub use callstack::ReferenceEntry;
pub use error::VmError;
pub use frame::BareFrame;
pub use frame::MainFrame;
pub use image_cache::ImageCache;
pub use kernel_assist::InProcessKernelAssist;
pub use kernel_assist::KernelAssist;
pub use kernel_assist::KernelImage;
pub use kernel_assist::MeterId;
pub use kernel_assist::QuotaId;
pub use kernel_assist::kernel_image_hash;
pub use kernel_assist::recognize_kernel_image;
pub use vm::CallResult;
pub use vm::Vm;

Modules§

callstack
Kernel-internal call stack.
ecall
Ecall dispatch.
error
Errors surfaced by the v3 Vm.
frame
MainFrame and BareFrame views over the active Instance’s cnode.
image_cache
Image bytecode predecode cache.
kernel_assist
KernelAssist trait: the integration point for kernel-assisted Instances (GasMeter, StorageQuota, YieldCatcher).
vm
The v3 Vm driver.