 Introduction, concepts, review & historical perspective  Processes ◦ Synchronization ◦ Scheduling ◦ Deadlock  Memory management, address translation,

Slides:



Advertisements
Similar presentations
Memory Management Chapter 7.
Advertisements

Chapter 10 Operating Systems.
Memory Management Chapter 7. Memory Management Subdividing memory to accommodate multiple processes Memory needs to be allocated efficiently to pack as.
Memory Management Subdividing memory to accommodate multiple processes Memory needs to be allocated to ensure a reasonable supply of ready processes to.
Chapter 7 Memory Management
Chapter 7 Memory Management Operating Systems: Internals and Design Principles, 6/E William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2009, Prentice.
Chap 5 Process Scheduling. Basic Concepts Maximum CPU utilization obtained with multiprogramming CPU–I/O Burst Cycle – Process execution consists of a.
Chapter 5 CPU Scheduling. CPU Scheduling Topics: Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
CPU Scheduling CS 3100 CPU Scheduling1. Objectives To introduce CPU scheduling, which is the basis for multiprogrammed operating systems To describe various.
Chapter 3: CPU Scheduling
Chapter 7 Memory Management
Chapter 10 Operating Systems. 2 Chapter Goals Describe the two main responsibilities of an operating system Define memory and process management Explain.
Memory Management Chapter 7 B.Ramamurthy. Memory Management Subdividing memory to accommodate multiple processes Memory needs to allocated efficiently.
1 Memory Management Chapter 7. 2 Memory Management Subdividing memory to accommodate multiple processes Memory needs to be allocated to ensure a reasonable.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Memory Management Chapter 5.
OUTLINE What is the Process Management? What is it covers? pprocess state pprocess table, pprocess scheduling.
Operating Systems CS208. What is Operating System? It is a program. It is the first piece of software to run after the system boots. It coordinates the.
Informationsteknologi Tuesday, October 9, 2007Computer Systems/Operating Systems - Class 141 Today’s class Scheduling.
A. Frank - P. Weisberg Operating Systems CPU Scheduling.
7/12/2015Page 1 Process Scheduling B.Ramamurthy. 7/12/2015Page 2 Introduction An important aspect of multiprogramming is scheduling. The resources that.
1 Lecture 10: Uniprocessor Scheduling. 2 CPU Scheduling n The problem: scheduling the usage of a single processor among all the existing processes in.
Chapter 7 Memory Management
1 Lecture 8: Memory Mangement Operating System I Spring 2008.
1 CPU Scheduling & Deadlock Operating Systems Lecture 4.
Operating System Chapter 7. Memory Management Lynn Choi School of Electrical Engineering.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Basic Concepts Maximum CPU utilization.
CPU Scheduling Chapter 6 Chapter 6.
Chapter 6: CPU Scheduling
10CSE CPU Scheduling Copyrights Lecture Slides adapted from “ Advanced Operating Systems ”, Lecture Notes by Prof. Prof. Daniel Mosse, University Of Pittsburgh,
CS212: OPERATING SYSTEM Lecture 3: Process Scheduling 1.
Chapter 6 CPU SCHEDULING.
Memory Management Chapter 7.
Memory Management Operating Systems: Internals and Design Principles, 6/E William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Dr.
Chapter 7 Memory Management
Chapter 7 Memory Management Seventh Edition William Stallings Operating Systems: Internals and Design Principles.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 1 Introduction Read:
Memory Management. Roadmap Basic requirements of Memory Management Memory Partitioning Basic blocks of memory management –Paging –Segmentation.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 5: CPU Scheduling.
1 Memory Management Chapter 7. 2 Memory Management Subdividing memory to accommodate multiple processes Memory needs to be allocated to ensure a reasonable.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
1 Uniprocessor Scheduling Chapter 9. 2 Aim of Scheduling Response time Throughput Processor efficiency.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
1 Memory Management Chapter 7. 2 Memory Management Subdividing memory to accommodate multiple processes Memory needs to be allocated to ensure a reasonable.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 5: CPU Scheduling Basic.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 5 CPU Scheduling Slide 1 Chapter 5 CPU Scheduling.
Informationsteknologi Wednesday, October 3, 2007Computer Systems/Operating Systems - Class 121 Today’s class Memory management Virtual memory.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
Purpose of Operating System Part 2 Monil Adhikari.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Multiprocessor Systems Distributed.
Chapter 7 Memory Management Eighth Edition William Stallings Operating Systems: Internals and Design Principles.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
1 Uniprocessor Scheduling Chapter 3. 2 Alternating Sequence of CPU And I/O Bursts.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
2010INT Operating Systems, School of Information Technology, Griffith University – Gold Coast Copyright © William Stallings /2 Memory Management.
Basic Concepts Maximum CPU utilization obtained with multiprogramming
Chapter 7 Memory Management
Memory Management Chapter 7.
Operating Systems CPU Scheduling.
Chapter 6: CPU Scheduling
Chapter 5: CPU Scheduling
Introduction to Operating Systems
Introduction to Operating Systems
Operating System Chapter 7. Memory Management
Presentation transcript:

 Introduction, concepts, review & historical perspective  Processes ◦ Synchronization ◦ Scheduling ◦ Deadlock  Memory management, address translation, and virtual memory  Operating system management of I/O  File systems  Distributed systems (as time permits) CS 1550, cs.pitt.edu (originaly modified by Ethan L. Miller and Scott A. Brandt) Chapter 12

 A program that runs on the “raw” hardware and supports ◦ Resource Abstraction ◦ Resource Sharing  Abstracts and standardizes the interface to the user across different types of hardware ◦ Virtual machine hides the messy details which must be performed  Manages the hardware resources ◦ Each program gets time with the resource ◦ Each program gets space on the resource  May have potentially conflicting goals: ◦ Use hardware efficiently ◦ Give maximum performance to each user CS 1550, cs.pitt.edu (originaly modified by Ethan L. Miller and Scott A. Brandt) Chapter 13

 Goal: really large memory with very low latency ◦ Latencies are smaller at the top of the hierarchy ◦ Capacities are larger at the bottom of the hierarchy  Solution: move data between levels to create illusion of large memory with low latency Chapter 14 CS 1550, cs.pitt.edu (originaly modified by Ethan L. Miller and Scott A. Brandt) Access latency 1 ns 2–5 ns 50 ns 5 ms 50 sec < 1 KB 1 MB 256 MB 40 GB > 1 TB Capacity Registers Cache (SRAM) Main memory (DRAM) Magnetic disk Magnetic tape Better

 Process: program in execution ◦ Address space (memory) the program can use ◦ State (registers, including program counter & stack pointer)  OS keeps track of all processes in a process table  Processes can create other processes ◦ Process tree tracks these relationships ◦ A is the root of the tree ◦ A created three child processes: B, C, and D ◦ C created two child processes: E and F ◦ D created one child process: G Chapter 15 CS 1550, cs.pitt.edu (originaly modified by Ethan L. Miller and Scott A. Brandt) A B EF CD G

