Операционные системы - страница 3
Магнитная лента часто используется для создания резервных копий HDD или для хранения очень больших наборов данных. Сейчас, конечно редко, где можно встретить применение магнитных лент, но всё же они ещё не вышли из употребления. К уровню магнитной ленты также можно отнести CD, DVD диски и флэш-память. Время доступа измеряется секундами.
Кроме описанных видов, в компьютерах есть небольшое количество постоянной памяти с произвольным доступом. В отличие от RAM, она не теряет свое содержимое при выключении питания. Она называется ПЗУ или ROM. ПЗУ программируется в процессе производства и после этого его содержимое нельзя изменить. Эта память достаточно быстра и дешева. Программы начальной загрузки компьютера, используемые при запуске, находятся в ПЗУ. Кроме этого, некоторые карты ввода-вывода содержат ПЗУ для управления низкоуровневыми устройствами. Вид памяти, называемый CMOS, является энергозависимым. CMOS используется для хранения текущей даты, времени и конфигурационных параметров, например, указания, с какого жесткого диска производить загрузку. Эта память потребляет энергию от установленного аккумулятора.
Устройства ввода-вывода
Операционная система взаимодействует с устройствами ввода-вывода как с ресурсами. Устройства ввода-вывода обычно состоят из контроллера и самого устройства.
Контроллер – набор микросхем на вставляемой в разъем плате, физически управляющее устройство. Он принимает команды операционной системы (например, указания прочитать данные с устройства) и выполняет их. Фактическое управление устройством очень сложно и требует высокого уровня детализации. Поэтому в функции контроллера входит представление простого интерфейса для операционной системы.
Следующей частью является само устройство. Устройства имеют достаточно простые интерфейсы, потому что их возможности невелики и их нужно привести к единому стандарту. Единый стандарт необходим, например чтобы каждый IDE контроллер диска (Integrated Drive Electronics) мог управлять любым IDE диском. IDE интерфейс является стандартным для дисков на компьютерах с процессором Pentium, а также на других компьютерах. Так как настоящий интерфейс устройства скрыт с помощью контроллера, то операционная система видит только интерфейс контроллера, который может сильно отличаться от интерфейса самого устройства.
Поскольку все виды контроллеров отличаются, то для них требуется разное программное обеспечение. Программа, которая общается с контроллером, – драйвер устройства. Каждый производитель контроллеров должен поставлять драйверы для поддерживаемых операционных систем. Для использования драйвера его нужно установить в операционную систему так, чтобы он мог работать в режиме ядра. Есть три способа установки драйвера в ядро [14]:
• заново скомпоновать ядро вместе с новым драйвером и затем перезагрузить операционную систему (так работает множество операционных систем Unix);
• создать запись во входящем в операционную систему файле, говорящую о том, что требуется драйвер и затем перезагрузить систему; во время начальной загрузки операционная система сама находит нужные драйверы и загружает их (так работает Windows);
• операционная система может принимать новые драйверы, не прерывая работы, и оперативно устанавливать их, не нуждаясь в перезагрузке. Этот способ становится все более и более распространенным. Такие устройства как шины USB, IEEE 1394 всегда нуждаются в динамически загружаемых драйверах.