Chapter 1
Chapter 1
Slides was adopted from Silberschatz, Operating System Concepts, 10th ed.
Users
compilers
Applications databases
word processors
Operating System
CPU
Hardware memory
I/O devices
OS:
Everything in system that isn’t an application or hardware
OS:
Software that converts hardware into a useful form for
applications
CSCI 3453 Operating Systems Concepts 7
What is an Operating System?
A program that acts as an intermediary
between a user of a computer and the
computer hardware.
Operating system goals:
Execute user programs and make solving user
problems easier.
Make the computer system convenient to use.
Maximize resource performance and utilization
int fprintf(…) {
...
void write() { write(…)
load(…); load(…); …
seek(…); seek(…) }
out(…); out(…)
}
Challenges
What are the correct mechanisms?
What are the correct policies?
Process scheduler
Determines when and for long each process executes
Memory manager
Determines when and how memory is allocated to
processes
Decides what to do when main memory is full
File system
Organizes named collections of data in persistent
storage
Networking
Enables processes to communicate with one another
FB DDR2 DDR2
ESB2
Memory Controller Core 1 Core 2
I/O
Main
Memory I/O
Subsystem
Interactive Systems
Faster turnaround than batch systems
Slower than real-time systems
Introduced to provide fast turnaround when
debugging programs
Time-sharing software developed for operating
system
CSCI 3453 Operating Systems Concepts 90
Types of Operating Systems
(continued)
Real-time systems
Reliability is key
Fast and time limit sensitive
Used in time-critical environments
• Space flights, airport traffic control, high-speed
aircraft
• Industrial processes
• Sophisticated medical equipment
• Distribution of electricity
• Telephone switching
Must be 100% responsive, 100% of the time
CSCI 3453 Operating Systems Concepts 91
Types of Operating Systems
(continued)
Hybrid systems
Combination of batch and interactive
Accept and run batch programs in the background
• Interactive load is light
Embedded systems
Computers placed inside other products
Adds features and capabilities
Operating system requirements
• Perform specific set of programs
• Not interchangeable among systems
• Small kernel and flexible function capabilities