Реферат: Список билетов Билет 2





Список билетов

Билет 2

Структура ядра ОС.

Сегмент. организация памяти. Плюсы и минусы.

Особенности FAT (таблицы адресов/адресные таблицы).

Структура прохождения задания через ВС.

Прерывания. Виды, особенности реагирования на них ОС.


Билет 4

Супервизор, его ф-ции и состав.

Потоки и особенности их применения при организации вычислений.

Теория рабочего множества и ее влияние на эффективность системы управления памятью. Особенности реализации в современных ВС.

Принципы повышения эффективности файловой системы.

Фазы прерываний и их особенности.


7 (Макс)

Схема функционирования ОС.

PCB.

?

Вход и выход из режима ожидания.

Блокировка записи.


Билет 8

Управление процессами – основа функционирования ОС. Состояние процесса. Условия перехода из одного состояния в другое.

Системные объекты для управления вычислительным процессом в защищенном режиме.

Применение ассоциативной памяти для повышения эффективности управления выч. процессом.

Физические и логические единицы работы файловой системы.

Работа системы при подготовке и выполнении команды ввода/вывода.


Билет 10 (Рома)

Концепции планирования процесса в многопрограммной ОС.

Особенности планирования процессов в многопрогр. ОС в реальном времени. Может ли Windows (ОС) работать в реальном времени? (Не может она, почему неизвестно).

Какой лучше… Особенности выбора размера страниц.

Плюсы и минусы файловой системы РМС.

Семафоры и особенности их использования.


Билет 12 (Рома)

Процедура начальной загрузки ОС.

Система управления памятью. Решаемые задачи.

Особенности управления внешней памятью в UNIX.

Состав системных объектов реализации защищенного режима.

Сокеты. Особенности использования сокетов.


Билет 13

Виды и организация памяти.

Основ. структура ОС. Их назначение.

Методы повышения эффективности управления внешних носителей данных.

Структура загрузки MS-DOS. Назначение.

Контекст процесса. Состав и назначение.



Билет 14

Особенности генерации, инсталляции и инициализации ОС.

Методы предотвращения тупиков.

Система управления файлами. Решаемые задачи.

Методы защиты памяти в различных схемах организации.

Виды межпроцессорного (межпроцессного скорее) взаимодействия. Их сравнение.


Билет 15

Особенности задач, решаемых в распределенных ОС.

Методы повышения эффективности организации вычислительного процесса в ВС.

Методы доступа к файлам. Особенности решаемых задач.

Фрагментация и методы борьбы с ней.

Виды прерываний и особенности их обработки.


Билет 16 (Макс)

Особенности задач решаемые в ОС систем массового распараллеливания.

Проблема управления памятью.

Влияние методов доступа на реализацию файловой системы.

Принципы управления в многозадачной ОС.

Процесс и система прерываний. Особенности функционирования.


Билет 17

Средства и способы общения между процессами.

Виртуальная память.

Способы выделения дисковой памяти на различных ОС.

Многоуровневый планировщик процессов.


Билет 19

Особенности ОС вычислительной системы.

Принципы хранения в свободном месте различных ОС.


Билет 21

Особенности переключения процессов между состояниями.

Особенности ОС с микроядерной структурой.

Особенности адресации в защищенном режиме.


Билет 22

Виды сигналов.

Состояние процессов.

Экзоядро. (?!?!?!?!?!?!?!?!)

Последовательность загрузки процесса в виртуальную память.

Избежание тупиков.


Билет 23

Монополитные (скорее монопольные) ОС. Плюсы и минусы.

Переход процесса в заблокированное состояние.

Алгоритм Банкира.

Виды приоритетных прерываний.

Структура дескриптора таблицы страниц.


Билет 25

Особенности ОС с микроядерной архитектурой. Плюсы/минусы.

Особенности при переключении процессов между состояниями (нужен граф состояний).

Особенности адресации в защищенном режиме.

Билет 26

Структура ОС.

Доставка сообщений заблокированному процессу (особенности).

Когерентные… (определение когерентности) (когерентность чего неизвестно)

Алгоритм «часы».

