Ask HN: Learn operating systems fundamentals

4 points by aportnoy ↗ HN
What is the best way to learn the fundamentals of operating systems, with a focus on UNIX/Linux? I am a recent graduate in mathematics and I've taken basic CS courses but stopped short of taking OS/Compilers.

Not looking for a 600+ page tome, a book in the 200-300 page range or a lecture series would be optimal.

2 comments

[ 4.2 ms ] story [ 16.8 ms ] thread
This is a good lecture series https://scs.hosted.panopto.com/Panopto/Pages/Sessions/List.a...

It's CMU's 15-213 class: https://www.cs.cmu.edu/~213/schedule.html

There's also a book for it, CS:App http://csapp.cs.cmu.edu/ which is a 600+ page tome filled with exercises, and the student site has all the labs that the class does like Attack/Malloc lab. The lectures are self contained enough you can do most of the labs without the assigned text but I'm glad I bought the text anyway. It's the perfect course in that you dive into x86-64 computer systems fundamentals just enough from a programmer's perspective on how to write cache friendly code, what C code looks like in assembly, how the linker/compiler works, how virtual memory works, how OS signals work, ect., but you don't go heavy into OS implementation details like you would reading an Andrew S. Tanenbaum book.

Thank you, your description sounds like what I'm looking for.