Chapter 16 Potential deadlock Actual deadlock

 Scheduling the processor among all ready processes  The goal is to achieve: ◦ High processor utilization ◦ High throughput  number of processes completed per of unit time ◦ Low response time  time elapsed from the submission of a request until the first response is produced

 Long-term: which process to admit?  Medium-term: which process to swap in or out?  Short-term: which ready process to execute next?

 The selection function determines which ready process is selected next for execution  The decision mode specifies the instants in time the selection function is exercised ◦ Nonpreemptive  Once a process is in the running state, it will continue until it terminates or blocks for an I/O ◦ Preemptive  Currently running process may be interrupted and moved to the Ready state by the OS  Prevents one process from monopolizing the processor

 First-Come, First-Served Scheduling  Shortest-Job-First Scheduling ◦ Also referred to as Shortest Process Next  Round-Robin Scheduling

Process Arrival Time Service Time Service time = total processor time needed in one (CPU-I/O) cycle Jobs with long service time are CPU-bound jobs and are referred to as “long jobs”

 Selection function: the process that has been waiting the longest in the ready queue (hence, FCFS)  Decision mode: non-preemptive ◦ a process runs until it blocks for an I/O

 Selection function: the process with the shortest expected CPU burst time ◦ I/O-bound processes will be selected first  Decision mode: non-preemptive  The required processing time, i.e., the CPU burst time, must be estimated for each process

Selection function: same as FCFS Decision mode: preemptive  a process is allowed to run until the time slice period (quantum, typically from 10 to 100 ms) has expired  a clock interrupt occurs and the running process is put on the ready queue

 Subdividing memory to accommodate multiple processes  Memory needs to be allocated to ensure a reasonable supply of ready processes to consume available processor time 17

18

 Equal-size partitions ◦ Any process whose size is less than or equal to the partition size can be loaded into an available partition ◦ If all partitions are full, the operating system can swap a process out of a partition ◦ A program may not fit in a partition. The programmer must design the program with overlays 19

 Main memory use is inefficient. Any program, no matter how small, occupies an entire partition. This is called internal fragmentation. 20

21

22

 Base register ◦ Starting address for the process  Bounds register ◦ Ending location of the process  These values are set when the process is loaded or when the process is swapped in 23

 Partition memory into small equal fixed- size chunks and divide each process into the same size chunks  The chunks of a process are called pages and chunks of memory are called frames  Operating system maintains a page table for each process ◦ Contains the frame location for each page in the process ◦ Memory address consist of a page number and offset within the page 24

25

26

27

 All segments of all programs do not have to be of the same length  There is a maximum segment length  Addressing consist of two parts - a segment number and an offset  Since segments are not equal, segmentation is similar to dynamic partitioning 28

29

 Logical ◦ Reference to a memory location independent of the current assignment of data to memory ◦ Translation must be made to the physical address  Relative ◦ Address expressed as a location relative to some known point  Physical ◦ The absolute address or actual location in main memory 30

31

32

 Symmetric multiprocessing (SMP) ◦ Each processor runs an identical copy of the operating system. ◦ Many processes can run at once without performance deterioration. ◦ Most modern operating systems support SMP  Asymmetric multiprocessing ◦ Each processor is assigned a specific task; master processor schedules and allocates work to slave processors. ◦ More common in extremely large systems

 Distribute the computation among several physical processors.  Loosely coupled system – each processor has its own local memory; processors communicate with one another through various communications lines, such as high- speed buses or telephone lines.  Advantages of distributed systems. ◦ Resources Sharing ◦ Computation speed up – load sharing ◦ Reliability ◦ Communications

 Definition: Tightly-coupled CPUs that do not share memory  Also known as ◦ cluster computers ◦ clusters of workstations (COWs) CS 1550, cs.pitt.edu (originaly modified from MOS2 slides by A. Tanenbaum)35

 Interconnection topologies (a) single switch (b) ring (c) grid (d) double torus (e) cube (f) hypercube CS 1550, cs.pitt.edu (originaly modified from MOS2 slides by A. Tanenbaum)36