The objective of this course is to
introduce and discuss the concepts, structures and mechanisms of
modern operating systems. Topics include an overview of
operating system fundamentals, process management,
multi-threading, concurrency issues, memory management, virtual
memory, scheduling techniques, I/O management, file management,
security issues, virtual machines, cloud systems, mobile and
embedded operating systems. The course focus will be on
operating systems internals rather than the operating systems
interface.
Computer Organization and Data Stuctures
William Stallings, Operating Systems, Internals and Design Principles, 9th Edition, Prentice Hall, 2017.(html). |
A. Silberschatz, P. B. Galvin and G. Gagne, Operating System Concepts, 10th Edition, John Wiley & Sons, Inc., 2018. (html). |
|
- A. Tannenbaum, Modern Operating
Systems, 4th Edition, Prentice Hall, 2014.
- T. Anderson and M.
Dahlin, Operating Systems: Principles and Practice, 2nd Edition,
Recursive Books Ltd. 2014.
Evaluation Tool | Weight in % |
---|---|
Homework Assignments | 8 |
Presentations & Labs |
14 |
In-term Exams - 2 Midterms |
38 |
Final | 40 |
WEEK | TOPIC(S) |
---|---|
1 | Computer System Overview |
2 | Operating System Overview |
3 | Process Description and Control |
4 | Threads |
5 | Concurrency: Mutual Exclusion and Synchronization |
6 | Concurrency: Deadlock and Starvation |
7 | Memory Management |
8 | Exam Week |
9 | Virtual Memory |
10 | Uniprocessor and Multiprocessor Scheduling |
11 | I/O Management, Disk Scheduling and File Management |
12 | Operating System Security |
13 | Virtual Machines and Cloud Operating Systems |
14 | Mobile, Embedded and IoT Operating Systems |