Merge pull request #648 from phil-opp/status-update

Updates in July 2019
This commit is contained in:
Philipp Oppermann
2019-08-02 11:15:59 +02:00
committed by GitHub

View File

@@ -0,0 +1,45 @@
+++
title = "Updates in July 2019"
date = 2019-08-02
+++
This post gives an overview of the recent updates to the _Writing an OS in Rust_ blog and the used libraries and tools.
Since I'm still very busy with my master thesis, I haven't had the time to work on a new post. But there were quite a few maintenance updates this month and also a few new features such as the new `OffsetPageTable` type in the `x86_64` crate.
We also had some great contributions this month. Thanks to the efforts of [@64](https://github.com/64), we were able to considerably lower the compile times of the `x86_64` and `bootloader` crates. Thanks to [@Aehmlo](https://github.com/Aehmlo), the `cargo-xbuild` crate now has a `cargo xdoc` subcommands and support for the `cargo {c, b, t, r}` aliases.
The following list gives a short overview of notable changes to the different projects.
## blog_os
- [Fix a lot of dead links in both the second and first edition](https://github.com/phil-opp/blog_os/pull/638)
- [Update paging introduction post to use page fault error code](https://github.com/phil-opp/blog_os/pull/644)
## x86_64
- [Reexport MappedPageTable on non-x86_64 platforms too](https://github.com/rust-osdev/x86_64/pull/82)
- [Update GDT docs, add user_data_segment function and WRITABLE flag](https://github.com/rust-osdev/x86_64/pull/78) by [@64](https://github.com/64) (published as version 0.7.2)
- [Add a new `OffsetPageTable` mapper type](https://github.com/rust-osdev/x86_64/pull/83) (published as version 0.7.3)
- [Update integration tests to use new testing framework](https://github.com/rust-osdev/x86_64/pull/86)
- [Remove raw-cpuid dependency and use rdrand intrinsics](https://github.com/rust-osdev/x86_64/pull/85) by [@64](https://github.com/64) (published as version 0.7.4)
## bootloader
- [Remove stabilized publish-lockfile feature](https://github.com/rust-osdev/bootloader/pull/62) (published as version 0.6.2)
- [Update CI badge, use latest version of x86_64 crate and rustfmt](https://github.com/rust-osdev/bootloader/pull/63) by [@64](https://github.com/64) (published as version 0.6.3)
- [Use volatile accesses in VGA code and make font dependency optional](https://github.com/rust-osdev/bootloader/pull/67) by [@64](https://github.com/64)
- Making the dependency optional should improve compile times when the VGA text mode is used
- Published as version 0.6.4
- **Breaking**: [Only include dependencies when `binary` feature is enabled](https://github.com/rust-osdev/bootloader/pull/68) (published as version 0.7.0)
## bootimage
- [If the bootloader has a feature named `binary`, enable it](https://github.com/rust-osdev/bootimage/pull/43) (published as version 0.7.6)
- This is required for building `bootloader 0.7.0` or later
## cargo-xbuild
- [Add `cargo xdoc` command for invoking `cargo doc`](https://github.com/rust-osdev/cargo-xbuild/pull/39) by [@Aehmlo](https://github.com/Aehmlo) (published as version 0.5.13)
- [Don't append a `--sysroot` argument to `RUSTFLAGS` if it already contains one](https://github.com/rust-osdev/cargo-xbuild/pull/40) (published as version 0.5.14)
- [Add xb, xt, xc, and xr subcommands](https://github.com/rust-osdev/cargo-xbuild/pull/42) by [@Aehmlo](https://github.com/Aehmlo) (published as version 0.5.15)