2

The CFQ algorithm uses an ordered set of queues based on the I/O priority of the processes that made the requests. That means there's a queue for process of priority, let say, 1, another one for priority 2, etc. Then the requests are placed into a dispatch queue for being handle.

I understand that the algorithm takes the first request from each queue and place them into a dispatch queue for being handle, but I don't get how it handles a single request since they could have multiples blocks (not necessary contiguous).

So, the question is, how does the algorithm handles a single request?, by FCFS? or does it do some kind of sort for avoiding unnecessary head movements?

For example, let's say we have a request that contains the following list of blocks to read:

[1,23,5,76,3]

How would the disk handle this?

by FCFS:

[1,23,5,76,3]

or by sorting the blocks:

[1,3,4,23,76]
Jcao02
  • 121
  • 2

0 Answers0