?


Билет 28

TSS. Структура и назначение.

Взаимодействие контроллера прерываний с ОС.

Согласование файловой системы (…два вектора…) (см. конспект)

Назначение системы работы с памятью. (…про файловую систему…) (!?)

Оптимизация/назначения работы файловой систем(…disk, FCFS…) (!?)


Билет 30

Назначение КЭШа.

Блокирование записей.

Локальная и глобальная таблица дескрипторов

Назначение системы ввода-вывода

Правила формирования рабочего множества

Билет 2


1) Структура ядра ОС

- обрабатывающие прогр (компиляторы, загрузчики, редакторы связей)

- управляющие прогр ( 1) Пр-мы управления заданиями. Отслежывает вход и выход задания в системе 2) Пр-мы управления задачами (процессами) 3) Система управления файлами. 4) Управление памятью. Делиться на организацию и управление памятью 5) Управление внешними устройствами)

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


^ 2) Сегментная организация памяти



(БАС – базовый адрес сегмента, СО – сист область)

Программа ведется модульно. Каждый модуль занимает непрерывную область памяти, но все программы дробятся при загрузке. При этом возникают проблемы защиты. Требуется таблица сегментов для определения места каждого сегмента. (БАС+имя)-таблица для А получили эффективный адрес и смещение-получили адрес сегмента. Программа состоит из множества модулей. Каждый модуль загружается в любое место.. Базовый адрес определяется соответственно с таблицей сегментов. Чтобы рассчитать настоящий адрес используется таблица страниц. В таблице много программ, для прогр. Табл. сегментов, то появляется табл., в которой адреса таблиц сегментов для процесса.


^ 3) Особенности ФАТ. Таблиц, память.



В зависимости от количества блоков на диске в сист MS-DOS применяется три версии файл сист FAT: -12, -16, -32.

FAT-12 (макс размер диска 64 Мбайт, раздела - 16)

FAT-16 (макс размер диска 8 Гбайт, раздела - 2)

FAT-32 (макс размер диска 8 Тбайт, раздела - 2)


^ 4) Структура прохождения задачи через ВС.

(нужно смотреть прошлый семестр)

Если в системе есть ресурсы то всплывает планировщик второго уровня (выбор из очереди задания; определить можно ли его решить с помощью ресурсов, что есть в системе; вызвать инициализатор который создает блок управления задачей.)

Признаком подкачки нового задания является либо освобождение опер. памяти либо резкое уменьшение эффективной работы вычислительной установки.

Как только процессор освобожден либо естественно либо с вытеснением сработывает планировщик 3-го (верхнего уровня) и из готовых задач он должен выбрать зад. Для выполнения и занять время выполниние в процессоре.


^ 5) Прерывания. Виды. Реакция ОС на них.


Прерывание – переход на другую програмную последовательность.

Классы прер по понижению приоритета:

1 прерывание схем контроля

2 внешние прерывания

3 прерывания по вводу/выводу (по завершению операции)

4 по обращении к супервизору (вызов сист ф-ций)

5 программное прерывание или прерывание в исключительных ситуациях (переполнение,…)

^ 4 и 5 одного приоритетного уровня, поскольку возникают в программе.

Есть 2 уровня приоритета

приоритет сигналов прерываний

приоритет прерывающих программ (для ОС более важен)

При фиксации прерываний КПП обрабатывает по приоритету сигналов. При образовании процесса ОС рассматривает по приоритету прерывающих программ

Для ОС важен второй уровень, для обработчика прерываний -1й


^ Реакция ОС на них



Тз— время задержки между моментом возникновения сигнала прерывания и прерыванием активного процесса. Оно зависит от принятого в системе (процессоре) способа обработки сигнала прерывания: после такта работы процессора (реакция быстрая, но нужно сохранять большой объем инф), после полного завершения команды (медленная реакция, но маленький объем сохраняемой инф), после специально выделенных команд (объем сохраняемой инф минимальный)

Тс — время сохранения необходимой информации.

Тд— время дешифрации сигнала прерывания. Зависит от аппаратуры, дешифрирующей сигнал прерывания.

