Operating Systems Principles 
	
	These are the slides used in the scheduled lectures. Each set of slides is in pdf format,
	six slides to the page.
	I do not intend to read, or even reference, all of these slides in the lecture. They are:
	
		- to let you know what will be covered under each topic
 
		- for reference and illustration during discussions
 
		- to remind me of key points I wanted to cover, and the order in which I wanted to cover them
 
		- to save you the trouble of writing down notes that I have already committed to writing
 
		- to enable you to review material that has been covered (for exam review)
 
	
	
	Lecture Topics:
	
    - Introduction to Operating Systems
 
    - Resources, Services, and Interfaces
 
    - Processes, Execution, and State
 
    - Scheduling Algorithms, Mechanisms and Merformance
 
    - Memory Management, Allocation and Relocation
 
    - Virtual Memory and Paging
 
    - Threads, Races, and Critical Sections
 
    - Mutual Exclusion and Asynchronous Completions
 
    - Higher Level Synchronization and Communication
 
    - Deadlocks, Prevention, and Avoidance
 
    - Performance
 
    - Device I/O and Drivers
 
    - File Semantics and Representation
 
    - File Systems Performance and Robustness
 
    - Security, Protection, Authentication, Authorization
 
    - Distributed systems: Goals, Challenges and approaches
 
    - Remote Data, Synchronization, Security
 
    - Remote Data Performance and Robustness
 
    - MP and Distributed Systems