I Need Your Support

Writing these posts is a past-time right now as my full time job is educating (mostly) undergraduate college students. I will always deliver content, but I could really use your help. If you're willing, please support me at Patreon (pavehawk2007)

I've just started and there is much to do! So, please join me!

The Adventures of OS: Making a RISC-V Operating System using Rust

Running title: RISC-V OS using Rust

26 September 2019

Purpose

RISC-V ("risk five") and the Rust programming language both start with an R, so naturally they fit together. In this blog, we will write an operating system targeting the RISC-V architecture in Rust (mostly). If you have a sane development environment for RISC-V, you can skip the setup parts right to bootloading. Otherwise, it'll be fairly difficult to get started.

This tutorial will progressively build an operating system from start to something that you can show your friends or parents -- if they're significantly young enough. Since I'm rather new at this I decided to make it a "feature" that each blog post will mature as time goes on. More details will be added and some will be clarified. I look forward to hearing from you!

The Road Ahead...

When finished, you will have an operating system using the RISC-V architecture that schedules user-space programs from a filesystem, including shell, ls (list files), cd (change directory), and so forth.

This is not intended to be the end-all-be-all, cutting edge operating system, but it is to demonstrate the efficacy of an operating system using the Rust programming language.

Side Projects

  • The Kendryte K210 using Zig
Stephen Marz (c) 2019
Special thanks to my colleague: Prof. Austin Z. Henley.