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
[an error occurred while processing the directive]