Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Excerpt

View file
namerust-vmm presentation to Linaro 040221-01.pdf
height250

Discussion Points 


  • Rust VMM

    • Aarch64 is now Tier 1 for Rust (1.49.0, as per Dec 2020)
    • Memory safety is the headline feature but:
      • well documented, clear rules - enforced by compiler
      • excellent tooling for deps and distribution
      • rich standard library
      • strong approach to modularity, component re-use
    • Used in production at Google, MS, Intel, Arm
      • Fuchsia device model in Rust
      • Parts of Win10 kernel
    • rust-vmm - not a hypervisor!
      • collection of crates (libs) + hypervisor = build a VMM
      • language agnostic! (although in practice the current ones use Rust all the way through)
      • strong FFI interface (to allow Rust modules to drop into other languages supporting the C FFI)
      • primarily supports KVM (at the moment)
      • CrosVM, Firecracker , Intel Cloud Hypervisor (migration support)
    • rust-vmm project
      • 3 stages of a crate (requirements, implementation, production ready on crates.io)
    • rust-vmm + xen
      • project to replace dom0 tooling with rust components
      • early project
    • rust as bare metal
      • -M profile well supported
      • -A coming along
    • tooling questions
      • just works (a lot comes from LLVM support)
      • rust-analyser - provides LSP and IDE integration
      • what about profiling? cargo-flame?
      • some friction between distro/rust community approach to releases
    • rust/kernel integration
      • is ongoing work to allow kernel to have rust device drivers
        • expected to need some language updates
        • 6 week release cycle clashes with Kernel's approach to tooling
        • probably use rustgcc (not the same as the mainline compiler?)

...