Skip to content

Commit 8e7b807

Browse files
committed
Add updates for rust-osdev projects
1 parent f54fbe2 commit 8e7b807

File tree

1 file changed

+129
-0
lines changed

1 file changed

+129
-0
lines changed

content/this-month/2024-03/index.md

Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,135 @@ In this section, we give an overview of notable changes to the projects hosted u
6363
<<changelog, either in list or text form>>
6464
-->
6565

66+
### [`acpi`](https://github.com/rust-osdev/acpi)
67+
<span class="maintainers">Maintained by [@IsaacWoods](https://github.com/IsaacWoods)</span>
68+
69+
The `acpi` repository contains crates for parsing the ACPI tables – data structures that the firmware of modern computers use to relay information about the hardware to the OS. We merged the following changes this month:
70+
71+
- [AML: Correctly invoke `_SEG`,`_BBN`, and `_ADR` methods for PCI region accesses, plus assorted bits](https://github.com/rust-osdev/acpi/pull/208)
72+
- [acpi: Add `SdtHeaderIterator` to get all headers.](https://github.com/rust-osdev/acpi/pull/202)
73+
- [aml: add extra debug info on parsing error](https://github.com/rust-osdev/acpi/pull/207)
74+
- [AML: implement boolean field](https://github.com/rust-osdev/acpi/pull/211)
75+
76+
Thanks to [@fslongjin](https://github.com/fslongjin) and [@rw-vanc](https://github.com/rw-vanc) for their contributions!
77+
78+
79+
### [`x86_64`](https://github.com/rust-osdev/x86_64)
80+
<span class="maintainers">Maintained by [@phil-opp](https://github.com/phil-opp), [@josephlr](https://github.com/orgs/rust-osdev/people/josephlr), and [@Freax13](https://github.com/orgs/rust-osdev/people/Freax13)</span>
81+
82+
The `x86_64` crate provides various abstractions for `x86_64` systems, including wrappers for CPU instructions, access to processor-specific registers, and abstraction types for architecture-specific structures such as page tables and descriptor tables.
83+
84+
We merged the following PRs this month:
85+
86+
- [miscellaneous improvements](https://github.com/rust-osdev/x86_64/pull/464)
87+
- [release v0.15.0](https://github.com/rust-osdev/x86_64/pull/463)
88+
- [doc: added help on update_flags to get flags](https://github.com/rust-osdev/x86_64/pull/465)
89+
- [Feat: add constructor for `InterruptStackFrameValue`](https://github.com/rust-osdev/x86_64/pull/467)
90+
- [properly jump the address gap in CleanUp](https://github.com/rust-osdev/x86_64/pull/469)
91+
- [expose DEBUG_STR more directly](https://github.com/rust-osdev/x86_64/pull/471)
92+
- [add write_pcid_no_flush](https://github.com/rust-osdev/x86_64/pull/472)
93+
- [release 0.15.1](https://github.com/rust-osdev/x86_64/pull/473)
94+
- [Implement function for creating a gdt in a const environment](https://github.com/rust-osdev/x86_64/pull/413)
95+
96+
Thanks to [@uglyoldbob](https://github.com/uglyoldbob), [@GZTimeWalker](https://github.com/GZTimeWalker), and [@Sxmourai](https://github.com/Sxmourai) for their contributions!
97+
98+
99+
### [`bootloader`](https://github.com/rust-osdev/bootloader)
100+
<span class="maintainers">Maintained by [@phil-opp](https://github.com/phil-opp) and [@Freax13](https://github.com/orgs/rust-osdev/people/Freax13)</span>
101+
102+
The `bootloader` crate implements a custom Rust-based bootloader for easy loading of 64-bit ELF executables. This month, we merged the following improvements:
103+
104+
- [Change gitter badge to zulip badge](https://github.com/rust-osdev/bootloader/pull/431)
105+
- [avoid 32-bit relocation to `__BOOTLOADER_CONFIG`](https://github.com/rust-osdev/bootloader/pull/428)
106+
107+
Thanks to [@nicholasbishop](https://github.com/nicholasbishop), and [@Freax13](https://github.com/Freax13) for their contributions!
108+
109+
110+
### [`ucs2-rs`](https://github.com/rust-osdev/ucs2-rs)
111+
<span class="maintainers">Maintained by [@GabrielMajeri](https://github.com/GabrielMajeri), [@nicholasbishop](https://github.com/nicholasbishop), and [@phip1611](https://github.com/phip1611)</span>
112+
113+
- [Update Cargo.toml metadata](https://github.com/rust-osdev/ucs2-rs/pull/16)
114+
- [Add a short changelog](https://github.com/rust-osdev/ucs2-rs/pull/17)
115+
- [Add auto-release workflow](https://github.com/rust-osdev/ucs2-rs/pull/18)
116+
- [Set MSRV and add CI job to check it](https://github.com/rust-osdev/ucs2-rs/pull/19)
117+
- [Improve test coverage](https://github.com/rust-osdev/ucs2-rs/pull/20)
118+
119+
120+
### [`pic8259`](https://github.com/rust-osdev/pic8259)
121+
<span class="maintainers">Maintained by [@phil-opp](https://github.com/phil-opp)</span>
122+
123+
The `pic_8259` crate provides abstractions for 8259 and 8259A Programmable Interrupt Controllers (PICs).
124+
125+
We merged the following PR this month:
126+
127+
- [Update x86_64 dependency to version 0.15.0](https://github.com/rust-osdev/pic8259/pull/6)
128+
129+
Thanks to [@iTitus](https://github.com/iTitus) for their contribution!
130+
131+
132+
### [`ovmf-prebuilt`](https://github.com/rust-osdev/ovmf-prebuilt)
133+
<span class="maintainers">Maintained by [@phil-opp](https://github.com/phil-opp) and [@nicholasbishop](https://github.com/nicholasbishop)</span>
134+
135+
The `ovmf-prebuilt` project provides pre-built [edk2](https://github.com/tianocore/edk2) releases to make it easier to set up OVMF. We merged the following improvement this month:
136+
137+
- [Transition to a workspace](https://github.com/rust-osdev/ovmf-prebuilt/pull/39)
138+
- [Add empty ovmf-prebuilt package](https://github.com/rust-osdev/ovmf-prebuilt/pull/45)
139+
- [fix(deps): update rust crate clap to v4.5.4](https://github.com/rust-osdev/ovmf-prebuilt/pull/46)
140+
141+
142+
### [`volatile`](https://github.com/rust-osdev/volatile)
143+
<span class="maintainers">Maintained by [@phil-opp](https://github.com/phil-opp)</span>
144+
145+
The `volatile` crate provides a safe wrapper type for implementing volatile read and write operations. This is useful for accessing memory regions that have side-effects, such as memory-mapped hardware registers.
146+
147+
We merged the following PRs this month:
148+
149+
- [Implement some useful traits](https://github.com/rust-osdev/volatile/pull/41)
150+
- [Fix clippy warning about clone implementation](https://github.com/rust-osdev/volatile/pull/44)
151+
- [Fix build with `very_unstable` feature](https://github.com/rust-osdev/volatile/pull/45)
152+
- [Remove `Sized` requirement for `Send` and `Sync` on `VolatileRef`](https://github.com/rust-osdev/volatile/pull/42)
153+
154+
Thanks to [@nspin](https://github.com/nspin) and [@kadiwa4](https://github.com/kadiwa4) for their contributions!
155+
156+
157+
### [`linked-list-allocator`](https://github.com/rust-osdev/linked-list-allocator)
158+
<span class="maintainers">Maintained by [@phil-opp](https://github.com/phil-opp) and [@jamesmunns](https://github.com/jamesmunns)</span>
159+
160+
The `linked-list-allocator` crate provides a basic `no_std` allocator that builds a linked list from freed memory blocks and thus needs no additional data structures. We merged the following PR this month:
161+
162+
- [Remove stabilized feature](https://github.com/rust-osdev/linked-list-allocator/pull/81)
163+
164+
165+
### [`uefi-rs`](https://github.com/rust-osdev/uefi-rs)
166+
<span class="maintainers">Maintained by [@GabrielMajeri](https://github.com/GabrielMajeri), [@nicholasbishop](https://github.com/nicholasbishop), and [@phip1611](https://github.com/phip1611)</span>
167+
168+
The `uefi-rs` crate provides safe and performant wrappers for [UEFI](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface), the successor to the BIOS. We merged the following PRs this month:
169+
170+
<!--
171+
- [chore(deps): update rust crate log to v0.4.21](https://github.com/rust-osdev/uefi-rs/pull/1087)
172+
- [fix(deps): update rust crate syn to v2.0.52](https://github.com/rust-osdev/uefi-rs/pull/1088)
173+
- [chore(deps): update crate-ci/typos action to v1.19.0](https://github.com/rust-osdev/uefi-rs/pull/1090)
174+
- [fix(deps): update rust crate tempfile to v3.10.1](https://github.com/rust-osdev/uefi-rs/pull/1089)
175+
- [fix(deps): update rust crate proc-macro2 to v1.0.79](https://github.com/rust-osdev/uefi-rs/pull/1095)
176+
- [fix(deps): update rust crate anyhow to v1.0.81](https://github.com/rust-osdev/uefi-rs/pull/1094)
177+
- [chore(deps): update rust crate trybuild to v1.0.90](https://github.com/rust-osdev/uefi-rs/pull/1093)
178+
- [fix(deps): update rust crate syn to v2.0.53](https://github.com/rust-osdev/uefi-rs/pull/1096)
179+
- [chore(deps): update cachix/install-nix-action action to v26](https://github.com/rust-osdev/uefi-rs/pull/1098)
180+
- [fix(deps): update rust crate walkdir to v2.5.0](https://github.com/rust-osdev/uefi-rs/pull/1102)
181+
- [fix(deps): update rust crate os_info to v3.8.1](https://github.com/rust-osdev/uefi-rs/pull/1101)
182+
- [fix(deps): update rust crate nix to 0.28.0](https://github.com/rust-osdev/uefi-rs/pull/1100)
183+
- [fix(deps): update rust crate regex to v1.10.4](https://github.com/rust-osdev/uefi-rs/pull/1106)
184+
- [fix(deps): update rust crate os_info to v3.8.2](https://github.com/rust-osdev/uefi-rs/pull/1105)
185+
186+
-->
187+
188+
- [uefi: Derive Hash for all char and string types](https://github.com/rust-osdev/uefi-rs/pull/1086)
189+
- [uefi_raw: Add firmware_storage module](https://github.com/rust-osdev/uefi-rs/pull/1085)
190+
- [Use auto-release from crates.io to release](https://github.com/rust-osdev/uefi-rs/pull/1068)
191+
- [uefi-services: Use "dep:" syntax](https://github.com/rust-osdev/uefi-rs/pull/1091)
192+
- [release: uefi-raw-0.5.1, uefi-0.27.0, uefi-services-0.24.0](https://github.com/rust-osdev/uefi-rs/pull/1092)
193+
- [Fix some new lints/warnings](https://github.com/rust-osdev/uefi-rs/pull/1103)
194+
66195

67196
## Other Projects
68197

0 commit comments

Comments
 (0)