5 ms·
I have on my list to read something along the lines like this, but this seems incomplete. Does anyone have anything similar?
by laxentasken 10y ago
I have on my list to read something along the lines like this, but this seems incomplete. Does anyone have anything similar?
- ktta 10y agoMaybe not exactly what you're looking for, but here's a linux specific ebook similar to this[1] [1]:https://0xax.gitbooks.io/linux-insides/content/ https://0xax.gitbooks.io/linux-insides/content/
- tuhdo 10y agoWell, the book is not Linux-specific but only leverages Linux as a development environment.
- ktta 10y agoI feel like it focuses on a lot of linux specific details that a OS agnostic book would when using linux as a 'development environment' definitely wouldn't. There are many topics other OSes like Windows and Solaris do differently and talking about them even for a little bit would be beneficial, but I haven't seen any trace of it. Search for Windows, Solaris, shows up nothing, and search for unix shows a single page about unix signals.
- haffla 10y agoIt not only seems, it says it is incomplete which is not unusual for something that is a work in progress
- nguyendat 10y agoThe little book about OS development by Erik Helin, Adam Renberg http://littleosbook.github.io/#introduction http://littleosbook.github.io/#introduction
- sagischwarz 10y agoThis is what I'm planning to read as soon as I've learned assembly: http://www.brokenthorn.com/Resources/OSDevIndex.html http://www.brokenthorn.com/Resources/OSDevIndex.html
- tuhdo 10y agoI graduated from that guide :) You can see the repo here, written entirely in NASM: https://github.com/tuhdo/os-study https://github.com/tuhdo/os-study The problem is that the guide is out of date in terms of toolchain, and you need to figure out many things by yourself, especially if you want to develop on Linux. My book helps you to understand how to learn and write x86 with Intel manuals (this is really important!), understand how to craft a custom ELF binary that is debuggable on bare metal, which in turn requires you to understand a bit of how debugger works. Once you get gdb working, it is much easier to learn how to write an operating system.
- sagischwarz 10y agoOh, good to know! I'll keep that in mind and keep a bookmark of your book and your implementation. Actually, I wanted to start writing an OS by following the BrokenThorn tutorial and was quite naive. After reading some pages it came to me that I don't know much assembly and so I started learning from Jeff Duntemanns Assembly book [1]. As far as I can see, your book also teaches the basics of assembly, it seems more friendly to beginners. Maybe it will be a better start for me. Thanks for putting in the hard work! [1] http://www.duntemann.com/assembly.html http://www.duntemann.com/assembly.html
- tuhdo 10y agoIt is complete, if you finish the first 2 parts, which consists of 8 chapters. Then you can work on your own by reading the Intel manual volume 3 "System Programming Guide", or learning from OSDev wiki. The first two parts provide a foundation to use such resources, which I think is more important than a step by step guiding how to write an OS.
- rkrzr 10y agoFor a comprehensive book on the theory behind operating systems I can recommend "Modern Operating Systems" by Andrew S. Tanenbaum. It does not focus on the concrete implementation of an OS though.
- DonaldFisk 10y agoOperating Systems: Design and Implementation by Tanenbaum and Woodhull covers the implementation of Minix.
- SilasX 10y agoOthers are saying it builds up an OS from first principles, so Nand to Tetris might be comparable: http://www.nand2tetris.org/ http://www.nand2tetris.org/