Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kratko.docx
Скачиваний:
57
Добавлен:
01.04.2022
Размер:
2.04 Mб
Скачать

38. Многослойная модель подсистемы ввода-вывода.

Важной функцией менеджера ввода-вывода является создание некоторой среды для остальных компонентов подсистемы, которая бы облегчала их взаимодействие друг с другом. Эта задача может быть решена за счет создания некоторого стандартного внутреннего интерфейса взаимодействия модулей ввода-вывода между собой, который бы дополнял внешние интерфейсы подсистемы с прикладными процессами, другими модулями ядра и аппаратурой. Наличие такого интерфейса существенно облегчает включение новых драйверов и файловых систем в состав ОС.

Функции буферизации данных и синхронизация нескольких модулей между собой при обмене данными берет на себя менеджер ввода-вывода. Еще одной функцией менеджера ввода-вывода является организация взаимодействия модулей ввода-вывода с модулями других подсистем ОС, таких как подсистема управления процессами, виртуальной памятью и другими.

Драйвер вместе с контроллером устройства и прикладной программой воплощали идею многослойного подхода к организации программного обеспечения. Контроллер представлял нижний слой управления устройством, выполняющий операции в терминах блоков и агрегатов устройства. Вместо того чтобы концентрировать все функции по управлению устройством в одном программном модуле, во многих случаях гораздо эффективней распределить их между несколькими модулями в соседних слоях иерархии. Традиционные драйверы стали называть аппаратными драйверами, низкоуровневыми драйверами, или драйверами устройств. При таком подходе повышается гибкость и расширяемость функций по управлению устройством. Единственным отличием является то, что высокоуровневые драйверы, как правило, не вызываются по прерываниям, так как взаимодействуют с управляемым устройством через посредничество аппаратных драйверов. При наличии большого количества драйверов разного уровня усложняются связи между ними, что, в свою очередь, усложняет их взаимодействие, и именно эта ситуация привела к выделению специальной оболочки в виде менеджера ввода-вывода, выполняющего служебные функции по организации работы драйверов.

Специальные файлы

Специальные файлы, называемые иногда виртуальными, не связаны со статичными наборами данных, хранящихся на дисках, а являются удобным унифицированным представлением устройств ввода-вывода. Понятие специального файла появилось в операционной системе UNIX. Специальный файл всегда связан с некоторым устройством ввода-вывода и представляет его для остальной части операционной системы и прикладных процессов в виде не структурированного набора байт. Со специальным файлом можно работать так же, как и с обычным, то есть открывать, считывать или же записывать в него определенное количество байт, а после завершения операции закрывать. Для этого используются те же системные вызовы, что и для работы с обычными файлами.

39. Физическая организация жесткого диска. (там еще про hdd, ssd устройства добавление в вопрос) (я пробежался глазами тут вроде нет)

Классический жёсткий диск — винчестер или HDD (Hard Disk Drive) — привод жёстких дисков. Файлы в нём записываются на вращающихся магнитных дисках (пластинах) с обеих сторон которых размечены тонкие концентрические кольца — дорожки (tracks), на которых хранятся данные. Нумерация дорожек начинается с 0 от внешнего края к центру диска. Когда диск вращается, головка считывает двоичные данные с магнитной дорожки или записывает их на нее.

Совокупность дорожек одного радиуса на всех поверхностях всех пластин пакета называется цилиндром (cylinder). Каждая дорожка разбивается на фрагменты, называемые секторами (sectors), или блоками (blocks), так что все дорожки имеют равное число секторов. Сектор имеет фиксированный для конкретной системы размер, выражающийся степенью двойки. Чаще всего размер сектора составляет 512 байт. Учитывая, что дорожки разного радиуса имеют одинаковое число секторов, плотность записи становится тем выше, чем ближе дорожка к центру.

Сектор — наименьшая адресуемая единица обмена данными дискового устройства с оперативной памятью. Для того чтобы контроллер мог найти на диске нужный сектор, необходимо задать ему все составляющие адреса сектора: номер цилиндра, номер поверхности и номер сектора. Так как прикладной программе в общем случае нужен не сектор, а некоторое количество байт, не обязательно кратное размеру сектора, то типичный запрос включает чтение нескольких секторов, содержащих требуемую информацию, и одного или двух секторов, содержащих наряду с требуемыми избыточные данные.

Операционная система при работе с диском использует, как правило, собственную единицу дискового пространства, называемую кластером (cluster). При создании файла, место на диске ему выделяется кластерами. Разметку диска под конкретный тип файловой системы выполняют процедуры высокоуровневого, или логического, форматирования.

Диск может быть разбит на разделы. Раздел — это непрерывная часть физического диска, которую операционная система представляет пользователю как логическое устройство(отдельный диск).Примерами организации совместной работы нескольких дисковых разделов являются так называемые RAID-массивы.

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

Основными элементами SSD являются:

  • PCB — печатная плата.

  • NAND-flash — флэш-память NAND; отвечает за хранение данных.

  • NAND-controller — контроллер памяти; выступает в роли посредника между носителем и системой, и является процессором, отвечающим за производительность SSD.

  • DRAM — кэш (присутствует не во всех моделях SSD); выступает временным хранилищем небольшого объема данных и позволяет стабилизировать износ памяти, а также ускорить доступ к файлам.

  • HOST Interface — интерфейс подключения; тип соединения и протокол, через которые SSD соединяется с системой.

Твердотельный накопитель позволяет работать с файлами более эффективно и на более высоких скоростях, чем классические жёсткие диски, тем самым повышая отзывчивость системы и скорость выполнения операций. Разница в скорости работы может достигать нескольких раз.

Соседние файлы в предмете Операционные системы