
Building a file system from scratch
About this event
A speed run through the exFAT file system. My name is David Haig and I’d like to teach you all what I’ve learned from implementing the successor to FAT32, exFAT, in embedded Rust. I will demystify this fairly simple file system and explain how you can build something quite ergonomic without a standard library or even an allocator. Most of Microsoft’s patents for this file system expire this year so it’s a decent time to upgrade from FAT32 for embedded. I will get into why file system reads took me days while writes took me months to implement. What has caching got to do with durability and so on. By the end of it you will have a pretty good idea about what is actually on that shiny new external HDD you just bought off Amazon, besides the bundled malware.
I run the application software team at a hardware startup called Fractile. We are making silicon to accelerate AI inference and it’s pretty exciting place to work right now. Before that, most of my interest in Rust has been in the embedded space and the project I’m most proud of is building an open source hearing aid in Rust. More recently I’ve been building an embedded touchscreen device and, for better or worse, I decided to make it on bare metal. That means, no batteries included hence the need for a file system.
Source: meetup