Skip to content

TisButMe/rustboot

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rustboot

A small kernel written in Rust.

It paints the screen bright red and then displays some information. You can write. That's it:

Setup

You need a few things to run rustboot:

  1. rust-core
  2. Rust's master branch or 0.9 release
  3. qemu
  4. On x86
  • clang
  • nasm
  1. On ARM
  • binutils for arm-none-eabi
  • gcc cross-compiler
  1. Optionally for debugging
  • gdb
  • tmux

Clone this repository and update rust-core.

$ git clone https://github.com/pczarn/rustboot.git
$ cd rustboot
$ git submodule update --init
### you can also pull latest rust-core:
$ git submodule foreach git pull origin master

To get edge Rust going, grab it from git:

$ git clone https://github.com/mozilla/rust
$ cd rust
$ ./configure
$ make && make install

Arch Linux

Simply install all dependencies:

# pacman -S qemu nasm rust clang gdb tmux
# yaourt -S gcc-arm-none-eabi

OSX

To set things up on OSX, do this:

Install nasm and qemu from homebrew:

$ brew install nasm
$ brew install qemu

Install latest binutils from source.

$ wget 'ftp://sourceware.org/pub/binutils/snapshots/binutils.tar.bz2'
$ ./configure --target=i386-elf
$ make && make install

Running it

To compile, simply execute make command.

To run, use:

$ make run # emulate default platform (x86)
$ make arch=arm run   # run on ARM
$ make arch=arm debug # debug on ARM

About

A multi-platform kernel written in Rust

Resources

License

Stars

Watchers

Forks

Packages

No packages published