rusty-loader is a loader to run RustyHermit within Qemu. To build the loader the llvm-tools and the source code of Rust's runtime are required and can be installed with following command:
$ rustup component add rust-src
$ rustup component add llvm-tools-preview
Afterwards, the loader can be build as follows:
$ make
Afterwards, the loader is stored in target/x86_64-unknown-hermit-loader/debug/
as rusty-loader
.
As final step the unikernel application app
can be booted with following command:
$ qemu-system-x86_64 -display none -smp 1 -m 64M -serial stdio -kernel path_to_loader/rusty-loader -initrd path_to_app/app -cpu qemu64,apic,fsgsbase,rdtscp,xsave,fxsr
It is important to enable the processor features fsgsbase and rdtscp because it is a prerequisite to boot RustyHermit.
Please read the README of RustyHermit for more information.
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.