No description
Find a file
Changyuan Lyu 5ad2ea658c feat(virtio): enable ACCESS_PLATFORM bits
Signed-off-by: Changyuan Lyu <changyuanl@google.com>
2024-05-22 23:10:49 -07:00
.github ci: Bump actions/checkout from 4.1.5 to 4.1.6 2024-05-17 08:38:40 -07:00
alioth feat(virtio): enable ACCESS_PLATFORM bits 2024-05-22 23:10:49 -07:00
alioth-cli feat(sev): add a flag for launching SEV guests 2024-05-22 23:10:49 -07:00
docs Initial release 2024-04-24 19:34:14 -07:00
macros feat: proc macro to generate struct layout consts 2024-05-05 21:46:44 -07:00
serde-aco feat(cli): add a new crate for parsing cli opts 2024-05-22 00:00:14 -07:00
.cirrus.yml ci: add Cirrus CI 2024-04-24 22:06:25 -07:00
.gitignore chore(git): ignore vsocde configs 2024-04-26 00:06:54 -07:00
Cargo.lock feat(cli)!: use serde-aco to parse cli options 2024-05-22 00:00:14 -07:00
Cargo.toml feat(cli): add a new crate for parsing cli opts 2024-05-22 00:00:14 -07:00
LICENSE Initial release 2024-04-24 19:34:14 -07:00
README.md build: use stable rust as default 2024-04-24 22:06:25 -07:00
rust-toolchain.toml build: use stable rust as default 2024-04-24 22:06:25 -07:00
rustfmt.toml Initial release 2024-04-24 19:34:14 -07:00

Alioth

Alioth is a toy virtual machine monitor based on KVM. Complementary to the official tutorial Using the KVM API, it demonstrates detailed steps for building a type-2 hypervisor and booting a Linux guest kernel.

Get started

  • Build Alioth from source,

    cargo build --release --target x86_64-unknown-linux-gnu
    
  • Make an initramfs with u-root,

  • Boot a Linux kernel with 2 CPUs and 4 GiB memory:

    cargo run --release --target x86_64-unknown-linux-gnu -- \
        -l info \
        --log-to-file \
        run \
        --kernel /path/to/vmlinuz \
        --cmd-line "console=ttyS0" \
        --initramfs /path/to/initramfs \
        --mem-size 4G \
        --num-cpu=2
    

Disclaimer

Disclaimer: Alioth is not an officially supported Google product.