Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
Даже для одной аппаратной платформы, например такой, как IBM PC, существу
несколько операционных систем. Различия между ними рассматривают в двух категори
внутренние и внешние. Внутренние различия характеризуются методами реализац
основных функций. Внешние различия определяются наличием и доступност
приложений данной системы, необходимых для удовлетворения технических требовани
предъявляемых к конкретному рабочему месту.
Загрузчик ОС.
Инициализация аппаратных средств.
Процесс загрузки ОС.
Загрузчик операционной системы — системное программное обеспечение, обе
спечивающее загрузку операционной системы непосредственно после включен
ия компьютера.
Загрузчик операционной системы BIOS:
обеспечивает необходимые средства для диалога с пользователем компь
ютера (например, загрузчик позволяет выбрать операционную систему дл
я загрузки);
приводит аппаратуру компьютера в состояние, необходимое для старта яд
ра операционной системы (например, на не-x86 архитектурах перед запус
ком ядра загрузчик должен правильно настроить виртуальную память);
загружает ядро операционной системы в ОЗУ. Загрузка ядра операционно
й системы не обязательно происходит с жесткого диска. Загрузчик может
получать ядро по сети. Ядро может храниться в ПЗУ или загружаться через
последовательные интерфейсы (это может пригодиться на ранней стадии
отладки создаваемой компьютерной системы);
формирует параметры, передаваемые ядру операционной системы (напр
имер, ядру Linux передаются параметры, указывающие способ подключен
ия корневой файловой системы);
передаёт управление ядру операционной системы.
На компьютерах архитектуры IBM PC запуск загрузчика осуществляется програм
мным обеспечением BIOS, записанной в ПЗУ компьютера, после успешного окон
чания процедуры POST. Опишем процедуру, с помощью которой происходит заг
рузка с НЖМД IBM PC: BIOS производит чтение 512 байт первого сектора НЖМД
(MBR) в ОЗУ по адресу 0x00007C00 (0x07C0:0x0000 в формате реального режима
), затем прочитанному коду передаётся управление. Этот код читает и анализиру
ет таблицу разделов жёсткого диска, а затем, в зависимости от вида загрузчика,
либо передаёт управление загрузочному коду активного раздела жёсткого диск
а, либо самостоятельно загружает ядро с диска в оперативную память и передаё
т ему управление. За все другое отвечает операционная система.
IBM PC- первый массовый ПК фирмы IBM
BIOS — реализованная в виде микропрограмм часть системного программного
обеспечения, которая предназначается для предоставления операционной сист
еме API доступа к аппаратуре компьютера и подключенным к нему устройствам.
API — набор готовых классов, процедур, функций, структур и констант, предоста
вляемых приложением (библиотекой, сервисом) для использования во внешних
программных продуктах.
(ROM )ПЗУ - постоянное запоминающее устройство, в которое записаны видео -
BIOS, экранные шрифты, служебные таблицы и т.п. К нему обращается только
центральный процессор, и в результате выполнения им программ из ПЗУ
происходят обращения к видеоконтроллеру и видеопамяти. (Память,
предназначенная только для чтения данных)
POST — самотестирование после включения. Проверка аппаратного обеспечен
ия компьютера, выполняемая при его включении. Выполняется программами, в
ходящими в BIOS материнской платы.
НЖМД – накопитель на жестких магнитных дисках
(НЖМД)- Разновидность дисковой памяти.
Се́ктор диска — минимальная адресуемая единица хранения информации на д
исковых запоминающих устройствах
ОЗУ-RAM - Память с произвольным доступом, допускающая как чтение, так
и запись данных
Аппаратная инициализация компьютера
Когда компьютер включен в электросеть, он в сущности пустой — все его
микросхемы памяти содержат случайные значения, процессор не выполняет
код. Для начала процедуры загрузки на процессор подают команду RESET
(сброс). После ее принятия, некоторые регистры процессора (в частности
регистр счетчика команды) приобретают фиксированные значения, и
начинается выполнение кода по физическому адресу 0хfffffff0. Аппаратное
обеспечение отображает этот адрес на специальный участок
энергонезависимой памяти (RОМ). Набор программ, который сохраняется в
RОМ, по традиции называют BIOS (Ваsic Input/output). Зузиет, базовая система
введения/выведения), он включает набор управляемых прерываниями
низкоуровневых процедур, которые можно использовать для управления
устройствами, подключенными к компьютеру.
Большинство современных ОС используют BIOS только на этапе начальной
загрузки (какой называют bootstrapping). После этого они никогда не
обращаются к процедурам BIOS и все функции управления устройствами у ОС
берут на себя драйверы этих устройств. Дело в том, что процедуры Вios могут
выполняться только в реальном режиме процессора, а ядро — в защищенном
режиме; кроме того, обычно код BIOS не имеет высокого качества. Реальную
адресацию используют в коде ВIOS потому, что только такие адреса
оказываются доступными, когда компьютер едва лишь включено.
Типы файлов
Файлы бывают разных типов: обычные файлы, специальные файлы, файлы-
каталоги.
Обычные файлы в свою очередь подразделяются на текстовые и двоичные.
Текстовые файлы состоят из строк символов, представленных в ASCII-коде. Это
могут быть документы, исходные тексты программ и т.п. Текстовые файлы
можно прочитать на экране и распечатать на принтере. Двоичные файлы не
используют ASCII-коды, они часто имеют сложную внутреннюю структуру,
например, объектный код программы или архивный файл. Все операционные
системы должны уметь распознавать хотя бы один тип файлов - их собственные
исполняемые файлы.
Специальные файлы - это файлы, ассоциированные с устройствами ввода-
вывода, которые позволяют пользователю выполнять операции ввода-вывода,
используя обычные команды записи в файл или чтения из файла. Эти команды
обрабатываются вначале программами файловой системы, а затем на
некотором этапе выполнения запроса преобразуются ОС в команды управления
соответствующим устройством. Специальные файлы, так же как и устройства
ввода-вывода, делятся на блок-ориентированные и байт-ориентированные.
Каталог - это, с одной стороны, группа файлов, объединенных пользователем
исходя из некоторых соображений (например, файлы, содержащие программы
игр, или файлы, составляющие один программный пакет), а с другой стороны -
это файл, содержащий системную информацию о группе файлов, его
составляющих. В каталоге содержится список файлов, входящих в него, и
устанавливается соответствие между файлами и их характеристиками
(атрибутами).
В разных файловых системах могут использоваться в качестве атрибутов разные
характеристики, например:
информация о разрешенном доступе,
пароль для доступа к файлу,
владелец файла,
создатель файла,
признак "только для чтения",
признак "скрытый файл",
признак "системный файл",
признак "архивный файл",
признак "двоичный/символьный",
признак "временный" (удалить после завершения процесса),
признак блокировки,
длина записи,
указатель на ключевое поле в записи,
длина ключа,
времена создания, последнего доступа и последнего изменения,
текущий размер файла,
максимальный размер файла.
Каталоги могут непосредственно содержать значения характеристик файлов,
как это сделано в файловой системе MS-DOS, или ссылаться на таблицы,
содержащие эти характеристики, как это реализовано в ОС UNIX (рисунок 2.31).
Каталоги могут образовывать иерархическую структуру за счет того, что каталог
более низкого уровня может входить в каталог более высокого уровня (рисунок
2.32).
Рис. 2.31. Структура каталогов: а - структура записи каталога MS-DOS (32 байта);
б - структура записи каталога ОС UNIX
Иерархия каталогов может быть деревом или сетью. Каталоги образуют дерево,
если файлу разрешено входить только в один каталог, и сеть - если файл может
входить сразу в несколько каталогов. В MS-DOS каталоги образуют древовидную
структуру, а в UNIX'е - сетевую. Как и любой другой файл, каталог имеет
символьное имя и однозначно идентифицируется составным именем,
содержащим цепочку символьных имен всех каталогов, через которые проходит
путь от корня до данного каталога.
Рис. 2.32. Логическая организация файловой системы
а - одноуровневая; б - иерархическая (дерево); в - иерархическая (сеть)