В. Столлингс - Операционные системы (1114679), страница 15
Текст из файла (страница 15)
На этом уровне происходит позиционирование считывающих головок и физическая передача блоков данных. Д 1х. Для планирования работы и уведомления процесса о завершении овня 5. ззпрошенно пе й о рации уровень 6 использует компоненты уровня Уровень 7. Создает логическое адресное пространство процессов.
Уровень Организует виртуаль альное адресное пространство в виде блоков, которые моГут перемещаться между осно основной памятью и вспомогательным запоминающим устройством. Широко распространены следующие три схемы: использование страниц фикс1 по ф " 1рованного размера, использование сегментов пеРеменного размера и ком мбинация тех и других. Если нужный блок отсутствует в основно сновной памяти то данный уровень передает уровню 6 запрос о передаче этого блока.
До сих пор речь по речь шла только о взаимодействии операционной системы с ОПЕССОРОМ. ОМ О Компоненты операционной системы, относящиеся к восьмому и б дее Высоким уровням, вс-..„п Р с-.упают во взаимодействие с внешними объектами, такими, как перифери ные фе й устройства а возможно — с сетью и компьютерами, 1 подключенными к сети. Объектами этих уровней являются логические именоэаняые о ъекты, кото б к торые могут совместно использоваться несколькими процессамн, исполняю ющимися на одном или на нескольких компьютерах. ° Уровень 8. Отвечает за обмен информацией и сообщениями между процессами.
Н м уровне происходит более богатый обмен информацией, чем на уровне 5, который обеспечивает работу первичного сигнального механизма для си хро зации процессов. Одним из наиболее мощных инструментов подобного типа является конвейер, представляющий собой логический канал передачи данных между процессами. Конвейер определяется как канал, передающий вывод одного процесса на вход другого; кроме того, он может быть использован и для связи с процессом внешних устройств или файлов. Эта концепция рассматривается В Главе 6, "Взаимоблокировка и голодание". ° Уровень 9. Обеспечивает долгосрочное хранение файлов. На этом уровне данные, хранящиеся на вспомогательном запоминающем устройстве, рассматриваются как абстрактные объекты переменной длины, в противоположность аппаРатно-зависимому рассмотрению вторичной памяти как набора дорожек, секто- РОВ и блоков фиксированного размера, присущему уровню 6.
Уровень 10. Предоставляет доступ к внешним устройствам с помощью ~тандартных интерфейсов. УРОВень 11. Поддерживает связь между внешними и внутренними идентификат Рами системных ресурсов и объектов. Внешний идентификатор — это имя, которое может использоваться приложением или пользователем. нутре м. В нний идентификатор — это адрес или другой индикатор, используемыи нижними урознями операционной системы для обнаружения объекта и управления им.
~тз сэязь поддерживается с помощью каталога, который включае включает в себя не только Взаимное отображение внешних и внутренних идентификаторов, но и такие характеристики, как, например, права доступа. Р"ВЕНЬ 12. Предоставляет пОЛНофунКцИОНаЛЬнЫЕ СРедства поДдеРжки цессов.
Возможности этОГО урОВня намнОГО преВОсхОдят ВОзмОжнОсти Окончание таил. л.4 Пример операций Объекты вень Название ;з аве Приастававкь, возобновле- ние выполнения, ожидание и передача сигнала Вызов, маскирование, повтор Праграммы обработки пре- рываний Процедуры, стеки вызова, двсплевз Стек вычисления, интерпрета- тор микропрограмм, данные Прерывания ВызОВ, ВазВрат Процедуры Загрузка, сохранение, сложение, вычитание, ветвление Набор команд Очистка, пересылка, активация Регистры, пипазы„шивы и т.п. Злектронные схемы 'ровень Название 3 Объекты Пример операций Оболочка Пользовательская среда про- граммирования Инструкции командно, ', языка оболочки Завершение процесса, приостановка, возобно ние работы Пользовательские процессы Пользовательские процессы Каталоги Каталоги Создание, удаление, подключение, поиск Открытие, закрытие„у чтение, запись Устройства Внешние устройства (принтер, монитор, клавиатура) Файлы Файловая система Создание, удаление, открытие, закрытие, ние, запись ° р,рхитектура микроядра.
ь Многопоточность Симметричная многопроцессорное Коммуникации Конвейеры Создание„удаление, открытие, закрытие, чтение, запись Распределенные операционные системы. Объектно-ориентированный дизайн. Виртуальная память Сегменты. страницы Чтение, запись, выборка: Локальная вторичная память Блоки данных, каналы устройств Чтение, запись, распреде-. ление, выборка .О Часть 1. Основные поня уровня ь, на котором по е дд рживается.трлъко содержимое регистров ц сора, имеющее отношение к и На уровне 12 эта ин пРоцессу, и логика диспетчеризации про Формация используется для упорядоченного п а процессами.
Сю а же д е относится и виртуальное адресное пространс цессов, список объектов и п роцессов, с которыми оно может взаимод вать, и правила, ограничиваю ие это ющие это взаимодействие; параметры, пе ные процессам при их соз ан р могут быть использованы операционн й ые здании, и прочие характеристики про р з ан цессов, ' о системои для управления. '; ° Уровень 13 Обеспечивает взаимодействие е операционной системы с и " вателем. Этот уровень называется оболо " ( и П), чкои ~я е ~, так как он от пользователя от деталей внутреннего уст й ро ства операционной сис представляет ее пользователю как набор серн ервисов.
Оболочка принима манды пользователя или инструкции управлен л ния заданиями, интер ет их, создает необходимые процессы и управля . Н ляет ими. а этом урони~'" пример, может быть реализован граФнчесх фей „ ий интерфе с„предоставля' " пользователю возможность выбора команды с помощью меню и о жающий результаты работы на экране. Описанная гипотетическая модель операц й рационно системы дает пред вне о ее структуре и может служить руководством по реализации конк шерационной системы.
В процессе изучени я изложенного в настоящей еурса читателю будет полезно время от вре ремени возвращаться к этой стр побы лучше понимать, как от ел д ьные компоненты операционных систем ' юсятся друг с другом. абли а 2А. И ц А. Иерархическая модель операционной еиетемыз зэ :заьзтрилаваннал абласть представляет аппаратнае обеспечение. Примитивные Примитивные процессы, себ процессы мафары, список процессов .4. ХАРАКТЕРИСТИКИ СОВРЕМЕННЫ~':~::.'.-' ' '"::.=." ОПЕРАЦИОННЫХ- СИСТЕМ Год за годом происходит эволюция структуры и возможностеи операционных систем. В последнее время в состав новых операционных систем и новых версий уже существующих операционных систем вошли некоторые структурные элементы, которые внесли большие изменения в природу этих систем.
Современные операционные системы отвечают требованиям постоянно развивающегося аппаратного и программного обеспечения. Они способны управлять работой многопроцессорных систем, работающих быстрее обычных машин, высокоскоростных сетевых приспособлений и разнообразных запоминающих устройств, число которых постоянно увеличивается. Из приложений, оказавших влияние на устройство операционных систем, следует отметить мультимедийные приложения„средства доступа к 1п1егпе$, а также модель клиент/сервер. Неуклонный рост требований к операционным системам приводит не только к улучшению их архитектуры, но и к возникновению новых способов их организации. Б экспериментальных и коммерческих операционных системах были опРобованы самые разнообразные подходы и структурные элементы.
нты. большинство из которых можно объединить в следующие категории. Пад дисплеем в данкам случае падразумевается стек ссылак на записи активации например, раздел УА в книзе Аха А., Сети Р., Ульман Д. Компиляторы: принципы, техно~гни я инструменты.
— М.: Издательский дам "Вильямс", л001.) — Прим. Ред. Глава 2. Обзор операционных систем Отличительной особенностью большинства операционных систем на яшний день является большое монолитное ядро. Ядро операционной си еспечивает большинство ее возможностей, включая планирование, ра ~йловой системой, сетевые Функции, работу драйверов различных устро ' ранление памятью и многие другие.
Обычно монолитное ядро Реализуется; иный процесс, нсе элементы которого используют одно и то же адресное,' Ранство. В архитектуре микроядра ядру отводится лишь несколько жыых Функций, н число которых входят работа с адресными пространс еспечение взаимодействия между процессами (1п1егргосевв сопппцп1саЦ С) и основное планирование. Работу других сервисов операционной си, еспечивают процессы, которые иногда называют серверами. Эти процесс скаются в пользовательском режиме и микроядро работает с ними так же,'; с другими приложениями.
Ракой подход позволяет разделить задачу раз ~ операционной системы на разработку ядра и разработку сервера. Се ~жно настраивать для требований конкретных приложений или среды. ние в структуре системы микроядра упрощает реализацию системы, обее ет ее гибкость, а также хорошо вписывается в распределенную среду. ски микроядро взаимодействует с локальным и удаленным сервером по той же схеме, что упрощает построение распределенных систем. Многопоточность (гпи11ЙЬгеаЖпд) — это технология, при которой про шолняющий приложение, разделяется на несколько одновременно выпо ' дх потоков.
Ниже приведены основные различия между потоком и проц ° Поток. Диспетчеризуемая единица работы, включающая контекст ра (куда входит содержимое программного счетчика и указателя вер стека), а также сною собственную область стека (для организации подпрограмм и хранения локальных данных). Команды потока выпо ся последовательно; поток может быть прерван при переключении сора на обработку другого потока4. ° Процесс. Набор из одного или нескольких потоков, а также связ этими потоками системных ресурсов (таких, как область памяти, в ко, входят код и данные, открытые Файлы, различные устройства). Эта' цепция очень близка концепции выполняющейся программы. Ра приложение на несколько потоков, программист получает все преим модульности приложения и возможность управления связанными с жением временными событиями.