Operating Systems
CSE451
Spring 2000
Instructor: Gary Kimura
Slides courtesy of Hank Levy
1/24/2023 2
What is an Operating System?
• “all the code that you didn’t write”
• the code that manages physical (hardware) resources
• provides users with “logical” well-behaved environment
• O.S. defines a set of logical resources (objects) and a set
of well-defined operations on those objects (i.e., an
interface to use those objects)
• provides mechanisms and policies for the control of
objects/resources
• controls how different users and programs interact
• without an O.S. there would be a lot more work to write and run
programs
1/24/2023 3
What resources need to be managed?
• the CPU (computation)
• primary memory
• secondary memory devices (disks, tapes, etc)
• networks
• input devices (keyboard, mouse)
• various I/O devices (printers, display, cameras,
speakers)
1/24/2023 4
What’s in an OS?
Machine Dependent
Services
Interrupts, Cache, Physical Memory, TLB, Hardware Devices
Generic I/O
File System
Memory Management
Process Management
Virtual Memory
Networking
Naming Access Control
Windowing & graphics
Windowing & Gfx
Machine
Independent
Services
Application
Services
SYSTEM CALL API
MD API
Device Drivers
Shells
System Utils
Quake Sql Server
Logical OS Structure
1/24/2023 5
The OS is Everywhere
main(int argc, char **argv)
{ int fd = open(argv[1], O_RDONLY);
if (fd < 0) {
fprintf(stderr, “Failed to openn”);
exit(-1);
}
while (1) {
if (read(fd, &c, sizeof c) != 1)
exit(-1);
putc( c )
}
}
• Edit
• Compile
• Run/Create Process
• Invoke main
• Open file
– check access
– cache
– read character
• Write character
• Terminate process on EOF or Err
% cc main.c
% ./a.out /tmp/foo.bar
1/24/2023 6
Major issues in Operating Systems
• structure -- how is an operating system organized?
• sharing -- how are resources shared among users
• naming -- how are resources named (by users or programs)
• protection -- how is one user/program protected from
another
• security -- how to restrict the flow of information
• performance -- why is it so slow?
• reliability and fault tolerance -- when something goes wrong
• extensibility -- how do we add new features?
• communication -- how and with whom can we communicate
(exchange information)
1/24/2023 7
Major issues in OS (2)
• concurrency -- how are parallel activities created and
controlled?
• scale and growth -- what happens as demands or resources
increase?
• persistence -- how to make data last longer than programs
• compatibility -- can we ever do anything new?
• distribution -- accessing the world of information
• accounting -- who pays the bills, and how do we control
resource usage?
1/24/2023 8
A brief history of operating systems
• “in the beginning”, the OS was just code to which you
linked your program, loaded the whole thing into
memory, and ran your program; basically, just a
run-time library
• simple batch systems were first real operating systems:
• os was stored in part of primary memory
• it loaded a single job (from card reader) into memory
• ran that job (printed its output, etc.)
• loaded the next job...
• control cards in the input file told the os what to do
• Spooling and buffering allowed jobs to be read ahead of
time onto tape/disk or into memory.
1/24/2023 9
Multiprogramming
• Multiprogramming systems provided
increased utilization
• keeps multiple runnable jobs loaded in memory
• overlaps I/O processing of a job with computes of
another
• benefits from I/O devices that can operate
asynchronously
• requires the use of interrupts and DMA
• tries to optimize throughput at the cost of response
time
1/24/2023 10
Timesharing
• Timesharing supported interactive use of
• each user feels as if he/she has the entire machine (at
least late at night!)
• timesharing tries to optimize response time at the
cost of throughput
• based on time-slicing -- dividing CPU equally
among the users
• permitted active viewing, editing, debugging,
participation of users in the execution process
• MIT Multics system (mid-late 1960s) was first large
timesharing system
1/24/2023 11
Distributed Operating Systems
• distributed systems facilitate use of geographically
distributed resources
– machines connected by wires
• supports communication between parts of a job or
different jobs
– interprocess communication
• sharing of distributed resources, hardware and
software
– resource utilization and access
• permits some parallelism, but speedup is not the issue
1/24/2023 12
Parallel Operating Systems
• Support parallel applications wishing to get speedup of
computationally complex tasks
• Needs basic primitives for dividing one task into
multiple parallel activities
• Supports efficient communication between those
activities
• Supports synchronization of activities to coordinate
sharing of information
• It’s common now to use networks of high-performance
PCs/workstations as a parallel computer
1/24/2023 13
Embedded Operating Systems
• The decreased cost of processing makes computers
ubiquitous. Each “embedded” application needs its
own OS or control software:
– cell phones
– PDAs (Palm Pilot, etc.)
– “network terminals” (internet interfaces)
• In the future, your house will have 100s of these things
in it (if it doesn’t already)
1/24/2023 14
CSE 451
• In this class we will learn:
• what are the parts of an O.S.
• how is the o.s. and each sub-part structured
• what are the important interfaces
• what are the important policies
• what algorithms are typically used
• We will do this through reading, lectures, and a project.
• You will need to keep up with all three of these.

