Writing an OS in Rust
Clone or download
phil-opp Merge pull request #475 from acheronfail/refactor-interrupts
Refactor exception code into new `interrupts` module
Latest commit a1dd6b2 Oct 18, 2018

README.md

Blog OS

Build Status Join the chat at https://gitter.im/phil-opp/blog_os

This repository contains the source code for the Writing an OS in Rust series at os.phil-opp.com.

Building

You need a nightly Rust compiler and the cargo-xbuild and bootimage tools. You can install the tools by executing the following command:

cargo install cargo-xbuild bootimage

Afterwards you can invoke bootimage build to produce a bootable disk image. Please file an issue if you run into any problems.

To run the image in QEMU, you can execute bootimage run. Note that you need to have QEMU installed.

Posts

The goal of this project is to provide step-by-step tutorials in individual blog posts. We currently have the following set of posts:

Bare Bones

Testing

Interrupts

First Edition Posts

The current version of the blog is already the second edition. The first edition is outdated and no longer maintained, but might still be useful. The posts of the first edition are:

Bare Bones

Memory Management

Exceptions

Additional Resources

License

The source code is dual-licensed under MIT or the Apache License (Version 2.0). This excludes the blog directory.