Midterm topics - Fall 2003

The topics from which you might expect questions for the midterm are given below.
  1. Introduction
    • Definition of OS
    • Multiprogramming
    • Multitasking
    • Resource
      • abstraction
      • isolation
      • sharing
    • Different Strategies
    • Batch
    • Time shared
    • Real-time systems
    • Personal computers
    • Networked systems
  2. Using the OS
    • Process descriptors
      • Program code
      • variables
      • stack + heap
    • Processes Vs Threads
      • pros and cons of each
      • mechanism for creating these
    • Use of
    • fork(), wait(), exec()
    • pipe()
    • pthread_create(), pthread_join(), pthread_exit()
  3. OS organization
    • Design factors for OS
    • Basic components of OS
    • Processor modes
    • Requesting service from OS
      • system calls
      • trap
  4. Computer Organization
    • Von Neumann model
    • CPU
    • ALU
    • Control Unit
    • Fetch Decode Execute cycle
    • Bootstrapping
    • Memory organization
    • Devices and Device controllers
    • Interrupt handling
  5. Process Management
    • Process Manager
    • Process descriptor
    • Memory hierarchy
    • Process states
  6. Process Scheduling
    • Scheduler
    • Policy Vs Mechanism
    • CPU sharing
    • Non-Preemptive strategies
      • FCFS
      • SJF
      • Priority
      • Deadline
    • Preemptive strategies
      • Round robin
      • Processor sharing
    • Multi-level queues
  7. Process Synchronization
    • Use of shared variables
    • Interrupt-based mechanisms
    • Semaphores
    • Classic IPC problems
  8. High-level Synchronization
    • Monitors

© Mir Farooq Ali, 2003.