Fred Kuhns ( ) CS523S: Operating Systems
CS523
Operating Systems
Fred Kuhns
Applied Research Laboratory
Computer Science
Washington University
Fred Kuhns ( ) CS523S: Operating
CS523 - Operating Systems
• Instructor: Fred Kuhns
• Phone: 935-6598
• Email: fredk@cs.wustl.edu
• Office Hours:
Tu/Th: 4:00 - 5:00PM
• Location:
TBD
• Class times:
Tu/Th: 2:30 - 4:00PM
Fred Kuhns ( ) CS523S: Operating
Course Materials
• Textbook:
Real-Time Systems, Jane W. S. Liu
• Selected papers from the literature,
• Class handouts and presentation material,
• Class web page,
• OS man pages and web accessible
documentation,
• UNIX account.
Fred Kuhns ( ) CS523S: Operating
Programming Projects
• 3 projects plus a final project
• Final project:
 team/individual class presentations
 address a system issue covered in class. May build
on class projects. Report or implementation.
• Project focus:
 Correct, predictable behavior (of implementation)
 Performance (efficient execution)
 Completeness of design (address all issues)
 "readability" of code (can I understand it)
Fred Kuhns ( ) CS523S: Operating
Exams, Homework and Grading
• Weekly: Homework assignment or Quiz
• Final Exam (no mid-term):
Comprehensive
• Relative weights:
25% Final exam
20% Quizzes
10% Homework
30% Programming projects (10% per project)
15% Final Project
Fred Kuhns ( ) CS523S: Operating
Course Overview
Overview of OS design issues
o Review of general purpose OS services
o Intro to Advanced OS Topics:
• Real-Time, Database, Distributed and Multi-processor
Detailed analysis of conventional OS internals:
o Focus on UNIX - Linux, BSD, SVR4 and Mach
o Single/Multi-processor
o Resource management
Focus on Real-Time: design and implementation
o Performance and predictability issues
o Resource scheduling and managing concurrency
Fred Kuhns ( ) CS523S: Operating
Introduction
• Functions of an Operating System
Resource management
User environment
• Design Approaches
Layered, Kernel and Virtual
• Types of Advanced Operating Systems
Distributed, Multiprocessor, Database and Real-time
• Overview of UNIX (why do we care)
Fred Kuhns ( ) CS523S: Operating
Functions of an OS
• Resource Management
Time management - temporal properties
CPU and disk transfer scheduling
Space management
main and secondary storage allocation
Synchronization and deadlock handling
c
Accounting and status information
s
Fred Kuhns ( ) CS523S: Operating
Functions of an OS (cont)
• User Environment - OS layer transforms bare
hardware machine into higher level abstractions
Execution environment - process management, file
manipulation, interrupt handling, I/O operations,
language.
Error detection and handling
Protection and security
Fault tolerance and failure recovery
Fred Kuhns ( ) CS523S: Operating
Design Approaches
• Deal with complexities of modern systems
• Separation of Policies and Mechanisms
Policies - What should be done
Mechanisms - How it should be done
Levin, R., E. Cohen, W. Corwin, F. Pollack and W. Wulf,
"Policy/Mechanism Separation in HYDRA," Proceedings
of the 5th
Symposium on Principles of Operating Systems,
1975, pp. 132-140.
• Three common approaches:
Layered Approach
Kernel Approach
Virtual Machine Approach
Fred Kuhns ( ) CS523S: Operating
Layered Approach
Level Name Objects Example
13 Shell User programming env. Bash statements
12 User process User process Quit,kill,suspend,resume
11 Directories Directories Create,destroy,attach,list
10 Devices External: printer,display Create,open,close
9 File system Files Create,open,close
8 Communications Pipes Crreate,open,close
7 Virtual memory Segments,pages Read,write,fetch
6 Local secondary store Blocks,channel Read,write,fetch
5 Primitive process Process,semaphore Suspend,resume,wait
4 Interrupts Interrupt-handlers Invoke,mask,retry
3 Procedures Procedure,stack,display Mark stack,call,return
2 Instruction set Evaluation stack Load,store,add
1 Electronic circuit Registers,gates,buses Clear,transfer,activate
Simplifies design, implementation and testing
Modular by dividing OS into functional layers.
HWresourceenvironment
Fred Kuhns ( ) CS523S: Operating
Kernel Based Approach
Kernel contains a collection of primitives
which are used to build the OS
OS implements policy
Kernel implements mechanisms
Hardware
kernel
Operating system
Fred Kuhns ( ) CS523S: Operating
Virtual Machine Approach
Virtual software layer over hardware
Illusion of multiple instances of hardware
Supports multiple instances of OSs
Hardware
Virtual machine software
VM1 VM2 VM3 VM4
Fred Kuhns ( ) CS523S: Operating
• Layered:
Dijkstra, E. W., "The Structure of THE Multiprogramming
System", Communications of the ACM, May 1968, pp. 341-346.
• Layered (Ring):
Organick, E., The Multics System, MIT Press, Cambridge, MA.
1972.
• Kernel
Brinch Hansen, P., "The Nucleus of a Multiprogramming
System", Communications of the ACM, Apr. 1970, pp. 238-241.
Wulf, W., E. Cohen, W. Corwin, A. Jones, R. Levin, C. Pierson,
and F. Pollack, "HYDRA: The Kernel of a Multiprocessor
Operating System", Communications of the ACM, June 1974,
pp. 337-345.
• Virtual
Seawright, L., and R. MacKinnon, "VM/370 - A Study of
Multiplicity and Usefulness", IBM Systems Journal, 1979, pp.
4-17.
Fred Kuhns ( ) CS523S: Operating
Types of Advanced OSs
Distributed Operating Systems
Multiprocessor Operating Systems
Database Operating Systems
Real-time Operating Systems
Fred Kuhns ( ) CS523S: Operating
Distributed Operating Systems
• Controls and manages resources for a network of
autonomous computers
manage both hardware and software resources
behaves as a single monolithic system.
• User not aware of program or resource location
• Design issues same as traditional systems
• Practical issues:
lack of shared memory
lack of global clock
unpredictable communication delays.
Fred Kuhns ( ) CS523S: Operating
Multiprocessor Operating Systems
• Consists of a set of processors that
share a set of physical memory blocks
share a common clock
"share" over an interconnection network.
• Control and manage resources
hardware and software resources
viewed as a uniprocessor system.
• Design issues same as traditional system.
• Practical issues:
increased complexity of synchronization, scheduling,
memory management, protection and security.
Fred Kuhns ( ) CS523S: Operating
Database Operating Systems
• Database systems place increased demands on an
operating system to efficiently support:
concept of a transactions
manage large volumes of data
concurrency control
system failure control
Fred Kuhns ( ) CS523S: Operating
Real-time Operating Systems
• Place application specific special requirements
on an operating system.
• Policies and mechanisms are geared to
ensuring jobs meet their deadlines.
• Problem is one of resource scheduling and
overall system utilization.
Fred Kuhns ( ) CS523S: Operating
Why UNIX
• Historical significance
• Advanced features developed for or ported to
UNIX
• Availability of source code and research papers
• Importance to present and future research
activities at WashU
• Highlights key design and architectural issues
Fred Kuhns ( ) CS523S: Operating
Traditional UNIX kernel
• Bloated kernel
• Inflexible: supported single type of
file system,
process scheduling
executable file format
file
system
virtual
memory
loader
block dev char dev
kernel
Fred Kuhns ( ) CS523S: Operating
Modern UNIX
• Separation of policy and mechanism
• modular design and implementation (layered)
AcrobatDocum ent
Fred Kuhns ( ) CS523S: Operating
References
• Original UNIX implementation:
D. M. Ritchie, and K. Thompson, “The UNIX
Time-Sharing System”, Communications of the
ACM, Vol. 17, No. 7, Jul. 1974, pp. 365-375.

