Efficiency / Convenience Tradeoff: Efficient systems are often not convenient (e.g. smart phone optimize convenience vs. embedded system optimize efficiency)

OS Definition

Virtualization: Physical device → general form, share resources

Concurrency: Coordinate multiple activities

Persistence: Survive crashes

Implementing Interrupts

OS fill in Interrupt Table & IDTR (pointer to IT) at boot

When interrupt occur:

Bootstrapping

BIOS: Basic Input Output System

  1. BIOS load the OS boot-loader from disk
  2. Boot-loader load and run OS

OS Initialization

  1. Initialize machine-dependent operations
  2. Create init process (id=1)
  3. Switch to user mode, start running first process
  4. OS wait for interrupt or exception to happen