Presentation is loading. Please wait.

Presentation is loading. Please wait.

Process Scheduling in Windows XP, Linux, and UNIX By Sarah G. Levinson CSC 4320.

Similar presentations


Presentation on theme: "Process Scheduling in Windows XP, Linux, and UNIX By Sarah G. Levinson CSC 4320."— Presentation transcript:

1 Process Scheduling in Windows XP, Linux, and UNIX By Sarah G. Levinson CSC 4320

2 Common Measures of Operating System Performance CPU Utilization Throughput Turnaround Time Response Time Wait Time

3 Other Important Factors “User-Perceived Performance”: This measure is concerned with how efficient the system seems to a human user. This deals less with overall efficiency and more with the time it takes for the user to see observable results of a response. Fairness: Processes that are similar are given similar access to system resources. The property of fairness is exemplified by the Round Robin scheduling algorithm.

4 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Traditional UNIX – Overall Efficiency, Fairness and User-Perceived Performance Multi-level feedback queue implementation is used, so processes with higher priority have first access to CPU time. Priority of a process is based on the type of process, where the swapper has highest priority and user processes have lowest priority.

5 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Traditional UNIX – Overall Efficiency, Fairness and User-Perceived Performance Round Robin algorithm is implemented within individual priority queues, and a process’s priority is decreased as it uses more CPU time. User programs that are processor-bound are penalized more than user programs that are I/O- bound.

6 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Modern UNIX – Real-Time Processing and Overall Efficiency Processes can be assigned one of three priority levels: Real Time, Kernel, or Time Shared. Real Time processes have the highest priority and may pre-empt processes at any other level, including kernel processes.

7 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Modern UNIX – Real-Time Processing and Overall Efficiency If multiple real-time processes are waiting to run, the highest-priority process is selected to run until it has exhausted its time quantum. If a higher-level process has not completed but is not currently in a running status, a process is selected from the highest-priority ready queue that is not empty.

8 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Modern UNIX – Real-Time Processing and Overall Efficiency The priorities of time shared processes are dynamically set by the OS. A process’s priority is lowered when it uses up a time quantum and raised it if blocks on an event or resource.

9 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Linux—Real-Time Processing and Fairness Linux uses two process scheduling algorithms: a real-time algorithm for processes that must be allowed to execute in a timely fashion, and a timesharing algorithm for all other processes. The Round Robin and FIFO scheduling algorithms are used to switch between real-time processes.

10 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Linux—Real-Time Processing and Fairness Timesharing algorithm is prioritized and “credit- based”. Credit-Based: When a new process must be selected, the process with the most credits is selected. A process that is running loses a credit every time the timer interrupt occurs. When a process has no more credits, it may not run.

11 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Linux—Real-Time Processing and Fairness Timesharing algorithm is prioritized and “credit- based”. Prioritized: When no processes have any remaining credits, the system re-assigns credits. Higher priority processes receive more credits.

12 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Linux—Real-Time Processing and Fairness Timesharing algorithm is prioritized and “credit- based”. This crediting system automatically prioritizes interactive and I/O-bound processes, which increases fairness and user-perceived performance.

13 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Windows XP – Real Time Processing and User- Perceived Performance Real time processes have the highest priority and can pre-empt any process with lower priority. System processes may be starved by real time processes because a process’s priority is never decreased.

14 The process scheduling algorithms used by an operating system reflect its primary performance objectives. Windows XP – Real Time Processing and User- Perceived Performance All processes receive a priority boost after a wait event, but processes that have experienced a keyboard I/O wait get a larger boost than those that have experienced a disk I/O wait. “Foreground” processes given higher priority.

15 Questions?


Download ppt "Process Scheduling in Windows XP, Linux, and UNIX By Sarah G. Levinson CSC 4320."

Similar presentations


Ads by Google