23. Организация на входа и изхода и планиране (разписание) на диска
Разписание на диска. RAID. Дисков кеш.

11.5. Разписание на диска
** Параметри на работа на диска:
--- FIGURE 11.7 ---
 -- Време за търсене (Seek Time);
 -- Закъснение при въртене (Rotational Delay);
 -- Време за прехвърляне (Transfer Time);
 -- Сравнения.
Пример: Диск с:
    - рекламирана скорост на търсене (seek time) 20 ms;
    - скорост на пренасяне (transfer rate) 1MB/s;
    - 512-байтови сектори (sectors) с 32 сектора в пътечка (track).
  Заявка за четене на файл от 128K байта, значи 256 сектора.
А. Предполагаме, че файлът е разположен на последователни сектори.
 

За първата пътечка имаме: 
Време за достъп  20 ms
Закъснение при въртене  8.3 ms
Четене на 32 сектора 16.7  ms
Общо 45 ms
За следващите пътечки имаме: 
Закъснение при въртене  8.3 ms
Четене на 32 сектора 16.7  ms
Общо 25 ms
Получаваме всичко 45 + 7x25 = 220 ms = 0.22 s

Б. Предполагаме, че файлът е разположен на случайни сектори на диска.
За всеки сектор имаме:

Време за достъп  20 ms
Закъснение при въртене  8.3 ms
Четене на 1 сектор 0.5  ms
Общо 28.8 ms
Получаваме всичко 256x28.8 = 7373 ms =7.37 s
    Разположението на секторите на файла върху диска има голям ефект за скоростта на достъп до файла.

** Политика при разписания на диска:
  -- приоритет;
  -- случайно (random);
  -- опашка (FIFO);
  -- стек (LIFO);
  -- най-малко време за обслужване (Shortest Service Time First - SSTF);
  -- SCAN;
  -- C-SCAN;
  -- N стъпки SCAN и FeedbackSCAN.
 

FIFO 
(starting at track 100)
SSTF 
(starting at track 100)
SCAN (starting at track 100, forward) C-SCAN (starting at track 100, forward)
 
Next track accessed Number of tracks trasfered
55 
58 
39 
18 
90 
160 
150 
38 
184
45 

19 
21 
72 
70 
10 
112 
146
Average seek length 55.3
 
Next track accessed Number of tracks trasfered
90 
58 
55 
39 
38 
18 
150 
160 
184
10 
32 

16 

20 
132 
10 
24
Average seek length 27.5
 
Next track accessed Number of tracks trasfered
150 
160 
184 
90 
58 
55 
39 
38 
18
50 
10 
24 
94 
32 

16 

20
Average seek length 27.8
 
Next track accessed Number of tracks trasfered
150 
160 
184 
18 
38 
39 
55 
58 
90
50 
10 
24 
166 
20 

16 

32
Average seek length 35.8



11.6. RAID (Redundant Array of Independent Disks).
"Масив от независими дискове с излишен капацитет"

    1. RAID  е множество от физически дискови устройства, което се "вижда" от ОС като един логически диск.
    2. Данните са разпределени между физическите дискове във вид на масив.
    3. Излишният капацитет на дисковете се използва за съхраняване на допълнителна информация (parity), която гарантира възстановяването на данните при повреда на един (или няколко) от физическите дискове.

--- FIGURE 11.9a ---       --- FIGURE 11.9b ---
--- FIGURE 11.10 ---