4 ms·
Ask HN: Best textbooks for learning operating systems
For someone comfortable with programming in C (say, enough to pass tech interviews with the language) what are some good textbooks or other resources to learn more about operating systems.
- erkkonet 8y agoAs far as textbooks go "The Design and Implementation of the FreeBSD Operating System" by McKusick is a good resource on the UNIX side of things.
- deepaksurti 8y agoIf you want a quick, concise, pragmatic course to learn about OS, I would recommend Paul Krzyzanowski's OS Course that he teaches at Rutgers University. [1]. See course material at [2]. [1] https://www.cs.rutgers.edu/~pxk/416/index.html https://www.cs.rutgers.edu/~pxk/416/index.html [2] https://www.cs.rutgers.edu/~pxk/416/syllabus.html https://www.cs.rutgers.edu/~pxk/416/syllabus.html
- unmole 8y agoOperating Systems: Three Easy Pieces[0] coupled with Xv6[1]. Once you understand the fundamental ideas, you can move on to a specific real world implementation like The Design and Implementation of the FreeBSD Operating System by Marshall Kirk McKusick et. al or Linux Kernel Development by Robert Love. [0]: http://pages.cs.wisc.edu/~remzi/OSTEP/ http://pages.cs.wisc.edu/~remzi/OSTEP/ [1]: https://pdos.csail.mit.edu/6.828/2012/xv6.html https://pdos.csail.mit.edu/6.828/2012/xv6.html
- raylangivens 8y agoTry ops-class.org from Geoffrey Challen that uses OS/161 for programming assignments, all of the material is free. I'm doing that one now. Highly recommend Operating Systems in Three Easy pieces as well.
- alexgmcm 8y agoI have heard good things about the 'Dinosaur book', "Operating Systems Concepts" by Silberschatz.[0] [0]: https://www.amazon.com/dp/1119456339/ https://www.amazon.com/dp/1119456339/
- 3minus1 8y agoIt's good. I found it way more readable and engaging than other CS textbooks.
- ThePhysicist 8y agoI can second the recommendation of Robert Love's books on Linux (https://rlove.org/ https://rlove.org/) as well as "How Linux Works" by Brian Ward. I personally enjoyed "Linux Kernel Development" by Robert Love more than the former as it teaches you more about Kernel internals (IMHO). The drawback is that it's a bit outdated already (it's based on the 2.6 kernel) but on the other hand most things are still relevant as far as I know. Andrew Tanenbaum et. al.'s "Modern Operating Systems" is a good reference to learn about operating systems otherwise, independent of Linux.
- cjbprime 8y agoLinux Device Drivers is nice, and free.
- Antonio123123 8y agoOperating Systems Design & Implementation The book is about MINIX operating system, a operating system without hacks, to showcase the concepts. Linux is a fork from MINIX.
- stuxnet79 8y ago> Linux is a fork from MINIX. This is false. Linux kernel even in the early stages didn't share any code with MINIX. MINIX had a restrictive license and this was partly why Linus decided to roll his own OS kernel. Further, the two OSs differ fundamentally from an architecture standpoint (microkernel vs monolithic kernel).
- runjake 8y agoOn the Windows OS side of the house, the Windows Internals book is a great dive into the nether regions of the OS. https://docs.microsoft.com/en-us/sysinternals/learn/windows-internals https://docs.microsoft.com/en-us/sysinternals/learn/windows-...
- zapperdapper 8y agoI love the XINU book. Just beautiful writing. Used it recently while building my own memory allocator. Will give you a lot of insight. The Thomas Anderson books are a multi-volume guide to OSs.