lecture 1 Flashcards
What are the two main roles of an operating system?
OS is a resource allocator
* Manages all resources
* Decides between conflicting requests for efficient and fair
resource use
* OS is a control program
* Controls execution of programs to prevent errors and improper
use of the computer
What is an operating system?
A program that acts as an
intermediary between a user of
a computer and the computer
hardware
What are the three goals of an operating system?
- Execute user programs and make
solving user problems easier - Make the computer system
convenient to use - Use the computer hardware in an
efficient manner
Old way of interacting with I/O devices
- A user program requests a
system call to use an i/o
device - The system calls the driver
- The driver starts the I/O
device and continuously polls
to see if it is done - When the device tells the
driver it is done, the driver
puts the data where required
and finishes
The new way of processing interrupts:
- A user program requests a
system call to use an I/O device - The system calls the driver
- The driver starts the I/O device
and returns - The CPU can look for another job
to do - When the device is done, it sends
an INTERRUPT to signal it
finished - The CPU processes the data
received
What are the 4 services that the OS provides?
- I/O communication
- Storage management
- File management
- Process management
What are the main tasks of memory mangement?
Memory management
* Keeping track of which parts of memory are currently being
used and which process is using them
* Allocating and deallocating memory space as needed
* Deciding which processes (or parts of processes) and data to
move into and out of memory
What are the main tasks of mass storage management
Mass storage management
* Mounting and unmounting
* Free-space management
* Storage allocation
* Disk scheduling
* Partitioning
* Protection
What are the main tasks of file management?
- Creating and deleting files
- Creating and deleting directories to organize files
- Supporting primitives for manipulating files and directories
- Mapping files onto mass storage
- Backing up files on stable (nonvolatile) storage media
What are the main tasks of process management?
- Creating and deleting both user and system processes
- Scheduling processes and threads on the CPUs
- Suspending and resuming processes
- Providing mechanisms for process synchronization
- Providing mechanisms for process communication
What is the bootstrap program?
- Init computer
- Load operating system and start it