You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<spanclass="gray">(Section written by [@phil-opp](https://github.com/phil-opp))</span>
152
+
153
+
This month, the "Writing an OS in Rust" blog received a few minor updates:
154
+
155
+
-[Update Zola to 0.11.0](https://github.com/phil-opp/blog_os/pull/850)
156
+
-[Update `x86_64` to v0.12.1](https://github.com/phil-opp/blog_os/pull/858)
157
+
-[Use new `const_mut_refs` feature gate](https://github.com/phil-opp/blog_os/pull/860)
158
+
-[Update to zola v0.12.1](https://github.com/phil-opp/blog_os/pull/861)
159
+
160
+
Apart from that, I did a lot of preparation for the upcoming switch to the UEFI bootloader. My prototype implementation of the `blog_os` system on top of the new UEFI bootloader has now reached feature parity with the existing implementation:
161
+
162
+

163
+
164
+
The output looks different now because we are using a pixel based framebuffer instead of the VGA text mode. This is required because the VGA text mode is no longer supported with UEFI. For the framebuffer implementation I'm using the [new version of the `volatile` crate](#volatile) and the [`font8x8`](https://docs.rs/font8x8/0.2.5/font8x8/) crate for font rendering.
165
+
166
+
You can also see some log output related to the APIC interrupt controller (not to be confused with the ACPI standard). I'm using the APIC instead of the legacy PIC because the latter is not supported anymore on most UEFI systems. For that, I started working on a new `apic` crate, which will include abstractions for the registers of the local APIC and the IOAPIC.
167
+
168
+
For the coming month(s), I'm planning to revamp the "Writing an OS in Rust" blog based on this prototype implementation. This will require complete rewrites of the [_VGA Text Mode_](https://os.phil-opp.com/vga-text-mode/) and [_Hardware Interrupts_](https://os.phil-opp.com/hardware-interrupts/) posts, an update of the bootloader build process in [_A Minimal Rust Kernel_](https://os.phil-opp.com/minimal-rust-kernel/), and replacing the QEMU screenshots across all posts. So I expect that it will take some time until the new version is ready.
0 commit comments