Operating System Design/Contents

Contents edit

This is a wiki textbook -- feel free to edit it, update it, correct it, and otherwise increase its teaching potential. To find out more about wikis, see the Wikipedia main page.
  1. Kernel Architecture  
    1. Monolithic Kernel  
      1. Solaris
      2. Linux
      3. Windows 9x
    2. Microkernel  
      1. GNU Hurd
      2. MINIX 3
      3. QNX
    3. Exokernel  
      1. XOK
    4. Hybrid Kernel  
  2. Initialization  
    1. Bootloader
    2. Hardware Initialization
  3. Processes  
    1. Interrupts  
    2. Context Switching  
    3. Scheduling  
      1. First Come First Served
      2. Shortest Process Next
      3. Shortest Remaining Time
      4. Round Robin Scheduling
      5. Pre-Emption
      6. Priority Scheduling
    4. Concurrent Processing  
      1. Deadlock
      2. Livelock
    5. Interprocess Communication  
      1. Signals
      2. Semaphores
        1. Monitors
      3. Shared Memory
    6. Threads (Lightweight Processes)  
    7. Fibers (Lightweight Threads)  
  4. Memory Management  
    1. Physical Memory  
    2. Segmentation  
    3. Virtual Memory  
      1. Paging
      2. Swapping
    4. Basics  
      1. Allocation Algorithms
    5. Fault Tolerance  
  5. File Systems  
    1. Abstractions  
    2. Allocation Algorithms  
      1. Performance
    3. Fault Tolerance  
      1. RAID
      2. Moving Bad Blocks
      3. Journalling
    4. Case Studies  
      1. File Allocation Table (FAT)
      2. BFS
      3. ext3
      4. ReiserFS
      5. HFS
      6. NTFS
      7. ZFS
  6. Security  
    1. Access Controls
      1. Users
      2. Resources
    2. Privileges
  7. Interface  
    1. Command line interfaces  
    2. Graphical user interfaces  
      1. Desktop environment
      2. Configuration tools
      3. User Ability



This is a wiki textbook -- feel free to edit it, update it, correct it, and otherwise increase its teaching potential. To find out more about wikis, see the Wikipedia main page.

For further reading edit