Disk Scheduling: Difference between revisions

From Algorithm Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(One intermediate revision by the same user not shown)
Line 6: Line 6:
== Parameters ==  
== Parameters ==  


n: number of requests
$n$: number of requests


== Table of Algorithms ==  
== Table of Algorithms ==  
Line 16: Line 16:
|-
|-


| [[FCFS (Disk Scheduling Disk Scheduling)|FCFS]] || 1979 || $O(n)$ || $O({1})$ auxiliary || Exact || Deterministic ||   
| [[FCFS (Disk Scheduling Disk Scheduling)|FCFS]] || 1979 || $O(n)$ || $O({1})$ || Exact || Deterministic ||   
|-
|-
| [[SSTF (Disk Scheduling Disk Scheduling)|SSTF]] || 1979 || $O(n*log n)$ with binary tree || $O(n)$ auxiliary || Exact || Deterministic || [https://www.geeksforgeeks.org/program-for-sstf-disk-scheduling-algorithm/?ref=lbp Space]
| [[SSTF (Disk Scheduling Disk Scheduling)|SSTF]] || 1979 || $O(n \log n)$ with binary tree || $O(n)$ || Exact || Deterministic || [https://www.geeksforgeeks.org/program-for-sstf-disk-scheduling-algorithm/?ref=lbp Space]
|-
|-
| [[SCAN (Disk Scheduling Disk Scheduling)|SCAN]] || 1979 || $O(n*log n)$ || $O(n)$ auxiliary || Exact || Deterministic || [https://www.geeksforgeeks.org/scan-elevator-disk-scheduling-algorithms/?ref=lbp Space]
| [[SCAN (Disk Scheduling Disk Scheduling)|SCAN]] || 1979 || $O(n \log n)$ || $O(n)$ || Exact || Deterministic || [https://www.geeksforgeeks.org/scan-elevator-disk-scheduling-algorithms/?ref=lbp Space]
|-
|-
| [[LOOK (Disk Scheduling Disk Scheduling)|LOOK]] || 1979 || $O(n*log n)$ || $O(n)$ auxiliary || Exact || Deterministic ||   
| [[LOOK (Disk Scheduling Disk Scheduling)|LOOK]] || 1979 || $O(n \log n)$ || $O(n)$ || Exact || Deterministic ||   
|-
|-
| [[C-SCAN (Disk Scheduling Disk Scheduling)|C-SCAN]] || 1979 || $O(n*log n)$ || $O(n)$ auxiliary || Exact || Deterministic ||   
| [[C-SCAN (Disk Scheduling Disk Scheduling)|C-SCAN]] || 1979 || $O(n \log n)$ || $O(n)$ || Exact || Deterministic ||   
|-
|-
| [[C-LOOK (Disk Scheduling Disk Scheduling)|C-LOOK]] || 1979 || $O(n*log n)$ || $O(n)$ auxiliary || Exact || Deterministic ||   
| [[C-LOOK (Disk Scheduling Disk Scheduling)|C-LOOK]] || 1979 || $O(n \log n)$ || $O(n)$ || Exact || Deterministic ||   
|-
|-
|}
|}
Line 33: Line 33:


[[File:Disk Scheduling - Time.png|1000px]]
[[File:Disk Scheduling - Time.png|1000px]]
== Space Complexity Graph ==
[[File:Disk Scheduling - Space.png|1000px]]
== Time-Space Tradeoff ==
[[File:Disk Scheduling - Pareto Frontier.png|1000px]]

Latest revision as of 10:09, 28 April 2023

Description

When disk requests arrive at the disk device, they are queued for service and a disk scheduling algorithm is used to decide which of a waiting queue of disk requests to serve next.

Parameters

$n$: number of requests

Table of Algorithms

Name Year Time Space Approximation Factor Model Reference
FCFS 1979 $O(n)$ $O({1})$ Exact Deterministic
SSTF 1979 $O(n \log n)$ with binary tree $O(n)$ Exact Deterministic Space
SCAN 1979 $O(n \log n)$ $O(n)$ Exact Deterministic Space
LOOK 1979 $O(n \log n)$ $O(n)$ Exact Deterministic
C-SCAN 1979 $O(n \log n)$ $O(n)$ Exact Deterministic
C-LOOK 1979 $O(n \log n)$ $O(n)$ Exact Deterministic

Time Complexity Graph

Disk Scheduling - Time.png