- OS - Home
- OS - Needs
- OS - Overview
- OS - History
- OS - Components
- OS - Structure
- OS - Architecture
- OS - Services
- OS - Properties
- Process Management
- Operating System Processes
- Process Control Block
- Operations on Processes
- Inter Process Communication
- Context Switching
- Multi-threading
- Scheduling Algorithms
- Process Scheduling
- Preemptive and Non-Preemptive Scheduling
- Scheduling Algorithms Overview
- FCFS Scheduling Algorithm
- SJF Scheduling Algorithm
- Round Robin Scheduling Algorithm
- HRRN Scheduling Algorithm
- Priority Scheduling Algorithm
- Multilevel Queue Scheduling
- Lottery Scheduling Algorithm
- Turn Around Time & Waiting Time
- Burst Time in SJF Scheduling
- Process Synchronization
- Process Synchronization
- Critical Section Problem
- Critical Section Synchronization
- Mutual Exclusion Synchronization
- Semaphores
- Counting Semaphores
- Mutex
- Turn Variable
- Bounded Buffer Problem
- Reader Writer Locks
- Test and Set Lock
- Peterson's Solution
- Monitors
- Sleep and Wake
- Race Condition
- OS Deadlock
- Introduction to Deadlock
- Conditions for Deadlock
- Deadlock Handling
- Deadlock Prevention
- Deadlock Avoidance (Banker's Algorithm)
- Deadlock Detection and Recovery
- Deadlock Ignorance
- Memory Management
- Memory Management
- Contiguous Memory Allocation
- Non-Contiguous Memory Allocation
- First Fit Algorithm
- Next Fit Algorithm
- Best Fit Algorithm
- Worst Fit Algorithm
- Fragmentation
- Virtual Memory
- Segmentation
- Buddy System
- Slab Allocation
- Overlays
- Paging and Page Replacement
- Paging
- Demand Paging
- Page Table
- Page Replacement Algorithms
- Optimal Page Replacement Algorithm
- Belady's Anomaly
- Thrashing
- Storage and File Management
- File Systems
- File Attributes
- Structures of Directory
- Linked Index Allocation
- Indexed Allocation
- Disk Scheduling Algorithms
- FCFS Disk Scheduling
- SSTF Disk Scheduling
- SCAN Disk Scheduling
- LOOK Disk Scheduling
- I/O Systems
- I/O Hardware
- I/O Software
- OS Types
- OS - Types
- OS - Batch Processing
- OS - Multiprocessing
- OS - Hybrid
- OS - Monolithic
- OS - Zephyr
- OS - Nix
- OS - Linux
- OS - Blackberry
- OS - Garuda
- OS - Tails
- OS - Clustered
- OS - Haiku
- OS - AIX
- OS - Solus
- OS - Tizen
- OS - Bharat
- OS - Fire
- OS - Bliss
- OS - VxWorks
- OS - Embedded
- OS - Single User
- Miscellaneous Topics
- OS - Security
- OS Questions Answers
- OS - Questions Answers
- OS Useful Resources
- OS - Quick Guide
- OS - Useful Resources
- OS - Discussion
OS Process Scheduling Q & A #3
Question: What is Shortest Remaining Time, SRT scheduling?
Answer: Shortest Remaining Time, SRT is a preemptive scheduling. In SRT, the process with smallest runtime to complete (i.e remaining time) is scheduled to run next, including new arrivals. In SRT, a running process may be preempted by new process with shorter estimated run time. It keeps track of the elapsed service time of the running process and handles occasional preemption.
Consider the following 4 jobs
| Job | Arrival Time | Burst Time |
|---|---|---|
| 1 | 0 | 7 |
| 2 | 1 | 4 |
| 3 | 3 | 9 |
| 4 | 4 | 5 |
The schedule of the SRT is as follows:
Job1 is started at time 0, being only job in queue. Job 2 arrives at time 1. The remaining time for job 1 is larger (6 time units) than the time required by job2 (4 time units), so job 1 is preempted and job2 is scheduled. The average turnaround time for the above is:
| Job | Turn Around Time |
|---|---|
| 1 | 16-0 = 16 |
| 2 | 5-1 = 4 |
| 3 | 25-3 = 22 |
| 4 | 10-4 = 6 |
| 48 |
The average turnaround time is 48/4=12 time unit.
Advantage
Average turnaround time is less.
Disadvantage
Sometime a running process which is being almost completed is preempted because a new job with very small runtime arrives. It is not really worth doing.