
- •1. Определения операционных систем
- •2. Схема взаимодействия ядра персонального компьютера с пользователем.
- •3. Классификация операционных систем.
- •4. Особенности методов построения операционных систем.
- •5. Атрибуты и права доступа к файлу.
- •6. Методы распределения памяти.
- •7 Файловая система в структуре операционной системы.
- •8 Типы и имена файлов.
- •9. Понятие виртуального ресурса и машины.
- •10. Понятие и основные виды интерфейсов.
- •11. Состояние процессов в системах с абсолютными и относительными приоритетами.
- •12. Вытесняющие и невытесняющие алгоритмы планирования процессов.
- •13. Понятие критической секции при синхронизации процессов.
- •14. Тупиковые ситуации при синхронизации процессов.
9. Понятие виртуального ресурса и машины.
Виртуальные системы позволили сделать новый шаг в развитии операционных систем в направлении повышения их эффективности и развития диалоговых режимов в сочетании с режимом пакетной обработки.
Причины появления виртуальных систем. Вычислительные системы III поколения обеспечены современными операционными системами, которые характеризуются многофункциональностью, широким охватом областей применения, выключением всех режимов функционирования.
Основным свойством таких операционных систем является их универсальность. Обеспечение универсальности — важнейшее требование на современном этапе развития вычислительных систем. Универсальность операционных систем определяется прежде всего обеспечением множественного доступа к отдельным ресурсам вычислительной системы, а также к системе в целом. В режиме пакетной обработки множественный доступ выражается в одновременной обработке нескольких заданий (потоков заданий); в режиме реального времени — в одновременном функционировании нескольких процессов, обрабатывающих данные, которые поступают в реальном масштабе времени; в диалоговом режиме — в одновременном обслуживании нескольких терминалов пользователей.
Основой, на которой строится множественный доступ, является мультипрограммный режим работы вычислительной системы, обеспечиваемый операционной системой. Операционные системы обычно обеспечивают возможность одновременного функционирования нескольких режимов, например диалогового режима и режима пакетной обработки. В связи с этим указанные режимы строятся на базе общей мультипрограммной управляющей программы (рис. 9).
Рис. 9. Структура «традиционных» ОС III поколения
Диалоговые режимы обычно реализуются на базе системы разделения времени (СРВ), одновременно обслуживающей большое число пользователей удаленных или локальных терминалов. В результате включения большого числа обеспечиваемых функций и режимов «традиционные» операционные системы потеряли концептуальную «чистоту» и структурное единство, что нередко приводило к значительному и неоправданному росту их объемов и увеличению доли времени, теряемого на управленческие функции. Структура таких операционных систем породила ряд проблем.
1. Обеспечение пакетного и диалогового режимов тесно переплетается в одной управляющей программе (УП), которая становится сложной из-за одновременного функционирования обоих режимов. Возникают трудности при разработке, так как изменения, вносимые в программы для одного режима, могут повлиять на функционирование другого режима. Трудности при эксплуатации — аварийные ситуации одного режима влияют на функционирование другого режима. Управляющая программа становится громоздкой и плохообозримой.
2. Пользователь отделен от вычислительной машины сложной «прослойкой» управляющей программы. Взаимодействие пользователя с техническими средствами осуществляется через сложные алгоритмы УП; УП теряет «прозрачность».
3. Использование основной памяти приводит к возникновению проблемы «фрагментации» памяти, решение которой требует странично-сегментной организации памяти.
4. Интенсивность использования отдельных ресурсов требует дальнейшего её повышения. В первую очередь это относится к центральному процессору и реальной оперативной памяти.
5. Объемы отдельных ресурсов являются недостаточными. Желательно расширение объема ресурса, что относится в первую очередь к основной памяти.
6. Часто возникают потребности на одной реальной ЭВМ использовать одновременно различные операционные системы, или несколько вариантов одной и той же I операционной системы, или независимые программы, что не может быть реализовано «традиционной» УП. I Введение концепции логического или виртуального ресурса, а также виртуальной машины значительно продвинуло вперед решение этих проблем. Концепция виртуального ресурса (машины), появившаяся в 60-х годах, в настоящее время распространена достаточно широко. Однако она требует дальнейшего развития и изучения. Виртуальные ресурсы обычно соответствуют некоторым реально существующим (программным или аппаратным). Их моделирование осуществляется программно-аппаратным или чисто программным способом. Использование виртуального ресурса осуществляется через более простой и/или более эффективный интерфейс. Использование виртуального ресурса позволяет снять ряд «досадных» ограничений или недостатков, которыми обладают реальные ресурсы. Примером может служить введение понятия виртуальной памяти, размер которой считается практически неограниченным. В результате при разработке программного проекта не возникает задачи размещения программ и данных в ограниченном объеме реальной памяти. Это ограничение снимается также и для операционной системы, что может повысить ее эффективность.
Концепция виртуальной машины.
Обобщение понятия виртуального ресурса приводит к концепции виртуальной машины. Виртуальная машина (ВМ) является функциональным эквивалентом реальной ЭВМ, который моделируется при помощи реальных технических средств и совокупности управляющих программ, называемых монитором виртуальных машин (МВМ). Конфигурация виртуальной машины отличается от конфигурации реальной ЭВМ. На одной реальной ЭВМ может функционировать несколько виртуальных машин. Программное обеспечение виртуальных машин, основой которого является МВМ, представляет собой систему виртуальных машин (СВМ).
Система виртуальных машин обеспечивает новый принцип параллелизма (мультипрограммирования) в работе реальной ЭВМ. Каждому пользователю предоставляется отдельная ВМ, в которой может функционировать:
— версия операционной системы;
— собственная системно-независимая программа;
— подсистема СВМ„ например подсистема диалоговой обработки (ПДО);
— подсистема операционной системы, основанная на концепции ВМ.
Пользователи отдельных ВМ полностью независимы (рис. 3.10).
Система виртуальных машин решает проблемы «традиционных» операционных систем, упомянутые ранее.
1. Введение концепции виртуальной машины позволяет уменьшить взаимное влияние различных режимов использования вычислительной системы. Упрощается управляющая программа.
2. Пользователь имеет иллюзию обладания отдельной ЭВМ. В действительности же он обладает отдельной виртуальной машиной. Управляющая программа в большей степени «прозрачна».
3. Виртуальная основная память позволяет снизить остроту проблемы «фрагментации» памяти.
4. Уровень реального мультипрограммирования повышается. В результате возрастает интенсивность использования ресурсов, в первую очередь ЦП и оперативной т памяти.
5. Виртуализация расширяет объем ресурсов, в первую очередь основной памяти.
6. На одной реальной ЭВМ можно выполнить одновременно несколько операционных систем, их версий, подсистем, системно-независимых программ.
Рис. 10. Система виртуальных машин
Концентрация виртуального ресурса. Конфигурация виртуальной машины включает в себя виртуальный процессор; виртуальную память (основную память); виртуальные каналы ввода-вывода; виртуальные устройства ввода-вывода; виртуальный пульт оператора.
Виртуальный процессор (виртуальный центральный процессор) моделируется на реальном процессоре путем выделения каждой ВМ части времени реального процессора по принципу квантования.
Виртуальная память (ВП) моделируется на реальной оперативной памяти с использованием средства динамического преобразования адресов. Адресное пространство виртуальной памяти может превышать адресное пространство реальной памяти. Оно ограничивается максимально допустимым размером адреса в системе. С точки зрения операционной системы, выполняемой в виртуальной машине, виртуальная память рассматривается как основная. Операционная система может организовать собственную виртуальную память. Концепция виртуальной памяти используется не только в рамках концепции виртуальной машины, но часто и самостоятельно в операционных системах (операционные системы с виртуальной памятью).
Виртуальные каналы ввода-вывода моделируются либо путем разделения реальных каналов ввода-вывода, либо путем закрепления (распределения) реального канала за виртуальной машиной. Аналогично моделируются и устройства управления. Способ моделирования зависит от того, как моделируются виртуальные устройства ввода-вывода.
Виртуальные устройства ввода-вывода моделируются путем разделения, накопления или закрепления.
Разделение используется для моделирования накопителей на магнитных дисках (НМД). Разделение означает одновременное использование реального НМД несколькими виртуальными машинами. Путем разделения одного реального НМД моделируется несколько виртуальных магнитных дисков того же типа. При этом реальный том разбивается на участки, называемые мини-дисками, содержащими целое число смежных цилиндров.
Накопление используется для обеспечения виртуальных машин низкоскоростными устройствами последовательного доступа. Накопление моделирует реальное устройство в области накопления, выделяемой на НМД. Входные файлы предварительно считываются МВМ в область накопления с реальных устройств. Затем область накопления используется для моделирования виртуальных устройств. Выходные файлы, предназначенные для устройств вывода, предварительно записываются в область накопления, а затем МВМ осуществляет их реальный вывод. Допускается считывание выходных файлов непосредственно из области накопления без вывода на реальное устройство.
Закрепление (распределение) означает выделение реального устройства в полное распоряжение виртуальной машины. Может применяться для любого устройства, однако применяется в основном для накопителей на магнитных лентах (НМЛ), абонентских пунктов и других устройств, не обеспеченных в СВМ.
Виртуальный пульт оператора использует либо пультовое устройство реальной ЭВМ, либо абонентский пункт (локальный или удаленный). Посредством виртуального пульта оператора выполняются функции, аналогичные функциям пульта реальной ЭВМ, а также осуществляется связь с операционной системой в виртуальной машине.