Chapter 15 – Part 1 The Internal Operating System

Slides:



Advertisements
Similar presentations
Operating Systems Review.
Advertisements

Operating Systems Process Scheduling (Ch 3.2, )
Operating Systems ECE344 Ding Yuan Final Review Lecture 13: Final Review.
Virtual Memory Introduction to Operating Systems: Module 9.
Chapter 10 Operating Systems.
Ceng Operating Systems Chapter 2.2 : Process Scheduling Process concept  Process scheduling Interprocess communication Deadlocks Threads.
Chapter 10 Operating Systems. 2 Chapter Goals Describe the two main responsibilities of an operating system Define memory and process management Explain.
CMPT 300: Final Review Chapters 8 – Memory Management: Ch. 8, 9 Address spaces Logical (virtual): generated by the CPU Physical: seen by the memory.
Chapter 101 Virtual Memory Chapter 10 Sections and plus (Skip:10.3.2, 10.7, rest of 10.8)
Dr Mohamed Menacer College of Computer Science and Engineering Taibah University CS-334: Computer.
Uniprocessor Scheduling Chapter 9. Aim of Scheduling The key to multiprogramming is scheduling Scheduling is done to meet the goals of –Response time.
Chapter 10 Operating Systems. 2 Chapter Goals Describe the two main responsibilities of an operating system Define memory and process management Explain.
Chapter 15 – Part 1 The Internal Operating System
Computer Organization and Architecture
OS Spring’04 Virtual Memory: Page Replacement Operating Systems Spring 2004.
CS364 CH08 Operating System Support TECH Computer Science Operating System Overview Scheduling Memory Management Pentium II and PowerPC Memory Management.
1Chapter 05, Fall 2008 CPU Scheduling The CPU scheduler (sometimes called the dispatcher or short-term scheduler): Selects a process from the ready queue.
Layers and Views of a Computer System Operating System Services Program creation Program execution Access to I/O devices Controlled access to files System.
Chapter 10 Operating Systems.
Chapter 3 Memory Management: Virtual Memory
Chapter 10 Operating Systems *. 2 Chapter Goals Describe the main responsibilities of an operating system Define memory and process management Explain.
Computer Architecture and Operating Systems CS 3230: Operating System Section Lecture OS-3 CPU Scheduling Department of Computer Science and Software Engineering.
1 Scheduling Processes. 2 Processes Each process has state, that includes its text and data, procedure call stack, etc. This state resides in memory.
Chapter 5 Operating System Support. Outline Operating system - Objective and function - types of OS Scheduling - Long term scheduling - Medium term scheduling.
CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
Chapter 10 Operating Systems.
SWE202 Review. Processes Process State As a process executes, it changes state – new: The process is being created – running: Instructions are being.
Operating Systems Process Management.
Lecture 7: Scheduling preemptive/non-preemptive scheduler CPU bursts
10-1 Software Categories Application software Software written to address specific needs—to solve problems in the real world Word processing programs,
Virtual Memory The memory space of a process is normally divided into blocks that are either pages or segments. Virtual memory management takes.
CHAPTER 18: The Internal Operating System
CSE 153 Design of Operating Systems Winter 2015 Midterm Review.
Chapter 2 Process Management. 2 Objectives After finish this chapter, you will understand: the concept of a process. the process life cycle. process states.
Lecture Topics: 11/15 CPU scheduling: –Scheduling goals and algorithms.
What is an Operating System? Various systems and their pros and cons –E.g. multi-tasking vs. Batch OS definitions –Resource allocator –Control program.
1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
Computer Architecture Chapter (8): Operating System Support
OPERATING SYSTEM CONCEPTS AND PRACTISE
CPU SCHEDULING.
Chapter 2 Memory and process management
TK 6123 COMPUTER ORGANISATION & ARCHITECTURE
Chapter 3: Process Concept
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
UNIT–IV: Memory Management
Operating System (OS) QUESTIONS AND ANSWERS
William Stallings Computer Organization and Architecture
Section 10: Last section! Final review.
Chapter 2.2 : Process Scheduling
Main Memory Management
Module 9: Virtual Memory
Process management Information maintained by OS for process management
Chapter 9: Virtual-Memory Management
Operating Systems Review.
COT 4600 Operating Systems Spring 2011
Andy Wang Operating Systems COP 4610 / CGS 5765
Operating System Concepts
So far… Text RO …. printf() RW link printf Linking, loading
Chapter 9: Virtual Memory
Mid Term review CSC345.
Operating Systems.
Chapter 8: Memory management
Outline Module 1 and 2 dealt with processes, scheduling and synchronization Next two modules will deal with memory and storage Processes require data to.
Process Scheduling Decide which process should run and for how long
Chapter 8: Memory Management strategies
CSE 153 Design of Operating Systems Winter 2019
Module 9: Virtual Memory
CSE 542: Operating Systems
Presentation transcript:

Chapter 15 – Part 1 The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3rd Edition, Irv Englander John Wiley and Sons 2003

OS Internals – Part I Process Scheduling CPU Scheduling Memory Management Virtual Storage Chapter 15 The Internal Operating System – Part 1

Target Model Chapter 15 The Internal Operating System – Part 1

Loading and Executing a Program Network Services File management Device management / Resource allocation Memory management / Scheduling Monitor Translates logical file requests IOCS (I/O control system) Load programs into MM Allocates execution time Provides overall system control Chapter 15 The Internal Operating System – Part 1

Multi-Tasking System The OS must allocate resources (CPU, memory, I/O) to multiple processes Different scheduling routines are used for different objectives Chapter 15 The Internal Operating System – Part 1

