CO526 : Advanced Operating Systems
| Course Number : CO526 | ||||
|---|---|---|---|---|
| Course Title: Advanced Operating Systems | ||||
| Credits : 3 | ||||
| Prerequisites : Computer Architecture (CO213), Operating Systems (CO313) | ||||
| No | Course Content | Time Allocated (hours) | ||
| L&T | P&A | |||
| 01 | Introduction to operating system design:
Introduction to monolithic, layered, microkernel based designs. |
1 |
|
|
| 02 | Introduction to microkernel:
Microkernel abstractions (using L4), system calls and usages. Debugging support |
3 | 3 | |
| 03 | Microkernel based systems:
History of microkernel, user-level page-fault handlers, device drivers, interrupts |
2 | ||
| 04 | Managing virtual memory:
Page tables structures, Translation lookaside buffer (TLB), caches, 64bit address spaces, IPTs, GPTs, name spaces, naming and protection |
5 | 5 | |
| 05 | Process management:
Processes verses threads, protection verses execution, context switching, IPC |
3 | 5 | |
| 06 | File systems:
Files verses virtual memory, single address space operating systems, blocking verses non-blocking operations. |
2 | 5 | |
| 07 | Threads:
Implementations issues, kernel verses user-level threads, scheduling, thread local storages, stack, threads verses events. |
4 | 4 | |
| 08 | System calls:
Implementation issues, security, argument passing |
3 | 5 | |
| 09 | I/O handling:
Device drivers, user-level drivers, DMA, IO address spaces |
3 | 3 | |
| 10 | Security:
Access control, Turing completeness, decidability, ACL verses capabilities |
2 | ||
| 11 | Research topics:
Virtual machine monitors, separation kernels, Exokernels, verifications, full virtualisation verses para-virtualisation |
2 | ||
| Total |
30 | 30 | ||
| Assessment | Percentage Marks | |||
| Continuous Assessment | 50 | |||
| Practical | 10 | |||
| Design Project | 40 | |||
| Written Examinations | 50 | |||
| Mid-Semester | 30 | |||
| End of Semester | 20 | |||