Что такое диск лекция
Операционные системы копия 1
1.1 Аппаратная часть дисков
1.1.1 Магнитные диски
Демонстрация работы жесткого диска
Устройство жесткого диска с IDE разъемом
Продольная (верхний рисунок) и перпендикулярная (нижний рисунок) запись информации на диске
Примерно с 2005 года идет переход с продольной на перпендикулярную запись информации на диске, что обеспечивает большую плотность записи данных.
С 2011-2013 планируется переход на «тепловую магнитную запись», место записи будет предварительно нагреваться лазером, что уменьшит размер домена и повысит надежность хранения. Предположительная максимальная емкость от 30 до 50 ТБ.
Дорожки, цилиндры, сектора, головки
У современных жестких дисков контроллер встроен в само устройство, и берет на себя большую часть работы, которую не видит ОС.
Например, скрывают физическую геометрию диска, предоставляя виртуальную геометрии.
Физическая и виртуальная геометрия диска
На внешних дорожках число секторов делают больше, а на внутренних меньше. На реальных дисках таких зон может быть несколько десятков.
Для увеличения производительности или надежности операций ввода-вывода с диском был разработан стандарт для распараллеливания или дублирования этих операций
Основные шесть уровней RAID:
На практике, как правило, используют RAID 0, 1 и 5.
Системы RAID уровней от 0 до 5.
Фото устройства для работы с дисками
Устройство в работе
Демонстрация работы CD-drive
Запись на CD-ROM диски производятся с помощью штамповки.
CD-ROM под электронным микроскопом.
Длина пита варьируется от 850 нм до 3,5 мкм
Сначала CD-диски использовались только для записи звука, стандарт которого был описан ISO 10149 («Красная книга«).
Запись на CD-ROM производится спирально
В 1984 году была опубликована «Желтая книга«, в которой описан следующий стандарт.
Для записи данных было необходимо повысить надежность, для этого каждый байт (8 бит) стали кодировать в 14 разрядное число (по размеру почти дублирование записи, но за счет кодирования эффективность может быть, как при тройной записи), чтобы можно было восстановить потерянные биты.
Логическое расположение данных на CD-ROM для режима 1
Первые 12-ть байт заголовка содержат 00FFFFFFFFFFFFFFFFFFFF00, чтобы считывающее устройство могло распознать начало сектора.
Следующие три байта содержат номер сектора.
Последний байт содержит код режима
В режиме 2 поле данных объединено с полем ECC в 2336-байтное поле данных. Этот режим можно использовать, если не требуется коррекция ошибок, например, видео и аудио запись.
Коррекция ошибок осуществляется на трех уровнях:
Поэтому 7203 байта содержат только 2048 байта полезной нагрузки, около 28%.
В 1986 году была выпущена «Зеленая книга«, к стандарту была добавлена графика, и возможность совмещения в одном секторе аудио, видео и данных.
Файловая система имеет три уровня:
Для этого стандарта существуют расширения:
1.1.3.1 Компакт-диски с возможностью записи CD-R
Запись на CD-R диски производятся с помощью локального прожигания нанесенного слоя красителя.
Используются лазеры с двумя уровнями разной мощности, для записи 8-16 мВт, для чтения 0.5 мВт.
Каждая запись производится за одну непрерывную операцию, поэтому если у вас будет слишком загружен компьютер (мало памяти или медленный диск), то вы можете испортить диск, т.к. данные не будут поспевать поступать на CD-ROM.
1.1.3.2 Многократно перезаписываемые компакт-диски CD-RW
Запись на CD-RW диски производятся локального перевода слоя из кристаллического в аморфное состояние.
Используются лазеры с тремя уровнями разной мощности.
Эти диски можно отформатировать (UDF), использовать их в место дискет и дисков.
1.1.3.3 Универсальный цифровой диск DVD (Digital Versatile Disk)
Были сделаны следующие изменения:
Размер пита уменьшили в два раза (с 0.8 мкм до 0.4мкм)
Более тугая спираль (0.74 мкм между дорожками, вместо 1.6 у компакт-дисков)
Уменьшение длины волны лазера (650 нм вместо 780 нм)
Это позволило увеличить объем с 650 Мбайт до 4.7 Гбайт.
Определены четыре следующих формата:
Односторонний, одноуровневый (4.7 Гбайт)
Односторонний, двухуровневый (8.5 Гбайт), размеры пита второго уровня приходится делать больше, иначе не будут считаны, т.к. первый полуотражающий слой половину потока отразит и частично рассеет.
Двухсторонний, одноуровневый (9.4 Гбайт)
Двухсторонний, двухуровневый (17 Гбайт)
1.1.3.4 Универсальный цифровой диск Blu-ray (blue ray — синий)
Были сделаны следующие изменения:
Размер пита уменьшили
Более тугая спираль ( 0,32 мкм между дорожками, вместо 0.72 у DVD)
Уменьшение длины волны лазера (405 нм вместо 650 нм в DVD), «синего» (технически сине-фиолетового) лазера, отсюда и название
Определены следующие формата:
однослойный диск 23,3/25/27 или 33 Гб
двухслойный диск 46,6/50/54 или 66 Гб
четырёх слойный 100 Гб
восьми слойный 200 Гб
Устройство ячейки памяти:
Используются полевые транзисторы с плавающим затвором.
Устройство ячейки памяти
Считывание информации:
Если ток через npn-переход идет, то «считывается 0».
Ток идет за счет туннельного эффекта, который возникает под действием управляющего затвора, на который подается «+».
Если ток через npn-переход не идет, то «считывается 1».
Ток не идет за счет «экранирования» управляющего затвора плавающим затвором, на котором накоплен «-«.
Запись информации:
«Запись» делается накоплением электронов в плавающем затворе, за счет повышенного напряжения на управляющем затворе и стоке.
Затирание информации:
«Затирание» делается «изъятием» электронов из плавающего затворе, за счет положительного напряжения на истоке и отрицательного на управляющем затворе, но стоке 0В.
1.2 Форматирование дисков (программная часть)
1.2.1 Низкоуровневое форматирование
Каждый сектор состоит из:
Область данных (как правило, 512 байт, планируют перейти на 4 Кб (к 2010г.))
На диске могут быть запасные сектора, которые могут быть использованы для замены секторов с дефектами (а они почти всегда есть). За счет этого обеспечивается одинаковая емкость на выходе.
При низкоуровневом форматировании часть полезного объема уменьшается, примерно до 80%.
Перекос цилиндров делают разным в зависимости скоростей вращения и перемещения головок.
Если, например, один сектор прочитан, а для второго нет в буфере места, пока данные копируются из буфера в память, второй сектор уже проскочит головку.
Чтобы этого не случилось, применяют чередование секторов.
Если копирование очень медленное, может применяться двукратное чередование, или больше.
После низкоуровневого форматирования диск разбивается на разделы, эти разделы воспринимаются ОС как отдельные диски.
Для чего можно использовать разделы:
Отделить системные файлы от пользовательских (например, своп-файлы)
Более эффективно использовать пространство (например, для администрирования).
На разные разделы можно установить разные ОС.
Основные разделы диска:
Информация о разделах записывается в 0-м секторе 0-го цилиндра, головка 0. И называется таблицей разделов.
Этот сектор называется главной загрузочной записью.
Пример структуры разделов
В Windows разделы будут называться (для пользователей) устройствами C:, D:, E: и т.д.
1.2.3 Высокоуровневое форматирование
Создает загрузочный сектор (Boot Sector)
Создает список свободных блоков (для UNIX) или таблицу (ы) размещения файлов (для FAT или NTFS)
Создает корневой каталог
Создает, пустую файловую систему
Указывает, какая файловая система
Помечает дефектные кластеры
При загрузке системы, происходит следующее:
BIOS считывает главную загрузочную запись, и передает ей управление
Загрузочная программа определяет, какой раздел активный
Из этого раздела считывается и запускается загрузочный сектор
Программа загрузочного сектора находит в корневом каталоге определенный файл (загрузочный файл)
Этот файл загружается в память и запускается (ОС начинает загрузку)
1.3 Алгоритмы планирования перемещения головок
Факторы, влияющие на время считывания или записи на диск:
Время поиска (время перемещения головки на нужный цилиндр)
Время переключения головок
Задержка вращения (время, требуемое для поворота нужного сектора под головку)
Время передачи данных
Для большинства дисков самое большое, это время поиска. Поэтому, оптимизируя время поиска можно существенно повысить быстродействие.
Алгоритмы могут быть реализованы в контроллере, в драйверах, в самой ОС.
Рассмотрим пример. Пусть у нас на диске из 28 цилиндров (от 0 до 27) есть следующая очередь запросов:
и головки в начальный момент находятся на 1 цилиндре. Тогда положение головок будет меняться следующим образом:
Как видно алгоритм не очень эффективный, но простой в реализации.
1.3.2 Алгоритм короткое время поиска первым (или ближайший цилиндр первым) SSF (Shortest Seek First)
Для предыдущего примера алгоритм даст следующую последовательность положений головок:
Как видим, этот алгоритм более эффективен. Но у него есть не достаток, если будут поступать постоянно новые запросы, то головка будет всегда находиться в локальном месте, вероятнее всего в средней части диска, а крайние цилиндры могут быть не обслужены никогда.
1.3.3 Алгоритмы сканирования (SCAN, C-SCAN, LOOK, C-LOOK)
SCAN – головки постоянно перемещаются от одного края диска до его другого края, по ходу дела обслуживая все встречающиеся запросы. Просто, но не всегда эффективно.
1.4 Обработка ошибок
Т.к. создать диск без дефектов сложно, а вовремя использования появляются новые дефекты.
Поэтому системе приходится контролировать и исправлять ошибки.
Ошибки могут быть обнаружены на трех уровнях:
На уровне дефектного сектора ECC (используются запасные, делает сам производитель)
Дефектные блоки или кластеры могут обрабатываться контроллером или самой ОС.
Блоки и кластеры не должны содержать дефектные сектора, поэтому система должна уметь помечать дефектные сектора.
1.1 Аппаратная часть дисков
1.1.1 Магнитные диски
Демонстрация работы жесткого диска
Устройство жесткого диска с IDE разъемом
Продольная (верхний рисунок) и перпендикулярная (нижний рисунок) запись информации на диске
Примерно с 2005 года идет переход с продольной на перпендикулярную запись информации на диске, что обеспечивает большую плотность записи данных.
С 2011-2013 планируется переход на «тепловую магнитную запись», место записи будет предварительно нагреваться лазером, что уменьшит размер домена и повысит надежность хранения. Предположительная максимальная емкость от 30 до 50 ТБ.
Дорожки, цилиндры, сектора, головки
У современных жестких дисков контроллер встроен в само устройство, и берет на себя большую часть работы, которую не видит ОС.
Например, скрывают физическую геометрию диска, предоставляя виртуальную геометрии.
Физическая и виртуальная геометрия диска
На внешних дорожках число секторов делают больше, а на внутренних меньше. На реальных дисках таких зон может быть несколько десятков.
Для увеличения производительности или надежности операций ввода-вывода с диском был разработан стандарт для распараллеливания или дублирования этих операций
Основные шесть уровней RAID:
На практике, как правило, используют RAID 0, 1 и 5.
Системы RAID уровней от 0 до 5.
Фото устройства для работы с дисками
Устройство в работе
Демонстрация работы CD-drive
Запись на CD-ROM диски производятся с помощью штамповки.
CD-ROM под электронным микроскопом.
Длина пита варьируется от 850 нм до 3,5 мкм
Сначала CD-диски использовались только для записи звука, стандарт которого был описан ISO 10149 («Красная книга«).
Запись на CD-ROM производится спирально
В 1984 году была опубликована «Желтая книга«, в которой описан следующий стандарт.
Для записи данных было необходимо повысить надежность, для этого каждый байт (8 бит) стали кодировать в 14 разрядное число (по размеру почти дублирование записи, но за счет кодирования эффективность может быть, как при тройной записи), чтобы можно было восстановить потерянные биты.
Логическое расположение данных на CD-ROM для режима 1
Первые 12-ть байт заголовка содержат 00FFFFFFFFFFFFFFFFFFFF00, чтобы считывающее устройство могло распознать начало сектора.
Следующие три байта содержат номер сектора.
Последний байт содержит код режима
В режиме 2 поле данных объединено с полем ECC в 2336-байтное поле данных. Этот режим можно использовать, если не требуется коррекция ошибок, например, видео и аудио запись.
Коррекция ошибок осуществляется на трех уровнях:
Поэтому 7203 байта содержат только 2048 байта полезной нагрузки, около 28%.
В 1986 году была выпущена «Зеленая книга«, к стандарту была добавлена графика, и возможность совмещения в одном секторе аудио, видео и данных.
Файловая система имеет три уровня:
Для этого стандарта существуют расширения:
1.1.3.1 Компакт-диски с возможностью записи CD-R
Запись на CD-R диски производятся с помощью локального прожигания нанесенного слоя красителя.
Используются лазеры с двумя уровнями разной мощности, для записи 8-16 мВт, для чтения 0.5 мВт.
Каждая запись производится за одну непрерывную операцию, поэтому если у вас будет слишком загружен компьютер (мало памяти или медленный диск), то вы можете испортить диск, т.к. данные не будут поспевать поступать на CD-ROM.
1.1.3.2 Многократно перезаписываемые компакт-диски CD-RW
Запись на CD-RW диски производятся локального перевода слоя из кристаллического в аморфное состояние.
Используются лазеры с тремя уровнями разной мощности.
Эти диски можно отформатировать (UDF), использовать их в место дискет и дисков.
1.1.3.3 Универсальный цифровой диск DVD (Digital Versatile Disk)
Были сделаны следующие изменения:
Размер пита уменьшили в два раза (с 0.8 мкм до 0.4мкм)
Более тугая спираль (0.74 мкм между дорожками, вместо 1.6 у компакт-дисков)
Уменьшение длины волны лазера (650 нм вместо 780 нм)
Это позволило увеличить объем с 650 Мбайт до 4.7 Гбайт.
Определены четыре следующих формата:
Односторонний, одноуровневый (4.7 Гбайт)
Односторонний, двухуровневый (8.5 Гбайт), размеры пита второго уровня приходится делать больше, иначе не будут считаны, т.к. первый полуотражающий слой половину потока отразит и частично рассеет.
Двухсторонний, одноуровневый (9.4 Гбайт)
Двухсторонний, двухуровневый (17 Гбайт)
1.1.3.4 Универсальный цифровой диск Blu-ray (blue ray — синий)
Были сделаны следующие изменения:
Размер пита уменьшили
Более тугая спираль ( 0,32 мкм между дорожками, вместо 0.72 у DVD)
Уменьшение длины волны лазера (405 нм вместо 650 нм в DVD), «синего» (технически сине-фиолетового) лазера, отсюда и название
Определены следующие формата:
однослойный диск 23,3/25/27 или 33 Гб
двухслойный диск 46,6/50/54 или 66 Гб
четырёх слойный 100 Гб
восьми слойный 200 Гб
Устройство ячейки памяти:
Используются полевые транзисторы с плавающим затвором.
Устройство ячейки памяти
Считывание информации:
Если ток через npn-переход идет, то «считывается 0».
Ток идет за счет туннельного эффекта, который возникает под действием управляющего затвора, на который подается «+».
Если ток через npn-переход не идет, то «считывается 1».
Ток не идет за счет «экранирования» управляющего затвора плавающим затвором, на котором накоплен «-«.
Запись информации:
«Запись» делается накоплением электронов в плавающем затворе, за счет повышенного напряжения на управляющем затворе и стоке.
Затирание информации:
«Затирание» делается «изъятием» электронов из плавающего затворе, за счет положительного напряжения на истоке и отрицательного на управляющем затворе, но стоке 0В.
1.2 Форматирование дисков (программная часть)
1.2.1 Низкоуровневое форматирование
Каждый сектор состоит из:
Область данных (как правило, 512 байт, планируют перейти на 4 Кб (к 2010г.))
На диске могут быть запасные сектора, которые могут быть использованы для замены секторов с дефектами (а они почти всегда есть). За счет этого обеспечивается одинаковая емкость на выходе.
При низкоуровневом форматировании часть полезного объема уменьшается, примерно до 80%.
Перекос цилиндров делают разным в зависимости скоростей вращения и перемещения головок.
Если, например, один сектор прочитан, а для второго нет в буфере места, пока данные копируются из буфера в память, второй сектор уже проскочит головку.
Чтобы этого не случилось, применяют чередование секторов.
Если копирование очень медленное, может применяться двукратное чередование, или больше.
После низкоуровневого форматирования диск разбивается на разделы, эти разделы воспринимаются ОС как отдельные диски.
Для чего можно использовать разделы:
Отделить системные файлы от пользовательских (например, своп-файлы)
Более эффективно использовать пространство (например, для администрирования).
На разные разделы можно установить разные ОС.
Основные разделы диска:
Информация о разделах записывается в 0-м секторе 0-го цилиндра, головка 0. И называется таблицей разделов.
Этот сектор называется главной загрузочной записью.
Пример структуры разделов
В Windows разделы будут называться (для пользователей) устройствами C:, D:, E: и т.д.
1.2.3 Высокоуровневое форматирование
Создает загрузочный сектор (Boot Sector)
Создает список свободных блоков (для UNIX) или таблицу (ы) размещения файлов (для FAT или NTFS)
Создает корневой каталог
Создает, пустую файловую систему
Указывает, какая файловая система
Помечает дефектные кластеры
При загрузке системы, происходит следующее:
BIOS считывает главную загрузочную запись, и передает ей управление
Загрузочная программа определяет, какой раздел активный
Из этого раздела считывается и запускается загрузочный сектор
Программа загрузочного сектора находит в корневом каталоге определенный файл (загрузочный файл)
Этот файл загружается в память и запускается (ОС начинает загрузку)
1.3 Алгоритмы планирования перемещения головок
Факторы, влияющие на время считывания или записи на диск:
Время поиска (время перемещения головки на нужный цилиндр)
Время переключения головок
Задержка вращения (время, требуемое для поворота нужного сектора под головку)
Время передачи данных
Для большинства дисков самое большое, это время поиска. Поэтому, оптимизируя время поиска можно существенно повысить быстродействие.
Алгоритмы могут быть реализованы в контроллере, в драйверах, в самой ОС.
Рассмотрим пример. Пусть у нас на диске из 28 цилиндров (от 0 до 27) есть следующая очередь запросов:
и головки в начальный момент находятся на 1 цилиндре. Тогда положение головок будет меняться следующим образом:
Как видно алгоритм не очень эффективный, но простой в реализации.
1.3.2 Алгоритм короткое время поиска первым (или ближайший цилиндр первым) SSF (Shortest Seek First)
Для предыдущего примера алгоритм даст следующую последовательность положений головок:
Как видим, этот алгоритм более эффективен. Но у него есть не достаток, если будут поступать постоянно новые запросы, то головка будет всегда находиться в локальном месте, вероятнее всего в средней части диска, а крайние цилиндры могут быть не обслужены никогда.
1.3.3 Алгоритмы сканирования (SCAN, C-SCAN, LOOK, C-LOOK)
SCAN – головки постоянно перемещаются от одного края диска до его другого края, по ходу дела обслуживая все встречающиеся запросы. Просто, но не всегда эффективно.
1.4 Обработка ошибок
Т.к. создать диск без дефектов сложно, а вовремя использования появляются новые дефекты.
Поэтому системе приходится контролировать и исправлять ошибки.
Ошибки могут быть обнаружены на трех уровнях:
На уровне дефектного сектора ECC (используются запасные, делает сам производитель)
Дефектные блоки или кластеры могут обрабатываться контроллером или самой ОС.
Блоки и кластеры не должны содержать дефектные сектора, поэтому система должна уметь помечать дефектные сектора.