4 ms·
I used BareMetal and Pure64 as a source of inspiration and knowledge while writing an OS as a student. It is simple and well written. I miss the days of readin
by _Donny 2y ago
I used BareMetal and Pure64 as a source of inspiration and knowledge while writing an OS as a student. It is simple and well written.
I miss the days of reading AMD64 manuals and directly interacting with my hardware through assembly, and I want to get back to it.
What would be a good entry-point to OS development nowadays?
I have the "FYSOS: The System Core" by Benjamin David Lunt. While I love the series, I wonder what other alternatives there are, perhaps supporting ARM?
- xd 2y agoI used https://wiki.osdev.org/Resources https://wiki.osdev.org/Resources back it the day and it looks like it's still alive and well!
- sunday_serif 2y agoI particularly like the mit 6.S081 operating systems course [1]. The course has you make useful extensions to a reimplementation of the XV6 kernel in RISC-V. This course really helped me start to understand how an OS works and what the hardware software interface really is. [1] https://pdos.csail.mit.edu/6.828/2020/ https://pdos.csail.mit.edu/6.828/2020/ — linking to the 2020 class because all of the lectures were uploaded to YouTube to accommodate remote work during the thick of Covid.
- anta40 2y agoI still stick with xv6: https://github.com/mit-pdos/xv6-public https://github.com/mit-pdos/xv6-public - It's not only a kernel, but also have user space - Code is pretty compact and well documented, in general can be understood in a few days - No need to spend hours to custom build gcc. Just use the one provided by the distro package manager The x86 version isn't mantained anymore. They switched to RISC-V.
- notorandit 2y agoI would give Minix3 a try.
- anta40 2y agoNo doubt it's more feature complete than xv6. Probably will try it on weekend.
- notorandit 2y agoDon't forget to contact AST in case you get some interest.