Тв— время восстановления прерванного процесса. Зависит от количества восстанавливаемой информации.


^ Билет 4


1) Супервизор. Состав и функции.

Ядро супервизора – совокупность программ (управляющие программы), обеспечивающих функционирование ВС и находящихся в системной области оперативной памяти, составляет ядро супервизора.

Состав:

1) Пр-мы управления заданиями. Отслежывает вход и выход задания в системе

2) Пр-мы управления задачами (процессами)

3) Система управления файлами.

4) Управление памятью. Делиться на организацию и управление памятью

5) Управление внешними устройствами

Следующие из этого ф-ции:

Обработка прерываний; создание и уничтожение процессов; переключение процессов из состояния в состояние; диспетчеризацию заданий, процессов и ресурсов; приостановка и активизация процессов; синхронизация процессов; организация взаимодействия между процессами; манипулирование РСВ; поддержка операций ввода/вывода; поддержка распределения и перераспределения памяти; поддержка работы файловой системы; поддержка механизма вызова – возврата при обращении к процедурам; поддержка определенных функций по ведению учета работы машины;

Одна из самых важных функций, реализованная в ядре – обработка прерываний.


^ 2) Потоки и особенности их применения при организации вычислений.

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

Многопоточность - использования нескольких потоков в одном процессе.

Аргументом в пользу потоков является легкость их создания и унич­тожения (поскольку с потоком не связаны никакие ресурсы). Это свойство особенно полезно, если необходимо динамическое и быстрое изменение числа потоков

Также аргументом является производительность. Концепция потоков не дает увеличения производительности, если все они ограничены возможностями про­цессора. Но когда имеется одновременная потребность в выполнении большого объема вычислений и операций ввода-вывода, наличие потоков позволяет совме­щать эти виды деятельности во времени, тем самым увеличивая общую скорость работы приложения.

Концепция потоков полезна в системах с несколькими процессора­ми, где возможен настоящий параллелизм.


^ 3) Теория рабочего множества и ее влияние на эффективность работы системы управления памятью. Особенности реализации в современных ВС.

Множество страниц, которое процесс использует в данный момент, называется рабочим набором.

Нужно удалить страницу, не находящуюся в рабочем множестве (наборе). Для этого система для каждого процесса ведет характеристику, назыв "текущее виртуальное время" (абсолютное время работы процесса).

Задается время Т (фиксированное) и есть время последнего использования процесса.

При страничных прерываниях анализируется время последнего использования. Если анализ страница имеет R=1, то текущее вирт время становится временем последнего использования и сбрасывается в "0". Если R=0, то вычисляется вирт время минус время последнего использ. Если оно больше Т, то страница удаляется. Если меньше Т, помещается в список кандидатов на удаление.


^ 4) Принципы повышения эффективности работы файловых систем.

Кэширование

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

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

Опережающее чтение блока

Получение блоков диска в кэш прежде, чем они потребуются. Многие файлы считываются последовательно. Когда файловая система получает запрос на чтение блока к файла, она выполняет его, но после этого сразу проверя­ет, есть ли в кэше блок к + 1. Если этого блока в кэше нет, файловая система читает его в надежде, что к тому моменту, когда он понадобится, этот блок уже будет счи­тан в кэш. В крайнем случае, он уже будет на пути туда.

Если обращения к блокам файла производятся в случайном по­рядке, опережающее чтение не помогает.

Снижение времени перемещения блока головок

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


^ 5) Фазы прерываний и их особенности.

Прерывание – переход на другую програмную последовательность.

Фазы прерывания:



Тз — время задержки между моментом возникновения сигнала прерывания и прерыванием активного процесса. Оно зависит от принятого в системе (процессоре) способа обработки сигнала прерывания: после такта работы процессора (реакция быстрая, но нужно сохранять большой объем инф), после полного завершения команды (медленная реакция, но маленький объем сохраняемой инф), после специально выделенных команд (объем сохраняемой инф минимальный)

Тс — время сохранения необходимой информации.

Тд — время дешифрации сигнала прерывания. Зависит от аппаратуры, дешифрирующей сигнал прерывания.

