Lecture 1
Readings:
Chapters 1 & 2 in textbook
Considerations when choosing an OS:
1. Resource consumption
2. Security
3. Smart devices need specific OSes
Introduction
What is an OS?
⚡ 1. Textbook def: An OS is software that manages a computer’s hardware. It also
provides a basis for application programs and acts as an intermediary between the
computer user and the computer hardware.
2. A program that lets you run other programs and provides controlled access to
resources. When you start your device, it runs the first program, which is the OS.
3. General piece of software with common functionalities that support many
applications.
4. Operates directly with system hardware.
5. A virtual machine
6. A resource allocator and a control program
7. It is not useful on its own. It provides an ENVIRONMENT within which other
programs can do useful work.
What do they do?
A computer system is made up of:
1. Hardware: Provides basic computing resources for the system: CPU, memory, IO devices
(keyboard, mouse)
Lecture 1 1
, 2. The OS: Controls HW
3. Application Programs: word processors, compilers, web browsers
4. The User
It is a program. Some types:
UNIX OS
Microsoft Windows
Mac OS
Mobile
Can also get custom OSes:
IE, Nintendo switch will make its own custom OS for its products
The kernel is the most NB part.
Translates language into machine level code.
The OS is an illusion: makes it seem like there is CPU and memory etc. The OS initialises
system problems but in itself does nothing. It’s an illusion.
OS as an illusionist:
Clever resource management to overcome hardware limitations
OS as a government:
Protects users from one another
Allocates resources efficiently and fairly
Lecture 1 2
, Provides an environment within which other programs can do useful things.
OS: System View
OS is a resource allocator:
Manages all resources
Handles conflicting requests for efficient and fair resource use
OS is a control program:
Controls execution of programs to ensure the programs run, prevent errors and
improper use of the computer.
Moore’s Law and OSes
Stated that the number of transistors that could be placed on an integrated circuit would
double every 18 months. Therefore computers gained more functionality and shrunk in
size, allowing for a vast variety of OSes to be created.
Abstraction
→ It is simply an abstraction.
Convenience: Hides tedious things
Shows efficiency and control
Allocates resources
Allows parallel applications
Protects information
Interface: Between users and computer (hardware)
Lecture 1 3
, Applications think they have their own dedicated CPU but they don’t. It’s an illusion. Allows programs to run
concurrently. Applications has no idea who else is on the system.
Why have Abstraction?
Why?:
1. Reduce functional complexity
2. Provide single abstraction over multiple devices
3. Resource sharing
a. Efficiency
b. Fairness
c. Security
Examples of Abstractions
A. User Abstraction:
Lecture 1 4