Простой ответ заключается в том, что в наши дни все это происходит в контроллере привода.
В старые времена операционные системы обычно реализовывали дисковый ввод-вывод в два уровня. Наверху был независимый от дисков логический уровень. Это рассматривало диск как массив блоков. Ниже этого уровня находился физический уровень, на котором диски рассматривались как пластины, дорожки и сектора. Поскольку физические детали у разных дисков различались, физический уровень обычно реализовывался в драйвере устройства, специфичном для диска (или класса дисков).
В эти темные времена вам часто приходилось ждать, пока поставщик дисковода создаст новый драйвер устройства, прежде чем вы сможете обновить свою операционную систему.
В середине 1980-х стало обычным явлением, когда дисковые накопители обеспечивают логический интерфейс ввода/вывода. Драйвер устройства перестал видеть диски/пластины/сектора. Вместо этого он просто видел массив логических блоков. Диск позаботился о физическом расположении и перенаправлении поврежденных блоков (задачах, которые раньше выполняла операционная система). Это позволило одному драйверу устройства управлять несколькими типами устройств, используя один и тот же интерфейс и различаясь только количеством логических блоков.
В наши дни вам будет трудно найти диск, который не обеспечивает логический интерфейс.
Все алгоритмы планирования, связанные с физическим расположением, должны выполняться на жестком диске.
Если вы не занимаетесь проектированием дисковых накопителей, такие алгоритмы планирования совершенно бессмысленны. Если вы изучаете проектирование жестких дисков, ожидайте, что эта профессия скоро исчезнет.
person
user3344003
schedule
11.03.2018