CSE150 Lecture 1 Notes
What is an Operating System?
Special layer of software providing access to hardware resources.
Convenient abstraction of complex hardware.
Protected access to shared resources.
Security and authentication.
Communication amongst logical entities.
OS Basics
Virtual Machine Boundary: Hardware virtualization
Program $\Rightarrow$ Process.
Context Switch, Scheduling, Protection, I/O, Loading.
Why We Need an OS
Manage resources (memory, CPU, storage).
Provide abstractions (file systems, processes, threads, VM, naming systems).
Challenges in OS
Complexity: Variety of software modules and devices.
Enormous scale, heterogeneity, and dynamic range (CPU, Storage, Network).
Complex interactions leading to unexpected failures.
How to Tame Complexity?
Operating systems help manage complexity by providing abstractions and managing resources.
Internet of Things
Scalable, Reliable, Secure Services.