mirror of
https://github.com/phil-opp/blog_os.git
synced 2025-12-16 14:27:49 +00:00
ca925c49e0c3044f437047fe819d69aec7c05bd9
In the second macro (handler_with_error_code), we pop the error code into rsi, this means we are changing the value of rsi in the assembly block, so we should add it to the clobbers. I am quite new to this, so please close this request if I am completely wrong. (Side question: An other thing I came across while trying to figure out if this was correct, is that every documentation says you should add curly brackets around register names, can someone tell me why this is not done here?)
Blog OS
This repository contains the source code for the Writing an OS in Rust series at os.phil-opp.com.
Bare Bones
- A Minimal x86 Kernel (source code)
- Entering Long Mode (source code)
- Set Up Rust (source code)
- Printing to Screen (source code)
Memory Management
- Allocating Frames (source code)
- Page Tables (source code)
- Remap the Kernel (source code)
- Kernel Heap (source code)
Exceptions
Additional Resources
Building
You need to have nasm, grub-mkrescue, xorriso, qemu and a nighly Rust compiler installed. Then you can run it using make run.
Please file an issue if you run into any problems.
License
The source code is dual-licensed under MIT or the Apache License (Version 2.0). This excludes the blog directory.
Description
Languages
HTML
96.5%
SCSS
1.5%
CSS
1.2%
JavaScript
0.4%
Python
0.2%