1. Introduction - History; Concepts; StructureSyllabus
2. Process Management - Processes; Threads; Scheduling; implementation of Processes
3. Process Synchronization
- Synchronization primitives and their equivalence ; Deadlocks;
( 1st Assignment);
4. File Systems - Implementation;
Directory and space management; Unix file system;
Distributed file systems (NFS); (2nd Assignment)
5. Memory Management - Swapping; Virtual memory; Segmentation
6. Security - General
policies and mechanisms; examples of common problems; protection
models;
Authentication
7. Input/Output - Interrupts; Drivers; Disks; Software architecture
8. Distributed systems
9. Case-studies - Unix, Windows-NT
Textbooks in OS:
1. A. Tanenbaum: Modern Operating Systems, Prentice-Hall, 2nd edition, 2001 (the main text book)
2. A. Silbetschatz et. al.: Operating System Concepts (6th ed.), Addison Wesley, 2001 (highly recommended)
3. G. Nutt: Operating Systems (a modern perspective) (2nd ed.), Addison Wesley, 1999.
4. W. Stallings: Operating Systems (3rd ed.), Prentice-Hall, 1998.
Assignments:
There will be two programming assignments:
· Multi-thread computation (15%)
· Distributed file-system simulator (10%)
· 1-2 (no credit) theoretical assignments will be required
Marking:
Final mark = 25% Assignments + 15% MidTerm + 60% final exam.
(A passing mark in the final exam is compulsory)