Just hacking around on a toy Rust-based on based on the blog posts at http://blog.phil-opp.com/
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
crates pic_simple v0.1.1: Fix warnings, add delay cycles Sep 18, 2016
rust @ 22d15ea
src
.gitignore
.gitmodules
Cargo.lock Switch to newer version of x86 and other support libraries Sep 18, 2016
Cargo.toml Switch to newer version of x86 and other support libraries Sep 18, 2016
Makefile
README.md
x86_64-unknown-none-gnu.json

README.md

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.