1. Introduction#

This part of the book gives an overview of everything you will learn in more detail in the rest of the book. We start by discussing the purpose of operating systems today, why it is so valuable to understand them, and some of the reasons we expect operating systems to continue to evolve rapidly in coming years. The next chapter describes the fundamental structure of today’s monolithic operating systems, and how applications and devices interact with the OS. We then discuss some of the core abstractions of operating systems and of Unix/Linux in particular. The final chapter on tools reviews the fundamental tools that we expect you to master on using Unix to develop system software.