General Research Areas in Advanced Operating Systems:
1. Operating Systems architecture and structures (pros, cons, enhancements, comparison to other architectures)
a. Exo-kernels (Dawson Engler)
b. Micro-kernels
c. Distributed kernels
d. Middleware for massively distributed systems e.g. Grid computing infrastructures
2. Virtual Machines and Virtual Machines Monitors (pros, cons, comparison of different VMM architectures, identification of performance bottlenecks and suggestions for their removal etc.)
a. VmWare
b. Zen
c. User mode Linux
d. Denali (Rice University)
e. Disco
3. Threads Vs event-driven programming models
a. Threaded model problems, pros, cons from a software engineering and design standpoint
b. Event-driven and hybrid models (pros, cons, complexity, scalability etc.)
c. case studies
4. File systems
a. Distributed file systems
b. Client server based networked file systems
c. Server-less peer to peer file systems
d. pros, cons, consistency, performance, scalability of different file systems
e. fault tolerance in distributed file systems
5. Memory management
a. Efficient algorithms and heuristics for memory management
b. Comparison of different algorithms
c. User controlled OS memory management
d. Multiprocessor memory management and shared memory models
e. Support for super-pages in OS
6. Scheduling
a. Evaluation of proportionate share scheduling ideas
b. Efficient scheduling on multi-processors
c. Application aware and application controlled scheduling in event-driven systems
7. Mobility management
a. Disconnected operation in distributed file systems
b. Application mobility support in operating systems
c. Toolkits for mobile information access e.g. Rover
8. Communication
a. Inter-process and Inter-machine communication architectures
b. Evaluation of peer to peer systems e.g. chord, Pastry, Gnu-tella, Kaza
c. Remote procedure call architectures and RPC based systems case studies
9. Fault tolerance and recovery
a. Study of fault and failure models
b. Power of replication and state duplication
c. Caching and state duplication
10. Security
a. Reasons for failure of crypto systems
b. Federated identity based systems
c. Comparison of.Net and Java security models
d. A critical study of Kerberos system
e. Denial of Service and Distributed Denial of Service
f. Case studies of secure OS e.g. SE Linux
g. Case studies of security vulnerabilities in commercial operating systems