More Related Content

PPTX
Locus Distributed Operating System
PPTX
Application Performance and Flexibility on ExoKernel Systems
PPTX
Monolithic kernel vs. Microkernel
PPT
Exokernel operating systems
PPT
Os Ds Arch
PPTX
Application Performance & Flexibility on Exokernel Systems paper review
PPTX
Chapter04 new
PPT
2. microkernel new
Locus Distributed Operating System
Application Performance and Flexibility on ExoKernel Systems
Monolithic kernel vs. Microkernel
Exokernel operating systems
Os Ds Arch
Application Performance & Flexibility on Exokernel Systems paper review
Chapter04 new
2. microkernel new

What's hot (17)

PDF
[TALK] Exokernel vs. Microkernel
PPT
Lecutur24 25
PPTX
Kernel (computing)
PPTX
Operating system 15 micro kernel based os
DOCX
In a monolithic kernel
PDF
Exokernel
PPT
Lecture 4 Cluster Computing
PPSX
Factored Operating System An Operating System for Multicore and Clouds
PPT
Operating System-Threads-Galvin
PPTX
Thread scheduling in Operating Systems
PPT
Chapter 1 -_characterization_of_distributed_systems
PDF
11.0004www.iiste.org call for paper.a file system level snapshot in ext4--35-30
PDF
4.a file system level snapshot in ext4 -35-30
PPT
PPT
Distributed & parallel system
PDF
Linux kernel Architecture and Properties
PPTX
Thread management
[TALK] Exokernel vs. Microkernel
Lecutur24 25
Kernel (computing)
Operating system 15 micro kernel based os
In a monolithic kernel
Exokernel
Lecture 4 Cluster Computing
Factored Operating System An Operating System for Multicore and Clouds
Operating System-Threads-Galvin
Thread scheduling in Operating Systems
Chapter 1 -_characterization_of_distributed_systems
11.0004www.iiste.org call for paper.a file system level snapshot in ext4--35-30
4.a file system level snapshot in ext4 -35-30
Distributed & parallel system
Linux kernel Architecture and Properties
Thread management
Ad

