- •Часть 3
- •1)_Ч3 Что понимают под архитектурой, структурой и составом ос?
- •2)_Ч3 Каков типовой состав ос?
- •3)_Ч3 Представьте классическую архитектуру ос (на основе ядра), поясните состав и функции ядра и вспомогательных модулей ос.
- •4)_Ч3 Какие режимы, обеспечивающие привилегии ос, должна поддерживать аппаратура компьютера.
- •5)_Ч3 Как обеспечивается подчиненность приложений операционной системе?
- •6)_Ч3 Как влияет на возможности защиты поддержка многоуровневой иерархии привилегий?
- •7)_Ч3 Какая задержка переключений процессора характерна для классической архитектуры ос?
- •9)_Ч3 Перечислите особенности слоев и межслойных интерфейсов многослойной структуры ос.
- •10)_Ч3 Какие достоинства имеет многослойная структура ос?
- •11)_Ч3 Перечислите типовые слои ядра и опишите их функции.
- •8)_Ч3 Изобразите многослойную структуру ос и поясните ее основные особенности.
- •12)_Ч3Опишите особенности слоя менеджеров ресурсов ядра ос.
- •13)_Ч3Какие способы взаимодействия слоев используются в классической архитектуре?
- •14)_Ч3к чему ведет увеличение/уменьшение числа слоев ядра ос?
- •15)_Ч3Перечислите и охарактеризуйте типовые средства аппаратной поддержки ос.
- •16)_Ч3Почему одна и та же ос не может без изменений устанавливаться на компьютеры с другим типом процессора или способом организации всей аппаратуры?
- •17)_Ч3Опишите особенности построения машинно-зависимых компонент и переносимости ос.
- •18)_Ч3Что такое «микроядро» и какие модули входят в его состав?
- •19)_Ч3Что такое «серверы ос» в архитектуре на основе микроядра, в каком режиме они работают?
- •20)_Ч3Перечислите и поясните особенности архитектуры ос на основе микроядра.
- •21)_Ч3Поясните механизм обращения к функциям ос, оформленным в виде серверов архитектуры на основе микроядра.
- •22)_Ч3Опишите достоинства и недостатки архитектуры ос на основе микроядра.
- •23)_Ч3Какая задержка переключений процессора характерна для архитектуры ос на основе микроядра?
- •24)_Ч3Опишите варианты гибридного (смешанного) и модульного ядра.
- •25)_Ч3Опишите варианты наноядра, пикоядра и экзоядра.
- •26)_Ч3в чем суть совместимости различных ос и особенности различных ее видов?
- •27)_Ч3 Для чего в прикладных программных средах выполняется трансляция библиотек?
- •28)_Ч3 Опишите вариант реализации множественных прикладных программных сред на основе трансляторов системных вызовов.
- •29)_Ч3 Опишите вариант реализации множественных прикладных программных сред на основе поддержки нескольких равноправных api.
- •30)_Ч3 Опишите вариант реализации множественных прикладных программных сред на основе концепции микроядра.
- •31)_Ч3 Что дает наличие в составе ос множественных прикладных программных сред?
- •32)_Ч3 Опишите назначение и типы гипервизоров.
- •33)_Ч3 Опишите технологии виртуализации.
- •34)_Ч3 Опишите примеры гипервизоров и тенденции их развития.
- •1)_Ч5 Чем виртуальные адреса команд и данных отличаются от физических?
- •2)_Ч5 Что такое виртуальное адресное пространство процесса и на какие части оно делится?
- •3)_Ч5 Какие способы структурирования виртуального адресного пространства процесса используются?
- •4)_Ч5 Поясните смысл понятий «максимально возможное вап» и «назначенное вап процесса».
- •5)_Ч5 Что такое «образ процесса»?
- •6)_Ч5 Охарактеризуйте части, на которые делится вап процесса.
- •7)_Ч5 На какие области виртуальной памяти вытеснение не распространяется?
- •9)_Ч5 На какие классы делятся алгоритмы распределения оп и какие из них составляют каждый класс?
- •10)_Ч5 Какие задачи решаются при виртуализации оп?
- •11)_Ч5 Назовите и поясните основные подходы к виртуализации оп.
- •12)_Ч5 Поясните суть свопинга.
- •13)_Ч5Перечислите достоинства и недостатки свопинга.
- •14)_Ч5 Что такое таблица страниц и для чего она используется?
- •15)_Ч5Какую информацию включает дескриптор страниц?
- •16)_Ч5Как выполняется страничное распределение оп?
- •17)_Ч5 Как представляется виртуальный адрес при страничной организации?
- •18)_Ч5Опишите известные стратегии замещения страниц.
- •19)_Ч5Как при страничном распределении оп осуществляется поддержка разделов?
- •20)_Ч5Какие недостатки страничного распределения оп устраняет сегментное распределение?
- •21)_Ч5 Чем сегментное распределение оп отличается от страничного?
- •22)_Ч5Как выполняется сегментное распределение оп?
- •23)_Ч5Как представляется виртуальный адрес при сегментной организации?
- •24)_Ч5 Что такое таблица сегментов и для чего она используется?
- •25)_Ч5 Каковы недостатки и достоинства сегментного распределения оп?
- •26)_Ч5Поясните суть сегментно-страничной организации оп. Сегментно-страничное распределение памяти
- •27)_Ч5Как происходит преобразование виртуального адреса в физический при сегментно-страничной организации
- •28)_Ч5 Как используется модифицированный страничный механизм при сегментно-страничной организации оп?
- •29)_Ч5Дайте краткое сравнение разных алгоритмов распределения оп.
- •30)_Ч5 Для чего нужны разделяемые сегменты памяти и какие варианты их организации существуют?
- •1)_Ч6 Перечислите и кратко поясните задачи ос по управлению увв и файлами.
- •2)_Ч6Опишите необходимость и организацию параллельной работы увв и процессора, согласования скоростей обмена и кэширования.
- •3)_Ч6Опишите необходимость и организацию разделения увв и данных между процессами, логического интерфейса между увв и остальной частью ос.
- •4)_Ч6Опишите необходимость и организацию поддержки широкого спектра драйверов, динамической загрузки и выгрузки драйверов.
- •5)_Ч6Опишите необходимость и организацию поддержки нескольких фс, синхронных и асинхронных операций ввода-вывода.
- •9)_Ч6Опишите назначение и функции классического драйвера.
- •Ч4_Какие действия выполняет ос при порождении процесса?
- •Ч4_Что такое «описатель (дескриптор) процесса»?
- •Ч4_Что такое «описатель потока»?
- •Ч4_Поясните суть и основные типы планирования потоков.
- •Ч4_Чем динамическое планирование потоков отличается от статического?
- •Ч4_Поясните суть и порядок диспетчеризации потоков.
- •Ч4_Опишите состав контекста потока и роль его иерархической организации.
- •Ч4_Как организуются и переупорядочиваются очереди потоков?
- •Ч4_Чем различаются вытесняющие и невытесняющие алгоритмы планирования?
- •Ч4_Чем различаются вытесняющие и невытесняющие алгоритмы планирования?
- •Ч4_Что такое «приоритет потока» и каким он бывает?
- •Ч4_Чем динамические приоритеты потоков отличаются от статических?
- •Ч4_Опишите схему назначения приоритетов в ос WindowsNt.
- •Ч4_Опишите смешанный алгоритм планирования в ос WindowsNt.
- •Ч4_Опишите смешанный алгоритм планирования в ос unixSystemVRelease 4.
- •Ч4_Опишите смешанный алгоритм планирования в os/2.
- •Ч4_Опишите схему изменения приоритетов потоков и величины квантов при планировании в os/2.
- •Ч4_Перечислите события, требующие перераспределения процессорного времени и поясните действия планировщика ос в каждом случае.
- •Ч4_Опишите моменты перепланировки в среде ос рв.
- •Ч4_Какие дополнительные организационные трудности для ос создают прерывания?
- •Ч4_Как осуществляются диспетчеризация и учет приоритетов прерываний в ос?
- •Ч4_Как работает диспетчер прерываний?
- •Ч4_Как соотносятся приоритеты обработчиков прерываний и приоритеты потоков?
- •Ч4_Как согласуется диспетчеризация прерываний с диспетчеризацией потоков?
- •Ч4_Как организована диспетчеризация системных вызовов?
- •Ч4_Опишите схему организации системных вызовов с диспетчером системных вызовов.
- •Ч4_Когда возникают гонки при выполнении потоков?
- •Ч4_Что такое «критическая секция», «критические данные», «взаимное исключение» потоков.
- •Ч4_Опишите особенности и различия организации синхронных и асинхронных системных вызовов.
- •Ч4_Каковы цели взаимодействия процессов и потоков?
- •Ч4_Поясните суть и необходимость синхронизации процессов и потоков.
- •Ч4_Поясните суть использования блокирующих переменных.
- •Ч4_Поясните суть использования семафоров.
- •Ч4_Опишите пример использования семафоров при работе с буферным пулом записи/чтения.
- •Ч4_Поясните суть взаимных блокировок (тупиков).
- •Ч4_Чем тупики отличаются от очередей?
- •Ч4_Опишите идеи и средства выявления и устранения тупиков.
- •Ч4_Поясните сложность синхронизации потоков разных процессов.
- •Ч4_Какие методы используются в ос для разделения синхронизирующих объектов?
- •Ч4_Какие обычные объекты ос могут использоваться как синхронизирующие и какие события переводят их в сигнальное состояние?
- •Ч4_в чем состоит суть сигнального состояния синхронизирующего объекта ос?
- •Ч4_Приведите примеры сигнальных состояний для следующих синхронизирующих объектов: поток, процесс, файл.
- •Ч4_Что такое мьютекс и объект-событие?
- •Ч4_Поясните роль сигналов как синхронизирующих объектов.
26)_Ч5Поясните суть сегментно-страничной организации оп. Сегментно-страничное распределение памяти
Это комбинация страничного и сегментного механизмов управления памятью с реализацией достоинств обоих подходов:
*ВАП процесса разделено на сегменты, что обеспечивает поддержку разных прав доступа;
*перемещение данных между ОП и диском осуществляется страницами.
Для этого каждый виртуальный сегмент и вся физическая память делятся на страницы равного (фиксированного) размера, что позволяет более эффективно использовать ОП, до минимума сокращая фрагментацию. Все виртуальные сегменты образуют одно общее непрерывное линейное ВАП процесса в диапазоне (0000000016 – FFFFFFFF16). Для каждого процесса ОС создает отдельную таблицу сегментов, содержащую описатели (дескрипторы) всех его сегментов. Там указывается начальный линейный (то есть базовый) виртуальный адрес сегмента в ВАП процесса. Деление общего линейного ВАП процесса и ОП на страницы осуществляется так же, как и при страничной организации памяти (размером по 2k).
При порождении процесса в ОП загружается только часть страниц, остальные загружаются по мере необходимости. Время от времени ОС выгружает уже ненужные страницы, освобождая ОП для новых страниц. ОС ведет для каждого процесса таблицу страниц, где указывается соответствие виртуальных страниц физическим.
Базовые адреса таблицы сегментов и таблицы страниц процесса являются частью его контекста. При порождении процесса эти адреса загружаются в специальные регистры процессора и используются механизмом преобразования адресов.
27)_Ч5Как происходит преобразование виртуального адреса в физический при сегментно-страничной организации
Первый этап. Работает механизм сегментации(подобно рис.5.10). Исходный виртуальный адрес вида (номер сегмента, смещение) преобразуется в линейный виртуальный адрес. Для этого по базовому адресу таблицы сегментов и номеру сегмента из таблицы сегментов извлекается дескриптор этого сегмента. Производится анализ полей дескриптора. Если доступ к сегменту разрешен, то вычисляется линейный виртуальный адрес путем сложения базового виртуального адреса сегмента (из дескриптора) и смещения.

