Lecture 1 - Introduction
eecs-482
Overview
- the operating system is the software layer that sits between application programs and the hardware
Roles of the OS
Abstractions
- create abstractions to ease the use of hardware
- CPU -> threads
- memory -> address space
- disk -> file system
- network card -> sockets
Resource Management
- manage shared hardware resources
- processor
- memory
- disk
- network
- goals
- safety
- efficiency
- fairness
OS <-> Apps Perspective
- the OS is the main program
- calls applications as subroutines
- application runs until it returns control back to OS
History
Single Operator at Console (Synchronous)
- goal: basic functionality
- OS is library of standard services
- one thing happens at a time
- gain interactivity
- poor utilization of hardware
Batch Processing
- goal: improve utilization by removing user interaction
- non-interactive: submit job to queue, wait for completion
- OS is library of standard services + batch monitor