Тв — время восстановления прерванного процесса. Зависит от количества восстанавливаемой информации.

Время между возникновением сигнала прерывания и началом выполнения обработчика прерывания называется временем реакции системы на сигнал прерывания (Тр).


^ Билет 8

Управление процессами – основа функционирования ОС.

Процесс  это теоретическое понятие, на основании которого можно описать то, что происходит в системе при выполнении некоторых действий (программы).

Процесс : это динамический объект системы, которому она выделяет ресурсы; это траектория процессора в адресном пространстве ВС.

Выполнение функций ОС, связанных с управлением процессами, осуществляется с помощью блока управления процессом (РСВ). Вход в процесс (фиксация системой процесса)  это создание его блока управления (РСВ), а выход из процесса  это его уничтожение, т. е. уничтожение его блока управления.

Таким образом для каждого активизированного процесса система создает РСВ, в котором в сжатом виде содержится информация о процессе, используемая при управлении. РСВ  это системная структура данных, содержащая определенные сведения о процессе и имеющая следующие поля:

Уникальный индентификатор процесса (имя) 2.Текущее состояние процесса.

3.Приоритет процесса. 4. Указатели участка памяти выделенного программе, подчиненной данному процессу. 5.Указатели выделенных ему ресурсов. 6.Область сохранения регистров. 7.Права процесса (список разрешенных операций) 8.Связи зависимости в иерархии процессов (список дочерних процессов, имя родительского процесса) 9.Пусковой адрес программы, подчиненной данному процессу.

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

Для синхронизации в РСВ имеются четыре поля:

1-2. Поля для организации цепочки связи.3-4. Поля для организации цепочки ожидания.

В цепочке связи указывается адрес РСВ вызываемого (поле 1) и вызывающего (поле 2) процесса. В цепочке ожидания, в поле 3 указывается адрес РСВ вызываемого процесса, если вызываемый процесс занят. В поле 4 занятого процесса находится число процессов, которые ожидают данный.

Если процесс А пытается вызвать процесс В, а у процесса В в РСВ занята цепочка связей, то есть он является вызываемым по отношению к другим процессам, тогда адрес процесса В записывается в цепочке ожидания РСВ процесса А, а в поле счетчика ожидания РСВ процесса В добавляется 1. Как только процесс В завершает выполнение своих функций, он передает управление вызывающему процессу следующим образом: В проверяет состояние своего счетчика ожидания, и, если счетчик больше 0, то среди РСВ других процессов ищется первый (по приоритету или другим признакам) процесс, в поле 3 РСВ которого стоит имя ожидаемого процесса, в данном случае В, тогда управление передается этому процессу.


^ Системные объекты для управления процессами в защищенном режиме

По идее это GDT и LDT.

Основа виртуальной памяти системы Pentium состоит их двух таблиц: локаль­ной таблицы дескрипторов LDT (Local Descriptor Table) и глобальной таблицы дескрипторов GDT (Global Descriptor Table). У каждой программы есть своя соб­ственная таблица LDT, но глобальная таблица дескрипторов одна, ее совместно используют все программы в компьютере. Таблица LDT описывает сегменты, ло­кальные для каждой программы, включая ее код, данные, стек и т. д., тогда как таб­лица GDT несет информацию о системных сегментах, включая саму операцион­ную систему.

Чтобы получить доступ к сегменту, программа системы Pentium сначала за­гружает селектор для этого сегмента в один из шести сегментных регистров маши­ны. Во время выполнения регистр CS содержит селектор для сегмента кода команд, а регистр DS хранит селектор для сегмента данных. Каждый селектор представля­ет собой 16-разрядный номер (рис. 4.40). Один из битов селектора несет информацию о том, является ли данный сегмент локальным или глобальным (то есть находится ли он в локальной или глобаль­ной таблице дескрипторов). Следующие тринадцать битов определяют номер за­писи в таблице дескрипторов, поэтому эти таблицы ограничены: каждая содержит 8 К сегментных дескрипторов. Остальные 2 бита относятся к проблемам защиты и будут описаны позже. Дескриптор 0 является запрещенным. Его можно безопасно загрузить в сегментный регистр, чтобы обозначить, что сегментный регистр в дан­ный момент недоступен. При попытке его использовать происходит прерывание.

