Ask HN: Gaining a deep understanding of operating systems
1–6 of 6 posts
Re: Ask HN: Gaining a deep understanding of operating systems
#2What is useful about that it's simple enough to understand the various parts and how they work. Long time ago I ported µC/OS to a new microprocessor. It was very instructive.
Re: Ask HN: Gaining a deep understanding of operating systems
#3Understanding OSes better by understanding a particular OS better is part of the reason why I moved from Windows to Ubuntu to Archlinux. Having your whole OS being open source (Windows -> Ubuntu) and using an OS that doesn't try to add a bunch of superfluous infrastructure over what's actually needed (Ubuntu -> Archlinux) makes understanding the system much easier.
As an alternative resource, I suggest installing Archlinux, read the documentation of the base system (manpages, info manuals, the Archlinux wiki, online documentation on particular projects like https://x.org/ for xorg/x11 documentation, etc.), experiment with it, see how it's built, look into the source code of anything you want to know in detail.
Also, there's the LFS (Linux From Scratch) project, which teaches you how to build a Linux distro without depending on an installation .iso. You get to download, build, and install the kernel from kernel.org, glibc from gnu.org, etc.
Re: Ask HN: Gaining a deep understanding of operating systems
#4"UNIX Systems for Modern Architectures: Symmetric Multiprocessing and Caching for Kernel Programmers" by Curt Schimmel.
PS: Would appreciate recommendations for other in-depth books on OS' like the above.
Re: Ask HN: Gaining a deep understanding of operating systems
#5Re: Ask HN: Gaining a deep understanding of operating systems
#6Don't underestimate the value of reading source code if you really want to develop a deep understanding. With Linux being open source, the world is at your fingertips.
For deep understanding you need to understand what were the problems an OS had to overcome andwhat were the trials and errors which lead to the OS we have now.
If you are curious about a specific part eg. memory handling, fine jump deep into linux source but don't expect to gather more knowledge than reading about the different algorithms born and die in the last decades trying to solve it.