Skip to main content

Crate nub_arch_x86

Crate nub_arch_x86 

Source
Expand description

Nub Arch implementation for Hyperlight — library form.

Houses the kernel modules (page tables, JIT runtime, page allocator, state cache, call loop) and the production guest- function table. Three binary targets link against this lib:

  • nub-arch-x86 (src/main.rs) — production. Empty shell; extern crate nub_arch_x86 pulls in the lib’s #[guest_function] linkme contributions.
  • nub-arch-x86-tests (src/bin/tests.rs) — production fns + test-only RPCs (e.g. nub_smoke).
  • nub-arch-x86-benches (src/bin/benches.rs) — production fns + bench probes (e.g. bench_arc_page_alloc).

Production deps + the kernel modules are gated on cfg(target_os = "none") so the lib also compiles on host targets — host code (nub crate) imports the test_abi module for FN_ID constants without dragging in any bare-metal deps.

Modules§

test_abi
FN_ID constants shared between the test/bench guest binaries and host-side test/bench drivers. Always compiled — host-visible. FN_ID constants for the test/bench guest binaries.