Processes Process: basic unit of work in the OS A program together with all the resources that are associated with it as it is executed Program: a file or listing Process: a program being executed Independent vs. cooperating processes PID (process ID): a unique identifier for each process Process creation: user vs. system Forking, spawning, cloning a new process Parent and child processes Chapter 15 The Internal Operating System – Part 1

Process Control Block A block of data for each process in the system Contains all relevant information about the process Typical process control block on the right  Chapter 15 The Internal Operating System – Part 1

Two Processes Sharing a Single Program Chapter 15 The Internal Operating System – Part 1

Process States Three primary process operating states Ready state Running state Blocked state Dispatching - Move from ready state to running state Wake-up - Move from blocked state to ready state Time-out - Move from running state to ready state Process completion killed, terminated, destroyed Additional states – suspend, swap Resumption – Move from suspended state to ready state Chapter 15 The Internal Operating System – Part 1

Process State Diagram Chapter 15 The Internal Operating System – Part 1

Threads ‘Miniprocess’ that can be run independent of other parts of the process Event-driven programs No control blocks Shares resources allocated to its parent process including primary storage, files and I/O devices Advantage of process/thread families over multiple independent processes: Reduced OS overhead for resource allocation and process management Substantially less information than a normal PCB Chapter 15 The Internal Operating System – Part 1

CPU Scheduling Chapter 15 The Internal Operating System – Part 1

Dispatching Objectives Maximize throughput Minimize turnaround time Maximize CPU utilization Maximize resource allocation Promote graceful degradation Provide minimal and consistent response time Prevent starvation Chapter 15 The Internal Operating System – Part 1

Nonpreemptive Dispatching First in, first out (FIFO) Unfair to short processes and I/O based processes Shortest Job First (SJF) Longer jobs can be starved Priority Scheduling Dispatcher selects among jobs with the same priorities Chapter 15 The Internal Operating System – Part 1

Preemptive Dispatching Round robin Inherently fair and maximizes throughput Dynamic Priority Based on ratio of CPU time to total time process has been in the system Smallest ratio has highest priority Linux, Windows 2000 each process gets the same amount of time, simple and inherently fair, good on maximizing throughput, jobs penalized for IO, UNIX variation - calculates a dynamic priority based on the ratio of CPU time to total time, if no jobs have IO this reduces to RR Multi-level feedback - hybrid algorithm, favors short jobs, favors IO bound jobs, processes enter at the first queue, and are given almost immediate CPU access, if they don’t finish the first time through they are assigned to the second level queue, Chapter 15 The Internal Operating System – Part 1

Preemptive Dispatching Multilevel feedback queues Favors short jobs, I/O bound jobs Each level assigns more CPU time Chapter 15 The Internal Operating System – Part 1

Memory Management Memory Partitioning Overlays Memory Relocation Fixed Variable Best fit, first-fit, largest-fit algorithms Memory fragmentation Overlays Programs are divided into small logical pieces for execution Pieces are loaded into memory as needed Memory Relocation Addresses have to be adjusted unless relative addressing is used Chapter 15 The Internal Operating System – Part 1

Memory Overlays Chapter 15 The Internal Operating System – Part 1

Virtual Memory Virtual memory increases the apparent amount of memory by using far less expensive hard disk space Provides for process separation Demand paging Pages brought into memory as needed Page table Keeps track of what is in memory and what is still out on hard disk Chapter 15 The Internal Operating System – Part 1

Frames and Pages Program Memory Unit Page Frame Address Logical Physical Size 2 to 4KB Amount # of bits in instruction word Installed memory Chapter 15 The Internal Operating System – Part 1

Frames and Pages Binary Paging Chapter 15 The Internal Operating System – Part 1

Dynamic Address Translation Chapter 15 The Internal Operating System – Part 1

Page Table Page Frame Pages not in main memory: page fault when accessed 1 2 3 4 5 6 7 8 9 10 11 Disk 1 2 3 4 5 6 7 8 9 10 11 Swap space Virtual Memory Pages Chapter 15 The Internal Operating System – Part 1

Steps in Handling a Page Fault Chapter 15 The Internal Operating System – Part 1

Locality of Reference Most memory references confined to small region Well-written program in small loop, procedure or function Data likely in array and variables stored together Working set Number of pages sufficient to run program normally, i.e., satisfy locality of a particular program Chapter 15 The Internal Operating System – Part 1

Page Replacement Algorithms Page fault - page is not in memory and must be loaded from disk Algorithms to manage swapping First-In, First-Out FIFO – Belady’s Anomaly Least Recently Used LRU Least Frequently Used LFU Not Used Recently NUR Referenced bit, Modified (dirty) bit Second Chance Replacement algorithms Thrashing too many page faults affect system performance Chapter 15 The Internal Operating System – Part 1

Virtual Memory Tradeoffs Disadvantages SWAP file takes up space on disk Paging takes up resources of the CPU Advantages Programs share memory space More programs run at the same time Programs run even if they cannot fit into memory all at once Process separation Chapter 15 The Internal Operating System – Part 1

Virtual Memory vs. Caching Cache speeds up memory access Virtual memory increases amount of perceived storage Independence from the configuration and capacity of the memory system Low cost per bit compared to main memory Chapter 15 The Internal Operating System – Part 1

Secondary Storage Scheduling First-Come, First-Served Shortest Distance First Indefinite postponement problem Scan Middle of disk gets serviced twice N-Step C-Scan Disk seek in only one direction Return after last request in queue served Two queues Queue of requests being processed Queue of new requests Chapter 15 The Internal Operating System – Part 1

Other OS Issues Deadlock Process Synchronization Two processes have one another’s resources that the other needs in order to proceed Prevention Avoidance Detection and recovery Process Synchronization Chapter 15 The Internal Operating System – Part 1

Java Virtual Machine Chapter 15 The Internal Operating System – Part 1