Week 1 Flashcards
Design Goals
Abstraction
Performance
Protection
Operating System
Body of software that abstracts and arbitrates system hardware
Virtualization
Use of software to to create a layer over the hardware
Point of Virtualization
Allow system hardware to be used efficiently to generate max output: easy to use.
Virtualizing the CPU
Turning CPU into infinite number of processors to allow programs seemingly run at once
Virtualizing Memory
Assigning private address space to programs such that they think they have the whole physical memory to themselves.
Memory
Array of bytes with specific address to allow reads(loads) and writes(stores)
System calls
Interfaces the OS provides users to access system resources.
Trap
Hardware instructions to initiate a system call
Procedural call
Libraries are accessible without any real privilege
Standard library
Provided by OS to all applications make system calls
File system
Software that manages the disk in an OS
What does the file system do?
Figures out where to store new data(file created by the user) Keeps track of various structures
Device driver
Code responsible for handling a particular device in an OS
How does the system handle crashes under persistent data storage
Journaling or copy-on-write: ordering writes to recover a to a reasonable state in case of failure.