a simple x86 kernel, extended with Rust
(if you are on OSX, ChromeOS, Windows, etc)
nasm: assembler (assembly -> binary)
ld: linker (makes binary out of other files)
grub: creates the bootable iso
xorriso: req'd by grub, filesystem manipulator
QEMU: fake-computer emulator
you don't need these, but they are nice for viewing generated code.
hexdump: allows you to view generated binary
objdump: a nicer viewer for .o files
up and running
fork and clone this repository
navigate into the repo directory:
$ vagrant up
$ vagrant ssh -- -Y
-- -Yforwards graphics
$ multirust default nightly-2015-11-19
Sets your default rust to a stable nightly. The features needed to do OS work in Rust are not yet in a stable release, so you must use a nightly build.
$ cd /vagrant
/vagrantdirectory is the virtualized directory that is synced with the
/directory on your HD.
$ make run