Во время загрузки селектора в сегментный регистр соответствующий дескрип­тор извлекается из локальной или глобальной таблицы дескрипторов и сохраня­ется в микропрограммных регистрах, что обеспечивает к нему быстрый доступ. Дескриптор состоит из 8 байт, в которые входит базовый адрес сегмента, размер и другая информация (рис. 4.41).

Формат селектора искусно выбирался так, чтобы упростить определение мес­тоположения дескриптора. Сначала выбирается локальная или глобальная табли­ца дескрипторов, основываясь на бите два селектора. Затем селектор копируется во внутренний рабочий регистр и три младших бита приравниваются к 0. Наконец, к нему прибавляется адрес одной из таблиц, чтобы получить прямой указатель на дескриптор. Например, селектор 72 ссылается на запись 9 в глобальной таблице дескрипторов, расположенную по адресу в таблице GDT+72.

Теперь проследим шаги, с помощью которых пара (селектор, смещение) преоб­разуется в физический адрес. Как только микропрограмма узнает, какой сегмент­ный регистр используется, она может найти в своих внутренних регистрах пол­ный дескриптор, соответствующий этому селектору. Если сегмент не существует (селектор равен 0) или в данный момент выгружен, возникает прерывание.


^ Повышение эффективности ВС за счет ассоциативной памяти.

Системы с ассоциативной памятью представляют собой такие параллельные системы типа ОКМДР, которые оперируют с данными при доступе к ним при помощи тэгов пли выборки по содержимому ячеек памяти в большей степени, чем при помощи адресов. Ассоциативная память реализует принцип естественного параллелизма, за счет этого улучшение вычислений. Применяется в машинах Data flow. Но эта память дорогостоящая. Пример машины с ассоц. Памятью – STARAN.


Физические и логические единицы работы файловой системы

Том – объем инф. Доступный 1 устройству чтения-записи. Может быть многотомный файл и многофайловый том.

Запись. Физич. – любая инф. Считанная за 1 обращение к диску. Физическая запись обычно> логической. ПО этому вопросу больше ничего написать не могу. Если можешь скажи)

Логическая: бит, байт, внутр./внеш. Слово, поле-совокупность символов, запись – совокупность полей, файл – совокупность записей, совокупность файлов -база данных.


^ Компилятор перед любой командой в/в ставит системный взвод( с точки зрения машины это прерывание SVC-обращение к супервизору). Система должна среагировать на прерывание при этом сбрасывается текущее значение PSW в старое.

-передаем параметры в канальную программу

-передача адресов ВУ(Лукас абонентская система)

-выдвча команды в/в

-проверка канального слова

-прога порашивает словосостояние канала на подтверждение нормального старта.

-возвращаем в текущее PSW старое

-по завершению это фиксируется в CSW и идет физ. Прерывание по в/в.

-проверка CSW и переход на след. Команду.


Билет 13


^ Виды и организация памяти.

Существует сегментная, страничная, сегментно-страничная и виртуальная память.

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

Основ. структура ОС. Их назначение.

Идеи структурной организации ОС:

монолитный – при увеличении количества команд, добавление функции требует переписывания системы

многоуровневые (ОС с кольцевой структурой). Система включала 6 уровней. Уровень 0 занимался распределением времени процессора, переключая процессы при возникновении прерывания или при срабатывании таймера. Над уровнем 0 система состояла из последовательных процессов, каждый из которых можно было запрограммировать, не заботясь о том, что на одном про­цессоре запущено несколько процессов. Другими словами, уровень 0 обеспечивал базовую многозадачность процессора.

Уровень 1 управлял памятью. Он выделял процессам пространство в оператив­ной памяти и на магнитном барабане объемом 512 К слов для тех частей процес­сов (страниц), которые не помешались в оперативной памяти. Процессы более высоких уровней не заботились о том, находятся ли они в данный момент в памя­ти или нэ барабане. Программное обеспечение уровня 1 обеспечивало попадание страниц в оперативную память по мере необходимости.