More Related Content

PPT
1-Introduction madul include all the.ppt
PPT
1-Introduction to the first OS topic for
PPT
intro.ppt
PPT
intro.ppt
PDF
R20CSE2202-OPERATING-SYSTEMS .pdf
PDF
Csc 2313 (lecture 2)
PDF
Csc 2313 (lecture 2)
PPTX
Nt introduction(os)
1-Introduction madul include all the.ppt
1-Introduction to the first OS topic for
intro.ppt
intro.ppt
R20CSE2202-OPERATING-SYSTEMS .pdf
Csc 2313 (lecture 2)
Csc 2313 (lecture 2)
Nt introduction(os)

Similar to 1-intro - Copy (2).ppt (20)

PPT
CSE 370 - Introduction to Operating Systems
PDF
operating systems classification university
PPTX
Unit 1 -Introduction of Operating System
PPT
Intruduction to Operation System (OS).ppt
PPTX
OS UNIT 1 NOTES (1).pptxxdjhvcdkfshfkdhvjdsk
PPT
Introduction to operating system 1-1_int.ppt
PPT
os1-1_int.ppt
PPTX
operating system memory.pptx
PPT
os1-1_int.ppt
PDF
chapter 3 opreating system lecture note and its is impaortamt concept for mn
PPTX
OPERATING.pptx
PPTX
UNIT 1FUNDAMENTALS OF OPERATING SYSTEMS.pptx
PPT
Operating system lecture1
PPT
Introduction To operating System:
PPTX
Operating systems
PPTX
Operating system
PPTX
The Fundamentals of Operating Systems .pptx
PPTX
The Brain Behind Your Device: A Deep Dive into Operating Systems
PPTX
OS - BACKGROUND HANDLING
PDF
osunit1ppt-23011904470yuoij4-685c22ef.pdf
CSE 370 - Introduction to Operating Systems
operating systems classification university
Unit 1 -Introduction of Operating System
Intruduction to Operation System (OS).ppt
OS UNIT 1 NOTES (1).pptxxdjhvcdkfshfkdhvjdsk
Introduction to operating system 1-1_int.ppt
os1-1_int.ppt
operating system memory.pptx
os1-1_int.ppt
chapter 3 opreating system lecture note and its is impaortamt concept for mn
OPERATING.pptx
UNIT 1FUNDAMENTALS OF OPERATING SYSTEMS.pptx
Operating system lecture1
Introduction To operating System:
Operating systems
Operating system
The Fundamentals of Operating Systems .pptx
The Brain Behind Your Device: A Deep Dive into Operating Systems
OS - BACKGROUND HANDLING
osunit1ppt-23011904470yuoij4-685c22ef.pdf
Ad

Recently uploaded (20)

PDF
CCleaner 6.39.11548 Crack 2025 License Key
PDF
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
PDF
How Tridens DevSecOps Ensures Compliance, Security, and Agility
PPTX
Computer Software - Technology and Livelihood Education
PDF
Topaz Photo AI Crack New Download (Latest 2025)
PDF
Guide to Food Delivery App Development.pdf
PDF
Introduction to Ragic - #1 No Code Tool For Digitalizing Your Business Proces...
PDF
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
PDF
Wondershare Recoverit Full Crack New Version (Latest 2025)
PPTX
"Secure File Sharing Solutions on AWS".pptx
PDF
DNT Brochure 2025 – ISV Solutions @ D365
PDF
AI/ML Infra Meetup | Beyond S3's Basics: Architecting for AI-Native Data Access
PDF
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
PDF
novaPDF Pro 11.9.482 Crack + License Key [Latest 2025]
PDF
Visual explanation of Dijkstra's Algorithm using Python
PDF
Ableton Live Suite for MacOS Crack Full Download (Latest 2025)
PPTX
Airline CRS | Airline CRS Systems | CRS System
PPTX
Trending Python Topics for Data Visualization in 2025
PPTX
Matchmaking for JVMs: How to Pick the Perfect GC Partner
PDF
Top 10 Software Development Trends to Watch in 2025 🚀.pdf
CCleaner 6.39.11548 Crack 2025 License Key
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
How Tridens DevSecOps Ensures Compliance, Security, and Agility
Computer Software - Technology and Livelihood Education
Topaz Photo AI Crack New Download (Latest 2025)
Guide to Food Delivery App Development.pdf
Introduction to Ragic - #1 No Code Tool For Digitalizing Your Business Proces...
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
Wondershare Recoverit Full Crack New Version (Latest 2025)
"Secure File Sharing Solutions on AWS".pptx
DNT Brochure 2025 – ISV Solutions @ D365
AI/ML Infra Meetup | Beyond S3's Basics: Architecting for AI-Native Data Access
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
novaPDF Pro 11.9.482 Crack + License Key [Latest 2025]
Visual explanation of Dijkstra's Algorithm using Python
Ableton Live Suite for MacOS Crack Full Download (Latest 2025)
Airline CRS | Airline CRS Systems | CRS System
Trending Python Topics for Data Visualization in 2025
Matchmaking for JVMs: How to Pick the Perfect GC Partner
Top 10 Software Development Trends to Watch in 2025 🚀.pdf
Ad