Similar to Lecture1 (20)

PPTX
Introduction to Operating system and graduate
PPTX
Chapter 1: Introduction to Unix / Linux Kernel
PPTX
Apos week 1 4
PPT
PDF
l1.pdfefdewfewdfewdfdwfdwfdwfdswfdfdwfwdfwdfdwfdw
PPT
linux software architecture
PPTX
Unit 3 part a. operating system support
PPT
Introduction to operating system 1-1_int.ppt
PPT
Introduction to operating system 1-1_int.ppt
PPTX
operating system memory.pptx
PPT
os1-1_int.ppt
PPT
os1-1_int.ppt
PPT
1-intro - Copy (2).ppt
PPTX
operating sysem in understanding computer science cource unit.pptx
PPT
Intruduction to Operation System (OS).ppt
PPTX
l1.pptxsdswdfswdswdwsdwsdswdwsdwdwdwdwddw
PPTX
Supporting Research through "Desktop as a Service" models of e-infrastructure...
PPT
Mca ii os u-5 unix linux file system
PDF
UNIX_Module 1.pdf
PDF
CS311-Lec1.pdfCS311-Lec1.pdfCS311-Lec1.pdf
Introduction to Operating system and graduate
Chapter 1: Introduction to Unix / Linux Kernel
Apos week 1 4
l1.pdfefdewfewdfewdfdwfdwfdwfdswfdfdwfwdfwdfdwfdw
linux software architecture
Unit 3 part a. operating system support
Introduction to operating system 1-1_int.ppt
Introduction to operating system 1-1_int.ppt
operating system memory.pptx
os1-1_int.ppt
os1-1_int.ppt
1-intro - Copy (2).ppt
operating sysem in understanding computer science cource unit.pptx
Intruduction to Operation System (OS).ppt
l1.pptxsdswdfswdswdwsdwsdswdwsdwdwdwdwddw
Supporting Research through "Desktop as a Service" models of e-infrastructure...
Mca ii os u-5 unix linux file system
UNIX_Module 1.pdf
CS311-Lec1.pdfCS311-Lec1.pdfCS311-Lec1.pdf
Ad

More from Downloadssu Fullmaza (12)

PPT
Learningtotakenotes 090420215959-phpapp02
PPT
Marzano summarizing-and-note-taking4349
PDF
Network hardware 2
PPT
Networking hardware (2)
PPT
Networking hardware (2)
PPT
Lecture01 introduction
PPT
Networking hardware
PPT
PPT
Installing rhel-5-linux-redhat-enterprise-edition-stepbystep-1192652004798954-4
PPT
Learningtotakenotes 090420215959-phpapp02
Marzano summarizing-and-note-taking4349
Network hardware 2
Networking hardware (2)
Networking hardware (2)
Lecture01 introduction
Networking hardware
Installing rhel-5-linux-redhat-enterprise-edition-stepbystep-1192652004798954-4

Recently uploaded (20)

