- •Часть 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_Поясните роль сигналов как синхронизирующих объектов.
9)_Ч6Опишите назначение и функции классического драйвера.
Традиционные драйверы стали называть аппаратными драйверами, низкоуровневыми или драйверами устройств. Низкоуровневые операции составляют фундамент, на котором можно построить целый набор операций в драйверах более высоких уровней. Так повышается гибкость и расширяемость функций управления УВВ: вместо жесткого набора функций, сосредоточенного в единственном драйвере, администратор ОС теперь может выбрать требуемый набор функций, установив нужный высокоуровневый драйвер или несколько, работающих над одним аппаратным драйвером.
10)_Ч6Опишите состав и назначение ФС, а также задачи ФС разных классов ОС. Состав и назначение ФС. ФС – это часть ОС, включающая: • совокупность всех файлов на диске или другом носителе для компьютера; • наборы правил, конструкций и структур данных, используемых для хранения файлов и управления ими (каталоги файлов, дескрипторы файлов, таблицы распределения занятого и свободного пространства на диске). Эти наборы определяют конкретный тип ФС; • комплекс системных программных средств, реализующих различные операции над файлами (создание, удаление, чтение, запись, именование, поиск и другие). ФС для ОС семейства UNIX представляет совокупность всех файлов в разделе диска (либо на устройстве) или логическую единицу монтирования (командой mount в отдельный каталог дерева каталогов). ФС позволяет программам обходиться набором достаточно простых операций для выполнения действий над некоторым абстрактным объектом, представляющим файл. При этом программистам не нужно иметь дела с деталями действительного расположения данных на диске и другими низкоуровневыми проблемами ввода-вывода. ФС распределяет дисковую память, поддерживает именование файлов, отображает их имена в соответствующие адреса во внешней памяти, обеспечивает доступ к данным, поддерживает разделение, защиту и восстановление файлов. Таким образом, ФС играет роль промежуточного слоя, экранирующего все сложности физической организации долговременного хранилища данных, и создающего для программ более простую модель этого хранилища, а также предоставляя им набор удобных команд для манипулирования файлами. Задачи ФС разных классов ОС. Задачи, решаемые ФС, зависят от способа организации вычислительного процесса в ОС. Функции наиболее простых ФС в однопользовательских однопрограммных ОС (MS-DOS) нацелены на решение следующих задач: • именование файлов; • программный интерфейс для приложений; • отображение логической модели ФС на физическую организацию хранилища данных; • устойчивость ФС к сбоям питания, ошибкам аппаратных и программных средств. В однопользовательских мультипрограммных ОС задачи ФС усложняются, к упомянутым задачам добавляется задача поддержки совместного доступа к файлу из нескольких процессов. В частности, в ФС должны быть средства блокировки файла или его частей, предотвращения гонок, исключение тупиков, согласование копий и т.п. В ФС многопользовательских ОС появляется еще и задача защиты файлов от несанкционированного доступа. Наиболее сложными становятся функции ФС сетевых ОС
11)_Ч6 Опишите различные типы файлов, которые поддерживают ФС. Типы файлов. ФС поддерживают несколько функционально различных типов файлов, в число которых входят • обычные файлы (просто файлы) – содержат информацию произвольного характера, которую заносит в них пользователь или которая образуется в результате выполнения системных или пользовательских программ. ОС обычно не ограничивает и не контролирует содержимое и структуру обычного файла, поскольку они определяются работающим с файлом приложением. Все ОС должны уметь распознавать хотя бы один тип файлов – их собственные исполняемые файлы; • файлы-каталоги – содержат системную справочную информацию о наборе файлов, сгруппированных пользователем или ОС по какому-либо признаку. Во многих ОС в каталоги могут входить другие каталоги, за счет чего и образуется древовидная структура каталогов, удобная для поиска. Каталоги устанавливают соответствие между именами файлов и их характеристиками (тип, расположение на диске, права доступа, даты создания и модификации), используемыми ОС для управления ими; • специальные файлы – это фиктивные файлы, ассоциированные с УВВ, используемые для унификации механизма доступа к файлам и внешним устройствам. Они позволяют пользователю выполнять операции ввода-вывода с помощью обычных команд работы с файлами. Эти команды обрабатываются сначала программами ФС, а затем на некотором этапе выполнения запроса преобразуются ОС в команды управления соответствующим УВВ; • именованные конвейеры. Конвейеры как средство межпроцессного обмена впервые появились в ОС UNIX. Конвейер (pipe) представляет собой буфер в ОП, поддерживающий очередь байтов по дисциплине FIFO. Для программиста, использующего системный вызов pipe, этот буфер выглядит как безымянный файл для записи-чтения. Но использовать данный конвейер могут только родственные процессы, имеющие общего родителя, создавшего этот конвейер. Появившиеся в результате развития этого механизма именованные конвейеры имеют имя, которое является записью в каталоге ФС. Поэтому они пригодны для обмена данными уже между двумя произвольными процессами или потоками этих процессов; • отображаемые в память файлы. Отображение файла в ВАП процесса применяется для упрощения программирования, позволяет работать с данными файла с помощью адресных указателей как с обычными переменными программы, без использования несколько громоздких файловых функций read/write (и явного описания необходимой области файла). При отображении файлов в память широко используется механизм виртуальной памяти и другие [1-4]. Иерархическая структура ФС. Пользователи обращаются к файлам по их именам, но с увеличением числа файлов в линейной (одноуровневой) структуре поиск файлов становится затруднительным. Иерархическая организация пространства имен позволяет облегчить эту работу за счет распределения файлов по группам (каталогам). Образуется несколько уровней каталогов, где каталог нижележащего уровня может входить в каталог вышележащего уровня. Граф, описывающий иерархию каталогов, может быть • деревом, если файл может входить только в один каталог; • сетью (с петлями/циклами), если файл может одновременно входить в несколько каталогов. При иерархической организации пользователю при поиске файла достаточно помнить только принадлежность его к определенному каталогу или нескольким похожим по смыслу
12)_Ч6Опишите имена файлов, иерархическую структуру и монтирование ФС, логическую организацию файла. Иерархическая структура ФС. Пользователи обращаются к файлам по их именам, но с увеличением числа файлов в линейной (одноуровневой) структуре поиск файлов становится затруднительным. Иерархическая организация пространства имен позволяет облегчить эту работу за счет распределения файлов по группам (каталогам). Образуется несколько уровней каталогов, где каталог нижележащего уровня может входить в каталог вышележащего уровня. Граф, описывающий иерархию каталогов, может быть • деревом, если файл может входить только в один каталог; • сетью (с петлями/циклами), если файл может одновременно входить в несколько каталогов. При иерархической организации пользователю при поиске файла достаточно помнить только принадлежность его к определенному каталогу или нескольким похожим по смыслу. Имена файлов. Все типы файлов имеют различные по назначению символьные имена: • простые (короткие), идентифицирующие файл в пределах каталога; • составные (полные) – длинные, идентифицирующие файл в пределах дерева каталогов; • относительные, идентифицирующие файл в пределах «текущего» каталога. Монтирование. В общем случае ВС может иметь несколько дисковых устройств. Более того, одно физическое дисковое устройство средствами ОС может быть представлено в виде нескольких логических путем разбиения общего дискового пространства на разделы. Все это усложняет организацию хранения файлов в системе, имеющей несколько устройств внешней памяти. Возможны два варианта реализации. Первый вариант состоит в том, что на каждом устройстве файлы размещаются иерархически автономно, с собственным деревом каталогов. Для однозначной идентификации файла пользователь должен перед составным символьным именем указывать идентификатор логического устройства (С:\primer\1\100\file17.doc). Второй вариант представляет возможность пользователю самому объединять разрозненные иерархии файлов на различных устройствах (и описывающие их деревья каталогов) в одну иерархию и единое дерево каталогов. Такая операция называется монтированием. Среди всех логических дисковых устройств ОС выделяет одно устройство, называемое системным. Система файлов на нем назначается корневой. На ее дереве каталогов выбирается каталог монтирования, который назначается корневым каталогом другого подключаемого дерева. Через этот каталог монтируемое дерево становится поддеревом единого дерева. После монтирования общей ФС для пользователя нет логической разницы корневой и смонтированной ФС, а именование файла производится без указания идентификатора логического устройства
тот же 12 вопрос.продолжение Логическая организация файла. В общем случае данные в файле имеют некую логическую структуру. Поддержка логической структуры может быть возложена на приложение или на ФС. В первом случае файл представляется ФС неструктурированной последовательностью байтов, а истинный формат известен только заинтересованному приложению. Во втором случае ФС видит уже структурированный файл как упорядоченную последовательность логических записей. ФС может использовать два способа доступа к логическим записям: • последовательный – прохождение и поиск с начала; • прямой – сразу по номеру записи. Очевидно, что ОС не может поддерживать все возможные способы структурирования данных в файле, поэтому в тех ОС, где такая поддержка вообще есть, она существует для небольшого числа широко распространенных схем логической организации файла (записи фиксированной длины, переменной длины неиндексированные или индексированные). К записям фиксированной длины может быть организован последовательный доступ или прямой доступ по номеру записи. Файлы сзаписям переменной длины, доступ к которым осуществляется последовательно, называются неиндексированными (последовательными). При необходимости прямого доступа к записям переменной длины создают индексированные файлы, где записи имеют одно или несколько ключевых (индексных) полей и могут адресоваться значениями этих полей. Все сказанное относится преимущественно к обычным файлам. Другие типы файлов (например, файлы-каталоги) обладают определенной структурой, известной ФС [2]
14)_Ч6. Опишите физическую организацию (размещение) и адресацию файла. Физическая организация и адресация файла. Важным компонентом физической организации ФС является физическая организация файла – способ размещения файла на диске. Основными критериями эффективности физической организации файлов являются: • скорость доступа к данным; • объем адресной информации файла; • степень фрагментированности дискового пространства; • максимально возможный размер файла. Непрерывное размещение – простейший вариант физической организации, когда файлу предоставляется последовательность смежных кластеров. Его достоинства: высокая скорость доступа, минимум объема адресной информации, отсутствие ограничения максимального размера. Недостатки: сложность поддержки увеличения размера, подверженность фрагментации. Поэтому на практике используются методы размещения файла в несмежных областях диска: • в виде связанного списка кластеров, когда в начале каждого кластера содержится указатель на следующий кластер. Достоинства: адресная информация минимальна (адрес первого кластера файла), удобство увеличения размера файла, отсутствие фрагментации. Недостатки: последовательный доступ; из-за того, что одно слово израсходовано на номер следующего кластера, объем данных кластера уже не равен 2k, а многие программы читают данные именно кластерами размера 2k; • с использованием связанного списка индексов. Это модификация предыдущего метода, когда номер первого кластера запоминается в записи каталога, где хранятся характеристики этого файла. Остальная адресная информация отделена от кластеров файла. С каждым кластером диска связывается некоторый элемент – индекс. Индексы располагаются в отдельной области диска. Например, в MS-DOS это FAT, занимающая один кластер. Когда память свободна, все индексы имеют нулевое значение. Если некоторый кластер N назначен некоторому файлу, то индекс этого кластера становится равным либо номеру M следующего кластера данного файла, либо принимает специальное значение – признак последнего кластера файла. А индекс предыдущего кластера файла принимает значение N, указывая на вновь назначенный кластер; • простое перечисление номеров кластеров файла. Этот перечень и служит адресом файла. Недостаток: длина адреса зависит от размера файла. Достоинства: высокая скорость доступа к любому кластеру ввиду прямой адресации, отсутствие фрагментации. Чтобы корректно принимать решение о выделении файлу набора кластеров, ФС должна отслеживать информацию о состоянии всех кластеров диска (свободен/занят). Эта информация может храниться как отдельно от адресной информации файлов, так и вместе с ней [1-6]
