Introduction to Operating Systems
Author :
Marvin Solomon,
Computer Sciences Department,
University of Wisconsin, Madison
Publication Date : 2006, updated January 2007
About the Notes:
These are the lecture notes for the course of
Introduction to Operating Systems at the
Computer Sciences Department,
University of Wisconsin, Madison.
Introduction to Operating Systems is intended as a general introduction to the techniques used to implement operating systems and related kinds of systems software. Among the topics covered will be process management (creation, synchronization, and communication); processor scheduling; deadlock prevention, avoidance, and recovery; main-memory management; virtual memory management (swapping, paging, segmentation and page-replacement algorithms); control of disks and other input/output devices; file-system structure and implementation; and protection and security.
These notes assumes familiarity with basic computer organization (e.g., processors, memory, and I/O devices as covered in the course of
Machine Organization and Programming) and data structures (e.g., stacks and hash tables).
These notes will also assume that all students are Java programmers at the level of someone who has completed
Introduction to Data Structures well.
View/Download Introduction to Operating Systems