PPTX
observCloud-Native Containerability and monitoring.pptx
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
Architecture types and enterprise applications.pdf
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PPTX
Chapter 5: Probability Theory and Statistics
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Hindi spoken digit analysis for native and non-native speakers
PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PDF
Five Habits of High-Impact Board Members
PPT
What is a Computer? Input Devices /output devices
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
A novel scalable deep ensemble learning framework for big data classification...
observCloud-Native Containerability and monitoring.pptx
O2C Customer Invoices to Receipt V15A.pptx
Architecture types and enterprise applications.pdf
1 - Historical Antecedents, Social Consideration.pdf
Enhancing emotion recognition model for a student engagement use case through...
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Chapter 5: Probability Theory and Statistics
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
A review of recent deep learning applications in wood surface defect identifi...
Univ-Connecticut-ChatGPT-Presentaion.pdf
Module 1.ppt Iot fundamentals and Architecture
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
WOOl fibre morphology and structure.pdf for textiles
A comparative study of natural language inference in Swahili using monolingua...
Hindi spoken digit analysis for native and non-native speakers
Web Crawler for Trend Tracking Gen Z Insights.pptx
Five Habits of High-Impact Board Members
What is a Computer? Input Devices /output devices
Getting started with AI Agents and Multi-Agent Systems
A novel scalable deep ensemble learning framework for big data classification...

