1 / 31

Chapter 15 – Part 1 The Internal Operating System

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

alvam
Download Presentation

Chapter 15 – Part 1 The Internal Operating System

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

  3. Target Model Chapter 15 The Internal Operating System – Part 1

  4. 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

  5. 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

  6. 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

  7. 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

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

  9. 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

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

  11. 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

  12. CPU Scheduling Chapter 15 The Internal Operating System – Part 1

  13. 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

  14. 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

  15. 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 Chapter 15 The Internal Operating System – Part 1

  16. 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

  17. Memory Management • Memory Partitioning • 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

  18. Memory Overlays Chapter 15 The Internal Operating System – Part 1

  19. 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

  20. Frames and Pages Chapter 15 The Internal Operating System – Part 1

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

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

  23. 1 2 3 4 5 6 7 8 9 10 11 6 4 8 10 1 2 7 Page Table Page Frame Pages not in main memory: page fault when accessed 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

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

  25. 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

  26. 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

  27. 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

  28. 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

  29. 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

  30. Other OS Issues • Deadlock • 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

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

More Related