Уровень 2 управлял связью между консолью оператора и процессами. Таким образом, все процессы выше этого уровня имели свою собственную консоль оператора. Уровень 3 управлял устройствами ввода-вывода и буферизовал потоки информации к ним и от них. Любой процесс выше уровня 3, вместо того чтобы работать с конкретными устройствами, с их разнообразными особенностями, мог обращаться к абстрактным устройствам ввода-вывода, обладающим удобными для пользователя характеристиками. На уровне 4 работали пользовательские программы, которым не надо было заботиться ни о процессах, ни о памяти, ни о консоли, ни об управлении устройствами ввода-вывода. Процесс системного оператора размещался на уровне 5.

Микроядерная архитектура – функциональная независимость и универсальность системы. Ядро должно работать с программой пользователя. Здесь имеется ядро и функциональные блоки. Ядро здесь компактное и только передает блокам информацию по синхронизации и отслеживает «общение» между процессами, а дальше блоки работают самостоятельно

^ Методы повышения эффективности управления внешних носителей данных.

Существенная часть операционной системы занимается вводом-выводом. Операция ввода-вывода может выполняться тремя способами. Во-первых, при помо­щи программного ввода-вывода, при котором центральный процессор вводит или выводит каждый байт или слово, находясь в цикле ожидания готовности устрой­ства ввода-вывода. Второй способ представляет собой управляемый прерывания­ми ввод-вывод, при котором центральный процессор начинает передачу ввода-вывода для символа или слова, после чего переключается па другой процесс, пока прерывание от устройства не сообщит ему об окончании операции ввода-вывода. Третий способ заключается в использовании прямого доступа к памяти (DMA), при котором отдельная микросхема управляет переносом целого блока данных, и инициирует прерывание только после окончании операции переноса блока.

Существует большое количество типов дисков, включая магнитные диски, системы RAID и различные типы оптических дисков. Алгоритмы планирования перемещения блока головок часто могут улучшить производительность диска, но наличие виртуальной геометрии усложняет эту задачу. При помощи объединения двух дисков в пару может быть создан надежный носитель данных с определенны­ми полезными свойствами.

^ Структура загрузки MS-DOS. Назначение.

Для функционирования операционной системы MS-DOS в оперативную память программой начальной загрузки загружается обязательная часть MS-DOS: MSDOS.SYS, IO.SYS, COMMAND.COM.

IO.SYS  обеспечивает логический интерфейс низкого уровня между системой и аппаратурой (через BIOS); содержит набор резидентных драйверов основных периферийных устройств. При инициализации программа определяет состояние всех устройств и оборудования, а также управляет операциями обмена между памятью и внешними устройствами.

В MSDOS.SYS располагаются программы управления памятью, файлами, данными, внешними устройствами, заданиями, процессами. Это центральный компонент DOS, реализующий основные функции ОС  управление ресурсами ПК и выполняемыми программами. Основу составляют обработчики прерываний верхнего уровня.

COMMAND.COM  командный процессор, обеспечивающий интерфейс пользователя с вычислительной системой

Файл IO.SYS, загруженный с диска, обычно состоит из двух модулей: BIOS и SYSINIT. SYSINIT вызывается с помощью программы инициализации BIOS. Модуль определяет величину непрерывной памяти, доступной системе, и затем располагает SYSINIT в старшие адреса. Далее модуль переносит ядро системы DOS, MSDOS.SYS, из области ее начальной загрузки в область окончательного расположения.

Далее SYSINIT вызывает программу инициализации в модуле MSDOS.SYS. Ядро DOS инициализирует ее внутренние таблицы и рабочие области, устанавливает вектора прерываний по адресам с 20h по 2Fh и перебирает связанный список резидентных драйверов устройств, вызывая функцию инициализации для каждого из них.