Lecture1

  • 1. Fred Kuhns ( ) CS523S: Operating Systems CS523 Operating Systems Fred Kuhns Applied Research Laboratory Computer Science Washington University
  • 2. Fred Kuhns ( ) CS523S: Operating CS523 - Operating Systems • Instructor: Fred Kuhns • Phone: 935-6598 • Email: fredk@cs.wustl.edu • Office Hours: Tu/Th: 4:00 - 5:00PM • Location: TBD • Class times: Tu/Th: 2:30 - 4:00PM
  • 3. Fred Kuhns ( ) CS523S: Operating Course Materials • Textbook: Real-Time Systems, Jane W. S. Liu • Selected papers from the literature, • Class handouts and presentation material, • Class web page, • OS man pages and web accessible documentation, • UNIX account.
  • 4. Fred Kuhns ( ) CS523S: Operating Programming Projects • 3 projects plus a final project • Final project:  team/individual class presentations  address a system issue covered in class. May build on class projects. Report or implementation. • Project focus:  Correct, predictable behavior (of implementation)  Performance (efficient execution)  Completeness of design (address all issues)  "readability" of code (can I understand it)
  • 5. Fred Kuhns ( ) CS523S: Operating Exams, Homework and Grading • Weekly: Homework assignment or Quiz • Final Exam (no mid-term): Comprehensive • Relative weights: 25% Final exam 20% Quizzes 10% Homework 30% Programming projects (10% per project) 15% Final Project
  • 6. Fred Kuhns ( ) CS523S: Operating Course Overview Overview of OS design issues o Review of general purpose OS services o Intro to Advanced OS Topics: • Real-Time, Database, Distributed and Multi-processor Detailed analysis of conventional OS internals: o Focus on UNIX - Linux, BSD, SVR4 and Mach o Single/Multi-processor o Resource management Focus on Real-Time: design and implementation o Performance and predictability issues o Resource scheduling and managing concurrency
  • 7. Fred Kuhns ( ) CS523S: Operating Introduction • Functions of an Operating System Resource management User environment • Design Approaches Layered, Kernel and Virtual • Types of Advanced Operating Systems Distributed, Multiprocessor, Database and Real-time • Overview of UNIX (why do we care)
  • 8. Fred Kuhns ( ) CS523S: Operating Functions of an OS • Resource Management Time management - temporal properties CPU and disk transfer scheduling Space management main and secondary storage allocation Synchronization and deadlock handling c Accounting and status information s
  • 9. Fred Kuhns ( ) CS523S: Operating Functions of an OS (cont) • User Environment - OS layer transforms bare hardware machine into higher level abstractions Execution environment - process management, file manipulation, interrupt handling, I/O operations, language. Error detection and handling Protection and security Fault tolerance and failure recovery
  • 10. Fred Kuhns ( ) CS523S: Operating Design Approaches • Deal with complexities of modern systems • Separation of Policies and Mechanisms Policies - What should be done Mechanisms - How it should be done Levin, R., E. Cohen, W. Corwin, F. Pollack and W. Wulf, "Policy/Mechanism Separation in HYDRA," Proceedings of the 5th Symposium on Principles of Operating Systems, 1975, pp. 132-140. • Three common approaches: Layered Approach Kernel Approach Virtual Machine Approach
  • 11. Fred Kuhns ( ) CS523S: Operating Layered Approach Level Name Objects Example 13 Shell User programming env. Bash statements 12 User process User process Quit,kill,suspend,resume 11 Directories Directories Create,destroy,attach,list 10 Devices External: printer,display Create,open,close 9 File system Files Create,open,close 8 Communications Pipes Crreate,open,close 7 Virtual memory Segments,pages Read,write,fetch 6 Local secondary store Blocks,channel Read,write,fetch 5 Primitive process Process,semaphore Suspend,resume,wait 4 Interrupts Interrupt-handlers Invoke,mask,retry 3 Procedures Procedure,stack,display Mark stack,call,return 2 Instruction set Evaluation stack Load,store,add 1 Electronic circuit Registers,gates,buses Clear,transfer,activate Simplifies design, implementation and testing Modular by dividing OS into functional layers. HWresourceenvironment
  • 12. Fred Kuhns ( ) CS523S: Operating Kernel Based Approach Kernel contains a collection of primitives which are used to build the OS OS implements policy Kernel implements mechanisms Hardware kernel Operating system
  • 13. Fred Kuhns ( ) CS523S: Operating Virtual Machine Approach Virtual software layer over hardware Illusion of multiple instances of hardware Supports multiple instances of OSs Hardware Virtual machine software VM1 VM2 VM3 VM4
  • 14. Fred Kuhns ( ) CS523S: Operating • Layered: Dijkstra, E. W., "The Structure of THE Multiprogramming System", Communications of the ACM, May 1968, pp. 341-346. • Layered (Ring): Organick, E., The Multics System, MIT Press, Cambridge, MA. 1972. • Kernel Brinch Hansen, P., "The Nucleus of a Multiprogramming System", Communications of the ACM, Apr. 1970, pp. 238-241. Wulf, W., E. Cohen, W. Corwin, A. Jones, R. Levin, C. Pierson, and F. Pollack, "HYDRA: The Kernel of a Multiprocessor Operating System", Communications of the ACM, June 1974, pp. 337-345. • Virtual Seawright, L., and R. MacKinnon, "VM/370 - A Study of Multiplicity and Usefulness", IBM Systems Journal, 1979, pp. 4-17.
  • 15. Fred Kuhns ( ) CS523S: Operating Types of Advanced OSs Distributed Operating Systems Multiprocessor Operating Systems Database Operating Systems Real-time Operating Systems
  • 16. Fred Kuhns ( ) CS523S: Operating Distributed Operating Systems • Controls and manages resources for a network of autonomous computers manage both hardware and software resources behaves as a single monolithic system. • User not aware of program or resource location • Design issues same as traditional systems • Practical issues: lack of shared memory lack of global clock unpredictable communication delays.
  • 17. Fred Kuhns ( ) CS523S: Operating Multiprocessor Operating Systems • Consists of a set of processors that share a set of physical memory blocks share a common clock "share" over an interconnection network. • Control and manage resources hardware and software resources viewed as a uniprocessor system. • Design issues same as traditional system. • Practical issues: increased complexity of synchronization, scheduling, memory management, protection and security.
  • 18. Fred Kuhns ( ) CS523S: Operating Database Operating Systems • Database systems place increased demands on an operating system to efficiently support: concept of a transactions manage large volumes of data concurrency control system failure control
  • 19. Fred Kuhns ( ) CS523S: Operating Real-time Operating Systems • Place application specific special requirements on an operating system. • Policies and mechanisms are geared to ensuring jobs meet their deadlines. • Problem is one of resource scheduling and overall system utilization.
  • 20. Fred Kuhns ( ) CS523S: Operating Why UNIX • Historical significance • Advanced features developed for or ported to UNIX • Availability of source code and research papers • Importance to present and future research activities at WashU • Highlights key design and architectural issues
  • 21. Fred Kuhns ( ) CS523S: Operating Traditional UNIX kernel • Bloated kernel • Inflexible: supported single type of file system, process scheduling executable file format file system virtual memory loader block dev char dev kernel
  • 22. Fred Kuhns ( ) CS523S: Operating Modern UNIX • Separation of policy and mechanism • modular design and implementation (layered) AcrobatDocum ent
  • 23. Fred Kuhns ( ) CS523S: Operating References • Original UNIX implementation: D. M. Ritchie, and K. Thompson, “The UNIX Time-Sharing System”, Communications of the ACM, Vol. 17, No. 7, Jul. 1974, pp. 365-375.