Принципы операционной системы Глава 12 Управление дисками

Принципы операционной системы для студентов бакалавриата Учебная запись
Учебная запись Семейная корзина

12.1 Состав диска

Диск: носитель для хранения данных; данные могут храниться с обеих сторон; это сам Лу, и он покрыт магнитным носителем.

Головка: читает и записывает данные, перемещается по радиусу диска

Шпиндель: с приводом от двигателя, вращение диска, фиксированная скорость вращения, 7200 об/мин 5400 об/мин

Состав тарелки:

Трек: круг, нарисованный магнитной головкой на поверхности пластины; нумерация начинается с «0» на внешнем краю пластины.

Сектор: Трасса разделена на дуги

Цилиндр: дорожки с одинаковым номером образуют цилиндр

12.2 Контроллеры дисков и интерфейсы

Интерфейс: ATA (последовательный интерфейс), SATA (последовательный интерфейс), USB, SCSI (параллельный интерфейс), SAS

Дисковый контроллер:

буфер:

12.3 Отношения сопоставления адресов

Номер блока: LBA

Адрес диска (CHS):

Цилиндр: дорожка цилиндра C

Голова: поверхность головы H

Сектор: Сектор S

SPT: максимальное количество секторов на дорожку

HPC: максимальное количество головок

12.4 Время доступа к диску

Скорость вращения диска: 60-250 об/мин

RPM: количество оборотов в минуту, например 7200 об/мин.

Время позиционирования:

Время поиска: время перемещения магнитного рычага на требуемую дорожку; среднее время поиска: 1/3 движения дорожки (1-4 мс)

Задержка вращения: время ожидания перехода сектора к головке; средний выбор времени 1/2 оборота: 1/(2*об/мин/60)

Время передачи:

Скорость передачи: общее количество переданных байтов / время передачи

12.5 Управление дисками

Низкоуровневое форматирование (физическое форматирование)

Разделите диск на сектора, чтобы контроллер диска мог читать и записывать

Разметка: разделите диск на разделы, основные разделы и расширенные разделы.

Расширенное форматирование: логическое форматирование, создание файловых систем

загрузочный блок: загрузочный сектор

12.6 Алгоритмы планирования дисков

Планирование дисков: чтобы сократить время доступа к диску

Время доступа: время поиска: время, необходимое головке, чтобы переместиться на дорожку, где осуществляется доступ к сектору.

​ Время задержки поворота: время поворота сектора доступа под головку

Время передачи: время отправки данных с диска в память

Допустим есть последовательность запросов (0-199 дорожек): 98, 183, 37, 122, 14, 124, 65, 67

Текущее положение магнитной головки 53

Цель: Минимальное расстояние движения головы и минимальное время поиска

В порядке живой очереди FCFS

Отправить посещения времени по запросу

Плюсы: простой, честный

Недостаток: долгое время поиска

Первый алгоритм кратчайшего времени поиска SSTF

Каждый раз переходить к треку, ближайшему к текущему положению

Плюсы: короткое расстояние поиска

Недостатки: есть голод, голова часто меняет направление движения, увеличивает время поиска

Алгоритм сканирования SCAN

Головка перемещается от одного конца диска к другому, попутно отвечая на служебные запросы.

Когда достигнут другой конец, головка меняет направление и сканирует диск вперед и назад.

Преимущества: сканирование в одном направлении, короткое время поиска

Недостатки: некоторые запросы требуют длительного ожидания.

Алгоритм циклического сканирования C-SCAN

Круговое сканирование

Односторонняя обработка запросов

  • Запросы обрабатываются, пока головка перемещается с внешней дорожки (дорожка 0) на внутреннюю дорожку.
  • Запрос не обрабатывается в процессе перехода с внутренней полосы на внешнюю

преимущество:

более равномерное время ожидания

Алгоритм циклического просмотра C-LOOK

Деформация C-SCAN

Головка перемещается только до самого дальнего запроса в одном направлении, а не доходит до конца диска.

Модульная работа МООК

1. Каковы составляющие времени доступа к диску? Как должен рассчитываться каждый неполный рабочий день?

‌ Состоит из времени произвольного доступа + времени передачи + служебного времени системы

Время произвольного доступа состоит из среднего времени поиска и задержки вращения.

Среднее время поиска: 1/3 движения дорожки Задержка вращения: Среднее время вращения 1/2 времени поворота 1/(2*об/мин/60)

Время передачи = общее количество переданных байтов / скорость передачи

2. Если текущее положение магнитной головки составляет 100 дорожек (всего 200 дорожек), магнитная головка перемещается в сторону увеличения номеров дорожек. Имеется очередь запросов на чтение и запись диска: 23, 132, 19, 61, 190, 29, 4, 18, 40. Если используются FCFS в порядке очереди, приоритет кратчайшего времени поиска SSTF, алгоритмы сканирования SCAN и C-SCAN, попробуйте вычислить среднюю длину поиска?

Первый пришел первый обслужен:

(100-23) + (132-23)+(132-19)+(61-19)+(190-61)+(190-29)+(29-4)+(18-4)+(40) -18)= 692

692/9 = 77 дорожек

Кратчайшее время поиска сначала:

132 - 100 + 190-132 + 190 - 61 + 61 - 40 + 40 - 29 + 29 - 23 + 23 -19 + 19-18 + 18 - 4 = 276

276/9 = 30,7 дорожек

Алгоритм сканирования:

132 - 100 + 190-132 + 190 - 61 + 61 - 40 + 40 - 29 + 29 - 23 + 23 -19 + 19-18 + 18 - 4 = 276

276/9 = 30,7 дорожек

С-СКАН:

132 - 100 + 190-132 + 4 - 0 + 18 - 4 + 19 -18 + 23 - 19 + 29 - 23 + 40 - 29 + 61 - 40 = 151

151/9 = 16,8 дорожек

3. Запросы на доступ к диску часто распределяются по диску неравномерно. Например, в файловой системе с индексированным размещением доступ к цилиндрам, содержащим индексные таблицы, осуществляется чаще, чем к цилиндрам, содержащим только содержимое файла. Предположим, вы знаете, что 50% запросов относятся к небольшому фиксированному количеству цилиндров. Итак, в этой ситуации, какой из алгоритмов планирования, обсуждаемых в этой главе, имеет лучшую производительность? Почему?

Лучше использовать алгоритм с наименьшим временем поиска.

Поскольку 50% запросов приходится на поиск небольшой части неподвижного цилиндра, расстояние между ними невелико, так что голова всегда может перемещаться вперед и назад в этой области, что меньше по сравнению с большими колебаниями Алгоритмы FCFS и сканирования ищут время.

4. На диске 8 пластин, на каждой пластине 200 дорожек, каждая дорожка разделена на 128 секторов. Прошу прощения:

‎1) Какова емкость этого диска?

8 * 2 * 200 * 128 * 512Б = 200МБ

2) Если время перемещения головки по дорожке составляет 0,02 мс, каково среднее время поиска этого диска?

‎Среднее время поиска: 200 * 0,02 / 3 = 1,33 мс.

Guess you like

Origin blog.csdn.net/weixin_45788387/article/details/122366640