Scheduling Policies and File Systems Operating Systems CS 550.

Slides:



Advertisements
Similar presentations
CS 149: Operating Systems February 3 Class Meeting
Advertisements

CH 5. CPU Scheduling Basic Concepts F CPU Scheduling  context switching u CPU switching for another process u saving old PCB and loading.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 17 Scheduling III.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 19 Scheduling IV.
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 Algorithms
Chapter 3: CPU Scheduling
Operating Systems 1 K. Salah Module 2.1: CPU Scheduling Scheduling Types Scheduling Criteria Scheduling Algorithms Performance Evaluation.
CS 311 – Lecture 23 Outline Kernel – Process subsystem Process scheduling Scheduling algorithms User mode and kernel mode Lecture 231CS Operating.
Scheduling in Batch Systems
Project 2 – solution code
CS 3013 & CS 502 Summer 2006 Scheduling1 The art and science of allocating the CPU and other resources to processes.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
CS 104 Introduction to Computer Science and Graphics Problems Operating Systems (2) Process Management 10/03/2008 Yang Song (Prepared by Yang Song and.
Wk 2 – Scheduling 1 CS502 Spring 2006 Scheduling The art and science of allocating the CPU and other resources to processes.
Operating Systems Process Scheduling (Ch 4.2, )
02/11/2004CSCI 315 Operating Systems Design1 CPU Scheduling Algorithms Notice: The slides for this lecture have been largely based on those accompanying.
Chapter 6: CPU Scheduling
Computer Architecture and Operating Systems CS 3230: Operating System Section Lecture OS-3 CPU Scheduling Department of Computer Science and Software Engineering.
CS3530 OPERATING SYSTEMS Summer 2014 Processor Scheduling Chapter 5.
Chapter 4 Processor Management
CS212: OPERATING SYSTEM Lecture 3: Process Scheduling 1.
Chapter 6 CPU SCHEDULING.
More Scheduling cs550 Operating Systems David Monismith.
Scheduling Chap 2. Scheduling Introduction to Scheduling (1) Bursts of CPU usage alternate with periods of I/O wait –a CPU-bound process –an I/O bound.
Round Robin Scheduling A preemptive scheduling designed for Time Sharing Systems The Ready Queue is treated as a circular queue A small execution.
Scheduling. Alternating Sequence of CPU And I/O Bursts.
CPU Scheduling CSCI 444/544 Operating Systems Fall 2008.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
Alternating Sequence of CPU And I/O Bursts. Histogram of CPU-burst Times.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Lecture 7: CPU Scheduling Chapter 5.
Lecture 7: Scheduling preemptive/non-preemptive scheduler CPU bursts
Chapter 5 Processor Scheduling Introduction Processor (CPU) scheduling is the sharing of the processor(s) among the processes in the ready queue.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
Chapter 5: Process Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Basic Concepts Maximum CPU utilization can be obtained.
Operating Systems 1 K. Salah Module 2.2: CPU Scheduling Scheduling Types Scheduling Criteria Scheduling Algorithms Performance Evaluation.
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.
ITFN 2601 Introduction to Operating Systems Lecture 4 Scheduling.
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.
Lecture Topics: 11/15 CPU scheduling: –Scheduling goals and algorithms.
CS333 Intro to Operating Systems Jonathan Walpole.
1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
CPU Scheduling Operating Systems CS 550. Last Time Deadlock Detection and Recovery Methods to handle deadlock – Ignore it! – Detect and Recover – Avoidance.
Process Scheduling Schedulers and Scheduling Methods.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Lecture 4 CPU scheduling. Basic Concepts Single Process  one process at a time Maximum CPU utilization obtained with multiprogramming CPU idle :waiting.
CPU scheduling.  Single Process  one process at a time  Maximum CPU utilization obtained with multiprogramming  CPU idle :waiting time is wasted 2.
1 Module 5: Scheduling CPU Scheduling Scheduling Algorithms Reading: Chapter
Basic Concepts Maximum CPU utilization obtained with multiprogramming
1 Lecture 5: CPU Scheduling Operating System Fall 2006.
Lecturer 5: Process Scheduling Process Scheduling  Criteria & Objectives Types of Scheduling  Long term  Medium term  Short term CPU Scheduling Algorithms.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
INTRO TO PROCESS SCHEDULING Module 2.4 COP4600 – Operating Systems Richard Newman.
OPERATING SYSTEMS CS 3502 Fall 2017
CPU SCHEDULING.
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
Priority Scheduling Example
Chapter 2 Scheduling.
Lecture 24: Process Scheduling Examples and for Real-time Systems
Process management Information maintained by OS for process management
CPU Scheduling G.Anuradha
Chapter 6: CPU Scheduling
Chapter 5: CPU Scheduling
Operating System Concepts
Chapter5: CPU Scheduling
Chapter 5: CPU Scheduling
Process Management Scheduling
CPU Scheduling: Basic Concepts
Presentation transcript:

Scheduling Policies and File Systems Operating Systems CS 550

Last lecture Review of Round Robin (RR) and Shortest Remaining Time First (SRTF) – Examples and Performance Dynamic Priority Scheduling – Description – Heuristic algorithm

This time Longest Job First Real-time scheduling Multi-level scheduling Multiprocessor scheduling A start on file systems

Longest Job First (LJF) Same concept as SJF except using the longest job first Uses a priority queue Non-preemptive, not fair compared to FCFS Example with five processes having CPU burst times of 148ms, 135ms, 125ms, 102ms, and 56ms P1P2P3P4P5

Real-time (RT) scheduling RT systems continuously interact with external environment Behavior defined by timing constraints Want fast response to high priority RT processes Processes have deadline requirements – Must complete service before deadline expires

RT Scheduling Could be periodic or sporadic – Periodic starts every p time units Has computation time requirement c and deadline d – Sporadic spurred by random event Must start and complete before deadline 2 policies exist – Rate Monotonic Scheduling Process priorities assigned statically in reverse order of period length Higher priority for shorter periods – Earliest Deadline First Priorities assigned statically or dynamically Processes with earlier deadlines given higher priorities

Multilevel Queues and Multiple Processors May have several classes of processes in multiclass systems with different priorities Use priority scheduling that can be either preemptive or non-preemptive Need multilevel queues because each category of process needs its own queue For example, batch processes may need one queue while interactive processes may need another queue

Multiple Processors, Single Queue Scheduler

Multiple Processors, Multiple Queue Scheduler

File Management and IO OS must allow users to – Store data in files – Find and use previously created files File management subsystem provides this service – May be quite simple – Typically utilizes a tree structure File – sequence of bytes stored on a device (e.g. HDD) on the computer File management system often does not know how the file is stored – Application dependent

File Management Basics OS may have its own files for which it knows the structure – Swap file (used by memory manager) – Audit log (used to keep track of system errors, etc.) – Management systems for these files often know about the structures of the files they create

Memory Basics Computer has volatile and non-volatile memory Volatile – contents lost if power is lost – Cache – Main memory (RAM) Non-volatile – contents retained even without power – HDD – Flash memory – CD/DVD/Blu-ray

File Management Details Basic file mechanisms – File name – Folders/directories (groups of files) File attributes (aside from file name) – Size – amount of data stored – Location – where stored on computer – Type – what type of data Usually denoted with file extension Often have file associations to denote what program to execute when opening a file – Permissions – who can use the file What can users do with the file Read/write/executerwxrwxrwx on Unix/Linux Refers to owner, group, and world – Timestamp – when the file was created

File Management Details Continued Attributes stored in folder containing the file data Data stored as a directory entry Pathnames – how to find file in directory tree – /usr/local/openmpi – C:\Program Files\...

File IO Access methods – Sequential – Random (i.e. direct) Process operations on files – Read – Write – Open – Close

Opening and Closing Files Open – OS must search for file – Ex. fopen in C, Scanner and File classes in Java Close – Close files when finished with them – Need to tell OS we are finished otherwise problems may occur – Ex. fclose in C and.close() methods in Java

Reading from Files Which file? Where is the data within the file? Where in the memory space of the process should the file be stored? How much data to read?

Writing to Files Again, which file? Does it exist? Where should the data be stored within the file? Where is the data buffer? How much data to write