Operating Systems Part 1: Further Readings
Operating Systems: General Concepts
Many books have been writen on operating systems, some of the most popular are:
- (book) Tanenbaum and Bos, Modern Operating Systems.
- (book) Silberschatz et al., Operating System Concepts.
- (book) R. Arpaci-Dusseau and A. Arpaci-Dusseau, Operating Systems: Three Easy Pieces. Very user-friendly, available for free in PDF here.
Linux Internals and Kernel Programming
- (book) Love, Linux Kernel Development. A bit oldish but very beginner friendly. Great to get started with kernel development.
- 0xAX, Linux Insides. deep but guided dive into many aspects of Linux’s source code.
- Linux Foundation, A Beginner’s Guide to Linux Kernel Development.
- (book) Bovet and Cesati, Understanding the Linux Kernel. Quite old.
- (book) Mauerer, Professional Linux Kernel Architecture.
Linux Systems Programming
Systems programming is the development of low level, user space applications that call the OS interface (system calls, and other low level primitives such as fork, mmap, IPCs, etc.) relatively directly.
- (book) Kerrisk, The Linux Programming Interface.
- (book) Love, Linux System Programming.
Miscellaneous
- OSDev Wiki, System Calls page.
- Lozi et al., The Linux Scheduler: a Decade of Wasted Cores.
- (book) Gorman, Understanding the Linux Virtual Memory Manager.