page 1 2p13 week 9. page 2 table 9.2 scheduling criteria user oriented, performance related...
TRANSCRIPT
Page 1
2P13
Week 9
Page 2
Table 9.2 Scheduling CriteriaUser Oriented, Performance RelatedTurnaround time This is the interval of time between the submission of a process and its completion. Includes actual execution time plus time spent waiting for resources, including the processor. This is an appropriate measure for a batch job.Response time For an interactive process, this is the time from the submission of a request until the response begins to be received. Often a process can begin producing some output to the user while continuing to process the request. Thus, this is a better measure than turnaround time from the user's point of view. The scheduling discipline should attempt to achieve low response time and to maximize the number of interactive users receiving acceptable response time.Deadlines When process completion deadlines can be specified, the scheduling discipline should subordinate other goals to that of maximizing the percentage of deadlines met.User Oriented, OtherPredictability A given job should run in about the same amount of time and at about the same cost regardless of the load on the system. A wide variation in response time or turnaround time is distracting to users. It may signal a wide swing in system workloads or the need for system tuning to cure instabilities. System Oriented, Performance RelatedThroughput The scheduling policy should attempt to maximize the number of processes completed per unit of time. This is a measure of how much work is being performed. This clearly depends on the average length of a process but is also influenced by the scheduling policy, which may affect utilization.Processor utilization This is the percentage of time that the processor is busy. For an expensive shared system, this is a significant criterion. In single-user systems and in some other systems, such as real-time systems, this criterion is less important than some of the others.System Oriented, OtherFairness In the absence of guidance from the user or other system-supplied guidance, processes should be treated the same, and no process should suffer starvation.Enforcing priorities When processes are assigned priorities, the scheduling policy should favor higher-priority processes.Balancing resources The scheduling policy should keep the resources of the system busy. Processes that will underutilize stressed resources should be favored. This criterion also involves medium-term and long-term scheduling.
Page 3
Page 4
Table 9.4 Process Scheduling Example
Process Arrival Time Service Time
A 0 3
B 2 6
C 4 4
D 6 5
E 8 2
Page 5
Page 6
Page 7
Page 8
Page 9
Page 10
Table 10.1 Synchronization Granularity and Processes
Grain Size Description Synchronization Interval (Instructions)
Fine Parallelism inherent in a single instruction stream.
<20
Medium Parallel processing or multitasking within a single application
20-200
Coarse Multiprocessing of concurrent processes in a multiprogramming environment
200-2000
Very Coarse Distributed processing across network nodes to form a single computing environment
2000-1M
Independent Multiple unrelated processes not applicable
Page 11
Page 12
Features of Real-Time OS• Fast process or thread switch• Small size• Ability to respond to external interrupts quickly• MultiTasking with inter-process communication tools,
semaphores, signals, and events.• Use of special sequential files that can accumulate data
at a fast rate• Pre-emptive scheduling based on priority• Minimize duration interval when interrupts are disabled• Primitives to delay tasks for a fixed amount of time and
to pause/resume tasks• Special alarms and timeouts.
Page 13
Page 14
Page 15
• Real-time operating systems are designed with the objective of starting real-time tasks as rapidly as possible and emphasize rapid interrupt handling and task dispatching
• Real-time applications are generally not concerned with sheer speed but rather with completing (or starting) tasks at the most valuable times
• Priorities provide a crude tool and do not capture the requirement of completion (or initiation) at the most valuable time
Page 16
Page 17
Table 10.2
Execution Profile of Two Periodic Tasks
Process Arrival Time Execution Time Ending Deadline
A(1) 0 10 20
A(2) 20 10 40
A(3) 40 10 60
A(4) 60 10 80
A(5) 80 10 100
•••
•••
•••
•••
B(1) 0 25 50
B(2) 50 25 100
•••
•••
•••
•••
Page 18
Figure 10.5 Scheduling of Periodic Real-Time Tasks With Completion Deadlines (Based on
Table 10.2)
Page 19
Figure 10.6 Scheduling of Aperiodic Real-Time Tasks With Starting Deadlines
Page 20
Table 10.3
Execution Profile of Five Aperiodic Tasks
Process Arrival Time Execution Time Starting Deadline
A 10 20 110
B 20 20 20
C 40 20 50
D 50 20 90
E 60 20 70
Page 21Figure 10.7
Rate Monoton
ic Scheduli
ng
Page 22
Periodic Task Timing Diagram
Figure 10.8
Page 23
The End