Writing an OS in Rust

Philipp Oppermann's blog

Updates in December 2019

Happy New Year!

This post gives an overview of the recent updates to the Writing an OS in Rust blog and the corresponding libraries and tools.


The repository of the Writing an OS in Rust blog received the following updates:

Further, we’re still working on adding Experimental Support for Community Translations to the blog, starting with Simplified Chinese and Traditional Chinese. Any help is appreciated!


There were no updates to the bootloader this month.

I’m currently working on rewriting the 16-bit/32-bit stages in Rust and making the bootloader more modular in the process. This should make it much easier to add support for UEFI and GRUB booting later.


There were no updates to the bootimage tool this month.


We landed a number of breaking changes this month:

These changes were released an version 0.8.0. Unfortunately, there was a missing re-export for the new UnusedPhysFrame type. We fixed it in #110 and released the fix as version 0.8.1.

There was one more addition to the x86_64 crate afterwards:

There were also a few changes related to continuous integration:


The cargo-xbuild crate, which cross-compiles the sysroot, received the following updates this month:

Thank You!

Thanks a lot to all the contributors this month!

I also want to thank all the people who support me on GitHub, Patreon, and Donorbox. It means a lot to me!


Do you have a problem, want to share feedback, or discuss further ideas? Feel free to leave a comment here! Please stick to English and follow Rust's code of conduct. This comment thread directly maps to a discussion on GitHub, so you can also comment there if you prefer.

Instead of authenticating the giscus application, you can also comment directly on GitHub.