В. Столлингс - Операционные системы (1114679), страница 18
Текст из файла (страница 18)
° Графические модули. Создают оконный экранный интерфейс и управляют графическими устройствами. Пользовательские процессы Операционная система ЪЧ2К поддерживает четыре основных типа пользовательских процессов. ° Специальные процессы системной поддержки. К таким процессам относятся служебные программы, которые не вошли в операционную систему ЪЧ2К, например процесс входа в систему и диспетчер сессий. Серверные процессы. Другие сервисы %"2К, такие, как журнал регистра- ции событий. Подсистемы среды. Предоставляют приложениям пользователя сервисы %'2К, обеспечивая таким образом среду операционной системы.
Поддерживаются такие подсистемы, как %'1п32, РОЯ1Х и ОЯ/2. В каждую подсистему среды входят динамически компонуемые библиотеки, преобразующие вызовы приложений пользователя в вызовы операционной системы ЪЧ2К. Приложения пользователя. Могут быть одного из пяти типов: ЪПп32, РОЯ1Х, ОЯ/27, Ж1пйоюа 3.1 или МЯ-БОЯ.
Огерационная система ЪЧ2К поддерживает приложения, написанные для 2К* %1Ыожв 98 и нескольких других операционных систем. Эта поддержка обеспечивается с помощью единой и компактной исполнительной системы через ащищснныс подсистемы среды, к которым относятся части операционной сисмы ~~2К, взаимодействующие с конечным пользователем. Каждая из подсистем и "вляется отдельным процессом, а исполнительная система защищает адресвое,— се ° Ространство этих подсистем от вмешательства других подсистем и приложе ч Защищенная подсистема предоставляет пользователю графический Здесь и в лредыдуи~ем пункте имеются е виду только 16-битовые приложения О3~ Прим„ред. Часть 1. Основные по 1'л,.-, л" вз 2. Обзор операционных систем 121 "аблица 2.5. Некоторые области АР1 ЪЪ'~п32 1К1СН97] Безопасность Время Графические примитивы ~томы 'вод с помощью клавиатуры и мыши 'ывод нв печать ~,инамическн компонуемые библиотеки :оммуникации :онсолн перации с буфером обмена ~орожденныв окна Журнал регистрации событий Конвейеры и почтовые ящики Мультимедиа Отладка Процессы и потоки еэервное копирование на магнитную ленту Ресурсы Сети ервнсы нстемная информация правление окнами правление реестром Структурированная обработка исклю Управление памятью Файлы модель клиент/сервер Структура исполнительной системы, защищенных подсистем и п :ений выполнена в соответствии с вычислительной моделью зт/сервер — общепринятой моделью распределенных вычислений, к эсуждается в части б, "Распределенные системы".
Можно сказать, ч "руктура внутренне присуща ЪЧ2К. Каждая подсистема среды и каждая исполнительная служебная подс -ализуется в виде одного или нескольких процессов. Каждый процесс о '"Роса клиента к одной из его служб (например, на обслуживание памяти, ~ние процесса и т.п.).
Клиент, в роли которого может выступать про Риложение или другой модуль операционной системы, производит заир гнтерфейс или интерфейс командной строки,' который определяет внешн ю наполнение операционной системы для конечного пользователя. Кроме~ ~аждая защищенная подсистема обеспечивает свой АР1 для каждой из о >нных сред. Это означает, что приложения, разработанные для опред шерационной среды, могут быть запущены ЪЪ'2К в неизменном виде, так ~удет предоставлен тот интерфейс операционной системы, для которого о ' п1 созданы. Так, 16-битовые приложения для операционной системы ОБ/2';:" ю; шускать в операционной системе ЪЪ"2К без каких-либо изменений, Бо ' о, поскольку Ж2К разработана независимой от платформы (что обеспеч величием уровня аппаратных абстракций), защищенные подсистемы и пр ~ия, которые они поддерживают, должны сравнительно легко нерея одной аппаратной платформы на другую.
Во многих случаях для этого ~ишь обычная перекомпиляция. Наиболее важной из подсистем является И1п32. ЪЪ"1п32 — это АР1, |еализован как для 'й~2К, так и для ЪПпс1ожэ 98. Некоторые возможности по "' ~ы ЪЪ'Ы32 недоступны в ЪЪ'1пйоюэ 98, но все возможности, реализо Чин1ожв 98, идентичны возможностям, имеющимся в Ъч 2К. Некоторые ос ~ункции, которые предоставляет программисту %'ш32, перечислены в табл. 2, ством с сообщения. Это сообщение передается соответствующему серверу через ,интел ь ную систему.
Сервер выполняет запрашиваемую операцию и возает резуль ьтат или информацию о состоянии с помощью другого сообщения, е через исполнительную систему передается клиенту. муществам модели клиенту'сервер можно отнести следующ рое чер ие 8 К преиму Благодаря это той модели упрощается исполнительная система. Можно разрабогать ряд, не АР1 не имеющих конфликтов или дублирования по отношению „исполняющей системе. Новые АР1 могут быть легко добавлены в систему. ° Эта модель с ° ль способствует повышению надежности.
Каждый модуль, реализующяя сервис с исполнительной системы, запускается в виде отдельного процесса, которому о у отводится своя область памяти, защищенная от воздействия других Модуле . й. Более того клиент не может непосредственно обращаться к аппарат- 1 ному обеспечению или изменять содержимое той области памяти, в которой находится и тся исполнительная система, Сбой в работе одного из клиентов не приводит к авари ийному отказу или повреждению остальной части операционной системы.
В этой модели приложениям с помощью локальных вызовов процедур предоставляются однотипные средства обмена информацией с исполнительной системой, что не приводит к потере гибкости. Процесс передачи сообщения скрыт от клиента функциями-заглушками из динамически компонуемых библиотек. При вызове приложением АР1 заглушка пересылает переданные при вызове параме1ры в виде сообщения подсистеме сервера, реализующей этот вызов. ° Эта модель является базой для распределенных вычислений. Обычно распределенные вычисления используют модель клиент/сервер, с реализацией удаленных вызовов процедур посредством распределенных модулей клиентов и серверов, а также путем обмена сообщениями между клиентами и серверами. В операционной системе Ж2К локальный сервер может передавать сообщение от локального приложения-клиента для обработки на удаленном сервере. Клиентам нет нужды иметь информацию о том, как обрабатываются их запросы — локально или удаленно, ведь способ обработки может изменяться динамически в зависимости от загруженности систем и от изменений конфигурации.
Потоки и симметричная многопроцессорность Возможности поддержки потоков и поддержки симметричной многопроцессорности, о которых мы говорили в разделе 2.4, — две важные характеристики операционной системы Ю2К. Ниже перечислены основные возможности поддержки потоков и ЯМР в операционной системе Ж2К 1С1)ЗТ931. Служебные программы операционной системы могут выполняться на любом из свободных процессоров; различные программы могут выполняться одновременно на разных процессорах.
Подробнее об этап модели в приложении к И'2К можно узнать, например, иэ кяиб~Р~ Р. Технология СОМ+. Основы и программирование. — М.: Издательский дом "Вп ~"лчс", 2000. — Прим. Ред. 123 Часть 1. Основные по Рл ава 2. Обзор операционных систем Операционная система ЪУ2К поддерживает выполнение одного п разделенного на несколько потоков. Эти потоки могут выполняться: временно на нескольких процессорах.
° Серверные процессы могут использовать несколько потоков при о менной обработке запросов, поступающих от разных клиентов. ° Операционная система Ч"2К предоставляет механизмы совместного н зовання данных и ресурсов различными процессами„а также гибки" можности обмена информацией между процессами. Объекты Ж1пдо~я 2000 Устройство операционной системы Ж2К в значительной мере осно '' объектна-ориентированных концепциях. Этот подход способствует о ствует совм использованию ресурсов и данных различными процессами, а также з сурсов от несанкционированного доступа.
Операционная система %'2К ис " ет следующие объектно-ориентированные концепции. ° Инкапсуляция. Объект состоит из одного или нескольких полей (атрибутов), и одной или нескольких процедур, с помощью которых обрабатывать эти данные (методов, сервисов).
Единственный способ:. чить доступ к данным объекта — запросить один из его методов (сер Таким образом, данные объекта легко защитить от несанкциониро или некорректного использования. ° Классы объектов н экземпляры. Класс объекта представляет собой ш в котором перечислены его атрибуты и сервисы, а также определены.':. торые его характеристики.
При необходимости операционная систем жет создавать экземпляры объектов класса. Например, имеется кла ночных процессов, объектом которого является текущий процесс., подход упрощает создание объектов и управление ими. ° Наел аследованне. Этот механизм не поддерживается на уровне пользова некоторой степени поддерживается на уровне исполнительной системы. мер, объекты-каталоги являются примерами объектов-контейнеров, о свойств которых является то, что содержащиеся в них объекты могут н вать свойства контейнеров. Например, предположим, что у нас имеется фаиловой системы с установленным флагом сжатия.