1-intro - Copy (2).ppt

  • 1. Operating Systems CSE451 Spring 2000 Instructor: Gary Kimura Slides courtesy of Hank Levy
  • 2. 1/24/2023 2 What is an Operating System? • “all the code that you didn’t write” • the code that manages physical (hardware) resources • provides users with “logical” well-behaved environment • O.S. defines a set of logical resources (objects) and a set of well-defined operations on those objects (i.e., an interface to use those objects) • provides mechanisms and policies for the control of objects/resources • controls how different users and programs interact • without an O.S. there would be a lot more work to write and run programs
  • 3. 1/24/2023 3 What resources need to be managed? • the CPU (computation) • primary memory • secondary memory devices (disks, tapes, etc) • networks • input devices (keyboard, mouse) • various I/O devices (printers, display, cameras, speakers)
  • 4. 1/24/2023 4 What’s in an OS? Machine Dependent Services Interrupts, Cache, Physical Memory, TLB, Hardware Devices Generic I/O File System Memory Management Process Management Virtual Memory Networking Naming Access Control Windowing & graphics Windowing & Gfx Machine Independent Services Application Services SYSTEM CALL API MD API Device Drivers Shells System Utils Quake Sql Server Logical OS Structure
  • 5. 1/24/2023 5 The OS is Everywhere main(int argc, char **argv) { int fd = open(argv[1], O_RDONLY); if (fd < 0) { fprintf(stderr, “Failed to openn”); exit(-1); } while (1) { if (read(fd, &c, sizeof c) != 1) exit(-1); putc( c ) } } • Edit • Compile • Run/Create Process • Invoke main • Open file – check access – cache – read character • Write character • Terminate process on EOF or Err % cc main.c % ./a.out /tmp/foo.bar
  • 6. 1/24/2023 6 Major issues in Operating Systems • structure -- how is an operating system organized? • sharing -- how are resources shared among users • naming -- how are resources named (by users or programs) • protection -- how is one user/program protected from another • security -- how to restrict the flow of information • performance -- why is it so slow? • reliability and fault tolerance -- when something goes wrong • extensibility -- how do we add new features? • communication -- how and with whom can we communicate (exchange information)
  • 7. 1/24/2023 7 Major issues in OS (2) • concurrency -- how are parallel activities created and controlled? • scale and growth -- what happens as demands or resources increase? • persistence -- how to make data last longer than programs • compatibility -- can we ever do anything new? • distribution -- accessing the world of information • accounting -- who pays the bills, and how do we control resource usage?
  • 8. 1/24/2023 8 A brief history of operating systems • “in the beginning”, the OS was just code to which you linked your program, loaded the whole thing into memory, and ran your program; basically, just a run-time library • simple batch systems were first real operating systems: • os was stored in part of primary memory • it loaded a single job (from card reader) into memory • ran that job (printed its output, etc.) • loaded the next job... • control cards in the input file told the os what to do • Spooling and buffering allowed jobs to be read ahead of time onto tape/disk or into memory.
  • 9. 1/24/2023 9 Multiprogramming • Multiprogramming systems provided increased utilization • keeps multiple runnable jobs loaded in memory • overlaps I/O processing of a job with computes of another • benefits from I/O devices that can operate asynchronously • requires the use of interrupts and DMA • tries to optimize throughput at the cost of response time
  • 10. 1/24/2023 10 Timesharing • Timesharing supported interactive use of • each user feels as if he/she has the entire machine (at least late at night!) • timesharing tries to optimize response time at the cost of throughput • based on time-slicing -- dividing CPU equally among the users • permitted active viewing, editing, debugging, participation of users in the execution process • MIT Multics system (mid-late 1960s) was first large timesharing system
  • 11. 1/24/2023 11 Distributed Operating Systems • distributed systems facilitate use of geographically distributed resources – machines connected by wires • supports communication between parts of a job or different jobs – interprocess communication • sharing of distributed resources, hardware and software – resource utilization and access • permits some parallelism, but speedup is not the issue
  • 12. 1/24/2023 12 Parallel Operating Systems • Support parallel applications wishing to get speedup of computationally complex tasks • Needs basic primitives for dividing one task into multiple parallel activities • Supports efficient communication between those activities • Supports synchronization of activities to coordinate sharing of information • It’s common now to use networks of high-performance PCs/workstations as a parallel computer
  • 13. 1/24/2023 13 Embedded Operating Systems • The decreased cost of processing makes computers ubiquitous. Each “embedded” application needs its own OS or control software: – cell phones – PDAs (Palm Pilot, etc.) – “network terminals” (internet interfaces) • In the future, your house will have 100s of these things in it (if it doesn’t already)
  • 14. 1/24/2023 14 CSE 451 • In this class we will learn: • what are the parts of an O.S. • how is the o.s. and each sub-part structured • what are the important interfaces • what are the important policies • what algorithms are typically used • We will do this through reading, lectures, and a project. • You will need to keep up with all three of these.