
- •Состав и принципы работы операционных систем и сред. Понятие, основные функции, типы операционных систем.
- •Определение операционной системы
- •Определение операционной среды
- •Последовательность действий оператора при решении задач на ранних компьютерах без операционной системы
- •Ранние операционные системы имели следующие характеристики
- •Язык управления заданиями
- •Операционные оболочки
- •Иерархическая структура компьютера и операционной системы
- •Последовательность развития системного программного обеспечения
- •9.Последовательность развития системного программного обеспечения
- •Методы обработки пользовательских программ в зависимости от их характеристик
- •Поколения операционных систем
- •Классификационные признаки в определении поколения операционной системы
- •13. Задачи, решаемые операционными системами
- •14. Единицы работ операционных систем
- •15. Классификация операционных систем
- •16. Основные характеристики однопрограммных ос
- •17. Основные характеристики многопрограммных ос
- •18. Организация памяти современного компьютера
- •19. Стековая память
- •Виртуальная память
- •Ассоциативная память
- •Внешняя память
- •Мультипрограммность и мультизадачность
- •Понятие задания в ос
- •Управление ресурсами в ос
- •Понятия процесса и потока
- •Понятие волокна
- •Управление процессами и потоками
- •Формы мультипрограммной работы
- •30.Критерии организации пакетной обработки
- •31. Критерии организации режима разделения времени
- •32.Характеристики систем реального времени
- •33.Характеристики симметричных мультипроцессорных систем
- •34. Последовательность создания процессов в компьютере
- •35. Характеристика образа процесса
- •36. Дескриптор процесса и его характеристика
- •37. Контекст процесса и его характеристика
- •38 Способы реализации потоков
- •39 Достоинства реализации потоков в ядре
- •40 Недостатки реализации потоков в ядре
- •41 Достоинства реализации потоков в пространстве пользователя
- •42) Недостатки реализации потоков в пространстве пользователя
- •43) Потенциальные проблемы, возникающие при выполнении процессов, не осведомленных друг о друге
- •44) Методы взаимоисключения
- •45) Условия возникновения тупиковой ситуации
- •Классы прерываний в компьютерах
- •Состав аппаратных средств систем прерываний компьютеров
- •Последовательность обработки прерываний (запоминание контекста)
- •Последовательность обработки прерываний (собственно обработка прерывания)
- •50. Эволюция ввода – вывода
- •51. Согласование скоростей обмена и кэширования данных
- •52. Системный монитор и его использование
- •53. Диспетчер задач Windows
- •Файл подкачки и его характеристики
- •Адресное пространство операционной системы
- •Соответствие между видом планирования единиц работы ос и выполняемыми функциями планирования
- •Соответствие между алгоритмом планирования и его характеристиками
- •Невытесняющие (non-preemptive)
- •Вытесняющие (preemptive)
- •Концепция квантования потоков
- •60. Приоритеты в алгоритмах планирования мультипрограммного вычислительного процесса.
- •61. Цели создания файловых систем
- •62. Фундаментальные способы организации файлов
- •63. Физическая организация размещения файлов на диске
- •Менеджер ввода-вывода
- •Шифрующая файловая система efs
- •Ресурсы, требуемые для работы устройству ввода-вывода
- •Фрагментация и ее виды, дефрагментация
- •68. Квотирование дискового пространства
- •69. Алгоритм дискового планирования
- •70. Установка разрешений файлам и каталогам
- •71. Семафор Дейкстры.
- •Архитектура операционной системы
- •Достоинства многослойной иерархической архитектуры ос
- •Достоинства микроядерной архитектуры ос
- •Эффективность операционной системы
- •77. Совместимость ос
- •78. Основные преимущества виртуализации ос
- •Драйверы устройств
- •80. Структура адресного пространства прикладного процесса
- •81. Понятие файла и файловой системы
- •82. Главная загрузочная запись диска и ее структура
- •83. Характеристика первичных и расширенных разделов диска
- •84. Виды логической организации файлов
- •85. Точки соединения с ос Windows
- •86. Каталоги файловой системы ntfs
- •87. Интерфейс прикладного программирования
- •88. Сегментная организация памяти
- •89. Страничная организация памяти
- •90. Сегментно-страничная организация памяти
- •91. Последовательность выполнения .Exe файлов
- •Защита и восстановление ос Windows 2000. Архивация. Установочные дискеты. Безопасный режим загрузки.
- •93. Защита и восстановление ос Windows 2000. Консоль восстановления, диск аварийного восстановления. Резервное копирование и восстановление.
- •95. Общая характеристика системы unix. Интерфейсы системы и их характеристика.
- •96. Структура ядра системы unix. Состав и характеристика компонентов ядра.
- •Оболочка системы unix. Работа в оболочке. Командная строка. Основные команды работы с файлами, каналы, сценарии.
- •Команды по работе с файловой системой
- •Операционная система Windows 2000. Структура системы. Основные компоненты и их характеристика.
- •Операционная система Windows 2000. Уровень аппаратных абстракций. Функции уровня. Уровень ядра.
- •Технология аутентификации. Сетевая аутентификация на основе одноразового пароля.
Последовательность обработки прерываний (запоминание контекста)
Механизм обработки прерываний независимо от архитектуры вычислительной системы включает следующие элементы:
1. Установление факта прерывания (прием сигнала на прерывание) и идентификация прерывания (в операционных системах иногда осуществляется повторно, на шаге 4).
2. Запоминание состояния прерванного процесса. Состояние процесса определяется прежде всего значением счетчика команд (адресом следующей команды), содержимым регистров процессора и может включать также спецификацию режима (например, режим пользовательский или привилегированный) и другую информацию. Наиболее удобным местом хранения регистров является стек. (для 32-разрядных микропроцессорах i80x86: ) После сохранения регистров в стеке микропроцессор сбрасывает бит флага IF (т.е.=0). Этим предотвращается возможность возникновения вложенных внешних прерываний и порча регистров исходной программы вследствие неконтролируемых действий со стороны программы - обработчика вложенного прерывания.
3. Управление аппаратно передается подпрограмме обработки прерывания. В простейшем случае в счетчик команд заносится начальный адрес подпрограммы обработки прерываний, а в соответствующие регистры — информация из слова состояния.
4. Сохранение информации о прерванной программе, которую не удалось спасти на шаге 2 с помощью действий аппаратуры. В некоторых вычислительных системах предусматривается запоминание довольно большого объема информации о состоянии прерванного процесса.
5. Обработка прерывания. Эта работа может быть выполнена той же подпрограммой, которой было передано управление на шаге 3, но в ОС чаще всего она реализуется путем последующего вызова соответствующей подпрограммы.
6. Восстановление информации, относящейся к прерванному процессу (этап, обратный шагу 4).
7. Возврат в прерванную программу.
Сохранение и восстановление состояния процессора и содержимого регистров называют операцией контекстного переключения.
Последовательность обработки прерываний (собственно обработка прерывания)
1) установление факта прерывания и запоминание прерванного процесса
2) переход к выполнению и выполнение программы обработки прерывания;
Передача управления прерывающей программе (в счетчик команд заносится начальный адрес подпрограммы обработки прерываний, а в соответствующие регистры – информация из слова состояния процессора).
Обработка прерывания.
Восстановление прерванного процесса и возврат в прерванную программу.
Здесь определяется источник прерывания (его номер, например, прерывание с номером 9 - прерывание от клавиатуры, которое генерируется при нажатии и при отжатии клавиши) и вызывается соответствующий обработчик прерывания. Обработчик прерываний – программа обработки прерывания, являющаяся частью ОС, предназначенная для выполнения ответных действий на условие, вызвавшее прерывание.
Адреса программ, соответствующих различным прерываниям, собраны в таблицу, которая называется таблицей векторов прерываний. В реальном режиме микропроцессора таблица находится в первом килобайте оперативной памяти. Под каждый вектор отведено 4 байта (2 байта под адрес сегмента, в котором находится программа-обработчик, и 2 байта под смещение начала программы-обработчика прерывания от начала кодового сегмента ), т.е. в таблице может содержаться 256 векторов.
Далее процессор считывает номер вектора прерывания. Сохраняет в стеке содержимое регистра флагов, сбрасывает флаг прерываний IF и помещает в стек адрес возврата в прерванную программу (регистры CS и IP). После этого процессор извлекает из таблицы векторов прерываний адрес подпрограммы обработки прерываний для данного устройства и приступает к ее выполнению.
Далее выполняется сама программа обработки прерывания. (Она тоже может быть прервана поступлением запроса от более приоритетного источника. Все источники прерывания имеют приоритеты.)
3) возврат управления прерванной программе.
Необходимо привести стек в состояние, в котором он был сразу после передачи управления данной процедуре. Для этого программист должен указать необходимые действия по восстановлению регистров и очистке стека.
Вопросы 47,48 чисто по лекции:
Последовательность действий при обработке прерываний
Первичное аппаратное распознавание типа прерывание. Если прерывания запрещены, продолжается текущая программа. В противном случае вызывается диспетчер прерываний и в зависимости от поступившей в процессор информации (вектор прерывания, приоритет и др.) производится вызов процедуры обработки прерывания.
Сохраняется некоторая часть контекста прерванного потока, которая позволит возобновить его исполнение после обработки прерывания (обычно слово состояния процессора – регистр EFLAGS в Pentium, регистры общего назначения). Может быть сохранен и полный контекст, если ОС обслуживает прерывание со сменой процесса.
В счетчик команд загружается адрес процедуры обработки прерывания и устанавливается новое PSW, которое определяет привилегированный режим работы процессора при обработке прерывания.
Маскированием прерываний временно запрещаются прерывания, чтобы не образовалась очередь вложенных друг в друга потоков одной и той же процедуры.
После обработки прерывания ядром операционной системы, прерванный контекст восстанавливается (частично аппаратно – PSW, содержимое счетчика команд, частично программно – извлечение данных из стека), снимается обработка прерываний данного типа и работа потока возобновляется с прерванного места.