- •Классификация программного обеспечения (по)
- •Трансляторы
- •Языки программирования
- •Инструментальные средства
- •Прикладное по
- •Основные задачи ос
- •Концептуальные основы построения ос
- •Управление данными
- •Типы ос
- •Ос с сетевым ядром:
- •Загрузчики ос
- •Связывание в настраивающем загрузчике
- •Перемещение в настраивающих загрузчиках
- •Непосредственно связывающие загрузчики
- •Формат объектного модуля
- •Алгоритм работы непосредственно связывающего загрузчика
- •Этапы загрузки операционной системы
- •Ядро ос
- •Управление заданиями и процессорами.
- •Планировщик заданий
- •Цели при планировании
- •Понятие приоритета
- •Типы ос по архитектурам их ядра
- •Базовые объекты ос
Перемещение в настраивающих загрузчиках
Принятые в настраивающих загрузчиках методы позволяют легко реализовывать настройку реальных адресов заданных относительно начала программы. Сущность метода перемещения состоит в том, что с каждым словом кода программы связывается один бит перемещения. Значение этого бита 0 или 1 является признаком неперемещаемого, перемещаемого слова. Если слово является неперемещаемым, оно оставляется загрузчиком без имени. Если слово перемещаемое, то к значению слова прибавляется стартовый адрес модуля в оперативной памяти. Биты перемещения могут упаковываться, например, 8 слов в один байт.
Непосредственно связывающие загрузчики
Эти загрузчики называются непосредственно связывающими, потому что они обеспечивают обращение к внешней точке непосредственно, а не через косвенную адресацию. Эти загрузчики обеспечивают более высокую эффективность кода и более гибкие возможности связывания. Такие возможности достигаются за счет того, что в объектном модуле содержится вся необходимая для загрузчика информация.
Формат объектного модуля
Объектный модуль, поступающий на ход загрузчика, должен в той или иной форме содержать:
Размер модуля.
Машинные коды.
Входные точки (те адреса модуля, к которым возможно обращение извне).
Внешние точки (те имена во внешних модулях, в котором есть обращение в данном модуле).
Информация о размещении модуля перемещаемых данных
Алгоритм работы непосредственно связывающего загрузчика
Наиболее простой алгоритм — двухпроходной. На вход загрузчика дается список объектных модулей, из которых составляется программа. Этот список может быть параметром программы загрузчика или находится в отдельном файле. На первом проходе загрузчик рассматривает все объектные модули по списку и решает две задачи.
Первая — определяет общий объем области памяти, необходимой для программы и размещение объектных модулей в этой области.
Вторая — составляет глобальную таблицу внешних имен программы. В глобальную таблицу заносятся только входные точки всех модулей. В конце первого прохода загрузчик выделяет память и уже зная фактический начальный адрес программы в памяти корректирует все адреса глобальной таблицы внешних символов. Во втором проходе загрузчик снова читает все объектные модули по списку, при этом он уже размещает коды модуля в памяти и формирует для каждого модуля таблицу внешних символов и таблицу перемещений. Адресные поля в этих таблицах он заполняет или корректирует с учетом фактического адреса модуля в памяти и содержимого глобальной таблицы внешних символов. За тем он выполняет обработку таблицы перемещений, используя для коррекции адресных кодов, в программе значения, из локальных таблиц внешних символов.
Этапы загрузки операционной системы
В системном блоке компьютера находится постоянное запоминающие устройство, в котором содержится программы тестирования блоков компьютера и первого этапа загрузки ОС. Они начинают выполняться при включении компьютера. На этом этапе процессор обращается к диску и проверяет наличие на определенном месте (в начале диска) очень небольшой программы — загрузчика, если эта программа обнаружена, то она считывается и ей передается управление.
Программа-загрузчик в свою очередь ищет на диске базовый модуль ОС, переписывает его в память и передает ему управление.
В состав базового модуля входит основной загрузчик, который ищет остальные модули ОС и считывает их в оперативное запоминающие устройство. После окончания загрузки ОС управление передается командному процессору и на экране появляется приглашение системы в воду команды пользователя.
В оперативной памяти во время работы компьютера обязательно должны находиться базовые модули ОС и командный процессор, следовательно, нет необходимости загружать в оперативную память все файлы ОС одновременно.
Драйверы устройств и утилиты могут подгружаться в оперативную память по мере необходимости, что позволяет уменьшить обязательный объем оперативной памяти, отводимый под системной программное обеспечение.
17.02.2014
Лекция ОС №5
