Textbooks
Operating Systems: Three Easy Pieces by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau,
Other recommended textbooks:
- Operating Systems: Principles and Practice, 2nd Edition (2014), by Anderson and Dahlin, Recursive Books, ISBN 978-0985673529
- Operating System Concepts, 8th Edition (2008), by Silberschatz, Galvin and Gagne, Wiley, ISBN 978-0470128725
- Understanding the Linux Kernel, 3rd Edition (2008), by Bovet, O’Reilly, ISBN 978-0596005658, (good for projects)
- Modern Operating Systems, 4th Edition (2014), by Tanenbaum and Bos, Pearson, ISBN 978-0133591620
Git
C, x86 assembly and Unix programming
- The C Programming Language book by Brian Kernighan and Dennis Ritchie (also known as ‘K&R’). Best reference for C language.
- A tutorial on C pointers
- C programming wikibook
- AT&T assembly syntax
- Inline assembly
OS development
These are not necessary to complete the assignments, but if you want to understand how the x86 architecture works, these are the definitive sources:
- OS Dev wiki: a great resource for OS development in general, lots of good references.
- Current Intel processor manuals
- Current AMD processor manuals