Когда ядро DOS проинициализировано и все резидентные драйверы доступны, модуль SYSINIT может вызвать обычный файловый сервис системы MS-DOS и открыть файл CONFIG.SYS. Драйверы, в соответствии с директивами DEVICE=, указанными в CONFIG.SYS, последовательно загружаются в память, активизируются с помощью вызовов соответствующих модулей инициализации и заносятся в связанный список драйверов. Функции инициализации каждого из них сообщают SYSINIT размер памяти, отведенный под соответствующий драйвер.

После загрузки всех установленных драйверов, SYSINIT закрывает все дескрипторы файлов и открывает консоль, принтер и последовательный порт. Это позволяет замещать резидентные драйверы BIOS стандартных устройств. Модуль SYSINIT перемещает себя к старшим адресам памяти и сдвигает ядро системы DOS в строну младших адресов памяти в область окончательного расположения.

В конце своего выполнения SYSINIT вызывает системную функцию EXEC для загрузки интерпретатора командной строки, т.е. COMMAND.COM.

COMMAND.COM  командный процессор, который обеспечивает интерфейс пользователя с установкой.

^ Контекст процесса. Состав и назначение.

Существует 3 вида контекста: пользователя, ядра, регистра. Понятие контекстов используется при смене процессов. Поток ассоциируется с выполнением команд на процессоре

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

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

При переключении контекста процессор сохраняет содержимое PSW, затем помещает в него новое значение, соответствующее процессу, называемому обработчиком прерывания (Interrupt Handler, IH), который и выполняет обработку самого прерывания. После завершения обработки прерывания в PSW восстанавливается содержимое сохраненного ранее PSW.

Билет 14


Особенности генерации, инсталляции и инициализации ОС.

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

При функционировании вычислительной системы пользователь может менять свои представления о ее функционировании. Кроме этого может меняться и состав оборудования. Процесс локальной настройки ОС по желанию пользователя называется инсталляцией. Признаком, по которому можно отличить инсталляцию от генерации является то, что, если при настройке операционной системы не используется дистрибутив  это инсталляция, если требуется дистрибутив  генерация.

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

^ Методы предотвращения тупиков.

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

I способ. Процесс запрашивает и получает все ресурсы сразу. Если процесс не имеет возможности получить все требуемые ресурсы сразу, т.е. некоторые из них на данный момент заняты, то он должен ожидать освобождения требуемых ресурсов. При этом он не должен удерживать за собой какие-либо ресурсы. Нарушается условие "ожидания дополнительных ресурсов" (2-е) и тупиковая ситуация невозможна. При этом способе имеем простой процессов, ожидающих выделения ресурсов, и работу вхолостую значительной части ресурсов. Можно прибегнуть к разделению программы на несколько программных шагов, работающих независимо друг от друга. При этом выделение ресурсов можно осуществлять для каждого шага программы, однако увеличиваются расходы на этапе проектирования прикладных программ.

Этот способ имеет два существенных недостатка: 1). Снижается эффективность работы системы; 2). Усиливается вероятность бесконечного откладывания для всех процессов.

^ II способ. Если процесс, удерживающий за собой определенные ресурсы, затребовал дополнительные и получил отказ в их получении, он должен освободить все ранее полученные ресурсы. При необходимости процесс должен будет запросить их снова вместе с дополнительными. Здесь нарушается условие "перераспределения" (3-е). При этом способе каждый процесс может несколько раз запрашивать, получать и отдавать ресурсы системе. При этом система будет выполнять массу лишней работы  происходит деградация системы с точки зрения полезной работы. Недостатки этого способа: 1) Если процесс в течение некоторого времени удерживал ресурсы, а затем освободил их, он может потерять имевшуюся информацию. 2) Здесь также возможно бесконечное откладывание процессов  процесс запрашивает ресурсы, получает их, однако не может завершиться, т.к. требуются дополнительные ресурсы; далее он, не завершившись, отдает имеющиеся у него ресурсы системе; затем он снова запрашивает ресурсы и т.д.

Имеем бесконечную цепочку откладывания завершения процесса.

^ III способ. Стратегия линейности. Все ресурсы выстроены в порядке присвоенных приоритетов и захват новых ресурсов может быть выполнен только в порядке возрастания приоритетов. При
еще рефераты
Еще работы по разное