Файл: Вопросы для подготовки к экзамену по дисциплине " Операционные системы ".docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 10.01.2024

Просмотров: 170

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.



  1. Что такое модули операционной системы?

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

  1. Что такое ядро операционной системы?

Модули, которые должны находиться в памяти постоянно.

  1. Что такое монолитное ядро?

Это объединение модулей ядра в единую программу.

  1. Нарисуйте и поясните структуру слоёной операционной системы?



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

Граница ядра показана жирной линией. Она на рисунке является и границей привилегированного режима. В области непривилегированного режима находятся непривилегированные модули операционной системы и программы пользователей.

  1. Что такое супервизор?

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

  1. Что такое микроядерная операционная система?

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

  1. Что такое BIOS, где она находится при старте вычислительной машины и где помещается во время её работы?

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


  1. Что такое переносимый и непереносимый модуль операционной системы?

  2. Что такое системный запрос?

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

  1. Что такое интерфейс прикладного программирования?

Совокупность системных вызовов и правил их применения называется интерфейсом прикладного программирования (API).

  1. Что такое операционная среда?

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

  1. В чём причина отказа работы программы пользователя при запуске её в другой операционной системе?

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

  1. Как обеспечить переносимость программ из одной операционной системы в другую?

Однако программным способом можно создать в другой операционной системе необходимое подмножество программ, которые будут посредниками между переносимой программой и операционной системой и создадут промежуточный API. Такое подмножество программ называется программной средой. Именно за счёт множества программных сред операционная система Windows XP способна выполнять 16-разрядные приложения, написанные под MS DOS, Windows 3.х и первую версию OS/2.

  1. Что такое очередь, и как она работает?

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

  1. Как происходит адресация в стеке?

При записи данных в стек адрес увеличивается на длину данных и стек наращивается в сторону увеличения адреса, т.е. длина стека растёт влево.



  1. Что такое стек, и как он работает?

Стек организуется по принципу "последний пришёл – первый ушёл" и напоминает детскую пирамидку – основание и перпендикулярный к нему стержень, на который надеваются кольца. Адрес А1 называется вершиной стека. При записи данных в стек адрес увеличивается на длину данных и стек наращивается в сторону увеличения адреса, т.е. длина стека растёт влево.

  1. Можно ли прочитать данные, записанные в стек, после их считывания?

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

  1. Что такое машинная команда? Какова её структура (формат)?

Машинная команда – это последовательность битов длиной в 1,2 и более байтов, которая определяет выполняющуюся операцию и источники данных. В машинной команде можно выделить две части (поля): код операции и адресную часть. Код операции определяет операцию, подлежащую выполнению, а также длину команды и способ адресации данных, т.е. способ задания адресов, обрабатываемых данных.

  1. Что такое адресация? Какие существуют способы адресации?

Адресация – способ задания адресов, обрабатываемых данных.

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

  1. Что такое непосредственная адресация?

Непосредственная – данные указываются непосредственно в команде.

  1. Что такое прямая адресация?

Прямая – в адресной части указывается адрес ячейки памяти данных.

  1. Что такое регистровая адресация?

Регистровая – адрес хранится в одном из регистров процессора.

  1. Что такое косвенная адресация?

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

  1. Каким образом процессор распознаёт способ адресации операндов в машинной команде?


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

  1. Что такое прерывание?

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

  1. Что такое состояние процесса вычислений? Где оно хранится?

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

  1. Что такое контекст программы?

Более полная информация, включающая в себя и состояние процесса вычислений, называется контекстом программы.

  1. Что такое дескриптор программы, и какова его структура?

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

  1. Нарисуйте и поясните схему обслуживания прерывания в простых системах?

Выполняемые действия:

  • Адрес возврата записывается в стек;

  • Адрес программы-обработчика прерывания записывается в регистр PC, что приводит к передаче управления программе-обработчику;

  • Выполняется обработчик прерывания;

  • В регистр PC переписывается из стека адреса возврата, что приводит к возвращению управления основной программе.



(1 – запрет прерывания, 2 – собственно обработчик, 3 – разрешение прерывания)

Запрет прерывания касается события такого же уровня значимости, как и событие вызвавшее текущее прерывание.


  1. Нарисуйте и поясните схему обслуживания прерывания в сложных системах?



(1_С, 2_С – секции кода супервизора СВП; 1_Д, 2_Д – секции кода диспетчера задач; ПОП – программа обработки прерывания)


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

    • 1_С – отключение прерываний, сохранение контекста прерванной программы в её дескрипторе, установка временного режима работы прерываний, сохранение адреса возврата;

    • 2_С – определение вектора прерывания и передача ему управления посредством записи вектора прерывания в регистр РС.

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

    • 1_Д – отыскивает программу, готовую к выполнению, ею может быть или прерванная программа, или другая в соответствии с дисциплиной обслуживания программ;

    • 2_Д – если обслуживанию подлежит прерванная программа, то восстанавливает контекст программы, устанавливает контекст программы и переписывает адрес возврата из стека в регистр РС, передавая тем самым управление прерванной программе.

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


  1. Чем отличаются схемы обслуживания прерывания в простых и сложных системах?

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



  1. Какова структура программы, обслуживающей прерывание?

Программа, обрабатывающая прерывание, состоит из трёх блоков:

  • отключение прерывания и сохранения в памяти контекста программы, установка временного режима работы прерываний;

  • выполнение обработки прерывания;

  • восстановление контекста прерванной программы, восстановление исходного режима прерываний, передача управления прерванной программе.