Второй этап. Работает страничный механизм. Полученный линейный виртуальный адрес преобразуется в искомый физический адрес. Вначале выделяются его составляющие (номер виртуальной страницы, смещение в странице), понятные страничному механизму. Далее преобразование адреса в физический происходит так же, как при страничной организации (подобно рис.5.6). Номер виртуальной страницы дает адрес дескриптора страницы в таблице страниц, по которому из дескриптора выбирается номер физической страницы. Последний операцией конкатенации присоединяется к смещению.
28)_Ч5 Как используется модифицированный страничный механизм при сегментно-страничной организации оп?
Модифицированный страничный механизм реализует двухуровневую схему, когда ВАП процесса делится сначала на разделы, а затем на страницы. Поэтому на втором этапе сначала вычленяются смещение, номер страницы и (дополнительно) номер раздела. Далее (подобно рис.5.7) по номеру раздела из таблицы разделов выбирается адрес таблицы страниц, из нее по номеру виртуальной страницы – номер физической страницы, к которому операцией конкатенации присоединяется смещение. Модифицированная схема второго этапа преобразования виртуального адреса в физический представлена на рис.5.13.

Подсистема виртуальной памяти может обеспечивать и совместный доступ нескольких процессов к одному и тому же сегменту памяти, который в этом случае называется разделяемой памятью. Страничная организация не позволяет организовать разделяемые сегменты памяти. При сегментной организации надо в дескрипторах виртуального сегмента каждого процесса указать один и тот же базовый физический адрес. При сегментно-страничной организации отображение на одну и ту же область ОП достигается соответствующей настройкой таблицы страниц каждого процесса.
При работе с разделяемыми сегментами памяти ОС должна выполнять еще и свои функции поддержки связанных с ними разделяемых ресурсов – файлов, семафоров и т.п. Они заключаются в поддержке схемы именования ресурсов, проверке прав доступа определенного процесса к ресурсу, отслеживании числа процессов, пользующихся данным ресурсом, для его удаления при ненадобности.
Дескриптор сегмента должен содержать специальное поле, имеющее два значения: shared (разделяемый) или private (индивидуальный). ОС может создавать разделяемые сегменты двумя способами:
*по явному запросу. Прикладной процесс должен выполнить соответствующий системный вызов, по которому ОС создает новый разделяемый сегмент в соответствии с указанными в вызове параметрами (размером сегмента, разрешенными над ним операциями чтение/запись) и идентификатором. Все процессы, выполнившие подобные вызовы с одним и тем же идентификатором, получают доступ к этому сегменту и используют его по своему усмотрению;
*по умолчанию. ОС в определенных ситуациях принимает решение о создании разделяемого сегмента сама.
Разделяемые сегменты выгружаются на диск системой виртуальной памяти по тем же алгоритмам и на основе тех же механизмов, что и индивидуальные
