Skip to content

Commit bfe2769

Browse files
authored
Merge pull request #232 from mkroening/new-projects
Add sections about the new `virtio-spec` and `fuse-abi` crates
2 parents aadeea3 + 535a914 commit bfe2769

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

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

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,31 @@ In this section, we collect recent updates to `rustc`, `cargo`, and other toolin
4949

5050
In this section, we give an overview of notable changes to the projects hosted under the [`rust-osdev`](https://github.com/rust-osdev/about) organization.
5151

52+
53+
### [`virtio-spec-rs`](https://github.com/rust-osdev/virtio-spec-rs) (new project!)
54+
<span class="maintainers">Maintained by [@mkroening](https://github.com/mkroening)</span>
55+
56+
The `virtio-spec` crate provides definitions from the Virtual I/O Device (VIRTIO) specification.
57+
This project aims to be unopinionated regarding actual VIRTIO drivers that are implemented on top of this crate.
58+
59+
The origins of this crate are in [Hermit](https://github.com/hermit-os/kernel).
60+
Due to the need for correct foundational definitions from the Virtio spec that are easily reviewable and independent of the actual driver logic, this project was created from the ground up and without any intended bias towards Hermit.
61+
62+
Currently, definitions are available for split and packed virtqueues, for Virtio over MMIO and Virtio over PCI, and for the network, socket and file system devices.
63+
Feature requests for additional devices are more than welcome!
64+
65+
66+
### [`fuse-abi`](https://github.com/rust-osdev/fuse-abi) (new project!)
67+
<span class="maintainers">Maintained by [@mkroening](https://github.com/mkroening)</span>
68+
69+
The `fuse-abi` crate provides bindings to FUSE devices.
70+
In motivation similar to that of `virtio-spec`, this project aims to provide correct foundational definitions for the FUSE kernel ABI.
71+
It can even be used together with `virtio-spec` when creating a driver for the Virtio file system device.
72+
73+
This crate essentially brings [`#include <linux/fuse.h>`](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/linux/fuse.h?h=v6.9) to Rust.
74+
The code is autogenerated using [`bindgen`](https://github.com/rust-lang/rust-bindgen), ensuring the correctness of definitions.
75+
76+
5277
<!--
5378
Please use the following template:
5479

0 commit comments

Comments
 (0)