3 ms·
I picked up a paper 2nd edition of "Understanding the Linux Kernel" from the free shelf at my local library. It spends about half of the book discussing the 32-
by watersb 5y ago
I picked up a paper 2nd edition of "Understanding the Linux Kernel" from the free shelf at my local library. It spends about half of the book discussing the 32-bit x86 architecture... The other half is data structures. Very nice index of every system call discussed.
While ten year old computer books are considered obsolete, systems architecture books may actually be better at documenting the motivation behind design decisions.
So if you happen upon this discussion thread, you might find it useful.
https://www.oreilly.com/library/view/understanding-the-linux/0596005652/ https://www.oreilly.com/library/view/understanding-the-linux...
- wavepocket 5y agoThanks for sharing that...yep, this book is awesome indeed :) I agree with you that the book is superior in every possible way at documenting design decisions. My intention was just to speculate about it and potentially help people writing hobbyist OSes out there. This blog post is more like a brain dump of my journey to understand how to set up page tables and in particular the 4-Kbyte PTE - Long mode (AMD64 manual - section 5.3.3). I must confess that coming to the conclusion that the last 3 nibbles are assumed to be zero for the "Physical-Page Base Address" so it can be 'reused' for the Page flags (bits 0:11) is far from intuitive and this is only possible because pages are 4096 bytes aligned =) I hope you that you liked that blog post and thanks for the feedback