Skip to content

emk/toyos-rs

Repository files navigation

A toy OS in Rust

This is based on Philipp Oppermann's excellent series of blog posts. It's purely a learning exercise, to see what Rust feels like on bare metal.

Building

First, we need to check out the source and rebuild the Rust runtime using a bare-metal target and no hardware floating point support:

# Get our source code.
git clone https://github.com/emk/toyos-rs.git
cd toyos-rs

# Set up a Rust compiler.
curl https://sh.rustup.rs -sSf | sh
rustup update nightly-2016-09-16
rustup override set nightly-2016-09-16

# Get a copy of the Rust source code so we can rebuild core
# for a bare-metal target.
git submodule update --init
make runtime

From here, we should be able to build a kernel and run it using QEMU:

make run

You should be able to type.

Licensing

Licensed under the Apache License, Version 2.0 or the MIT license, at your option.

About

Just hacking around on a toy Rust-based on based on the blog posts at http://blog.phil-opp.com/

Resources

Stars

Watchers

Forks

Packages

No packages published