Mid Term review
description
Transcript of Mid Term review
Mid Term review
CSC345
• What is an Operating System?• Various systems and their pros and cons
– E.g. multi-tasking vs. Batch• OS definitions
– Resource allocator– Control program– Kernel
Abstract View of System Components
Important OS Features/services
• Process Management (CPU scheduling)• Main Memory Management• File Management• I/O System Management• Secondary Management• Networking• Protection System• Command-Interpreter System
OS Control Structure
MemoryI/O
FileProcesses
Memory Tables
I/O Tables
File Tables
Process 1Process 2
… Process N
Primary Table
Process Image
User dataUser programSystem stack
PCB
Process State Diagram
Ready
BlockedSuspend
New Running
Exit
release
dispatch
time-out
eventactivate
suspend
admit
wait
• System call vs. System program
Chapter 2: Computer-System Structures
• Computer System Operation• I/O Structure • Storage Structure• Storage Hierarchy• Hardware Protection• General System Architecture
Two I/O Methods
Synchronous Asynchronous
Dual mode operation & why ?
Use of A System Call to Perform I/O
Use of A Base and Limit Register
Hardware Address Protection
OS structure & Layered Approach
• The operating system is divided into a number of layers (levels), each built on top of lower layers. The bottom layer (layer 0), is the hardware; the highest (layer N) is the user interface.
• With modularity, layers are selected such that each uses functions (operations) and services of only lower-level layers.
UNIX System Structure
Process Management
• Process vs. Thread creation• Process scheduling• Process Termination• Unix process creation fork() & exec()
– Identify parent vs. child
• How to find out process infomation
Process Control Block (PCB)
Process vs. Thread creation
Multithreading Models
• Many-to-One
• One-to-One
• Many-to-Many----------------------------------------------• Pthread, JAVA thread, Kernel vs. User
thread
CPU Switch From Process to Process
Process Scheduling Queues• Job queue – set of all processes in the system.• Ready queue – set of all processes residing in main memory,
ready and waiting to execute.• Device queues – set of processes waiting for an I/O device.• Process migration between the various queues.
Representation of Process Scheduling
Schedulers
• Long-term scheduler (or job scheduler) – selects which processes should be brought into the ready queue.
• Short-term scheduler (or CPU scheduler) – selects which process should be executed next and allocates CPU.
• Midterm scheduler
Addition of Medium Term Scheduling
Context Switch• When CPU switches to another process, the system must
save the state of the old process and load the saved state for the new process.
• Context-switch time is overhead; the system does no useful work while switching.
• Time dependent on hardware support.
User program & Kernel interface
Note: This picture is excerpted from Write a Linux Hardware Device Driver, Andrew O’Shauqhnessy, Unix world
Two I/O Methods
Synchronous Asynchronous
Pooling or interrupt