This book hadn’t been written yet when I was in undergrad. But this year, I found it and worked through it. Even with 20 years writing software professionally under my belt, the ways this book shifted my perceptions on topics I assumed I knew well was surprising!
I also find it charming that the book is co-authored by a married couple.
Personally, I was super interested in reviewing memory virtualization and memory paging.
The bulk of my effort went into a very focused two day push.
200 pages in total: Chapters 1-6, 11-16, 18-24. Postponing all the homework.
I did all this reading on an ipad, highlighting everything in different colors, and adding blank pages every now and then for personal notes.
I then built and booted xv6 under emulation and started hacking. I would then look up areas of interest from my exploration of XV6 in the Linux 1.0 sources (super easy if you use something like [bootlin]) and tried to find the corresponding concepts. Then I slowly stepped forward through the linux releases. 2.4, 2.6, etc. until I had some ideas about how those concepts manifest in the current Linux kernel.
I also find it charming that the book is co-authored by a married couple.