Понятие и назначение операционной системы. Место операционной системы в вычислительной системе


Скачать 1.1 Mb.
Название Понятие и назначение операционной системы. Место операционной системы в вычислительной системе
страница 1/8
Тип Обзор
rykovodstvo.ru > Руководство эксплуатация > Обзор
  1   2   3   4   5   6   7   8

  1. Понятие и назначение операционной системы. Место операционной системы в вычислительной системе.

ОС – это программа или комплекс программ, которая загружается при включении

компьютера, производит диалог с пользователем, осуществляет управление компьютером, его

ресурсами (оперативной памятью, местом на дисках), запускает другие (прикладные) программы

на выполнение. ОС действует как интерфейс между приложениями и пользователями с одной

стороны, и аппаратурой компьютера, с другой стороны.

Расположение операционной системы в иерархической структуре программного и

аппаратного обеспечения компьютера можно представить, как показано на рисунке 1. Самый

нижний уровень содержит различные устройства компьютера, состоящие из микросхем,

проводников, источников питания и т. п. Этот уровень можно разделить на подуровни, например

контроллеры устройств, а затем сами устройства. Возможно деление и на большее число уровней.

Выше расположен микроархитектурный уровень, на котором физические устройства

рассматриваются как отдельные функциональные единицы. На микроархитектурном уровне

находятся внутренние регистры центрального процессора (их может быть несколько) и

арифметико-логические устройства со средствами управления ими. На этом уровне реализуется

выполнение машинных команд. В процессе выполнения команд используются регистры

процессора и устройств, а также другие возможности аппаратуры. Команды, видимые для

работающего на ассемблере программиста, формируют уровень ISA (Instruction Set Architecture -

архитектура системы команд), часто называемый машинном языком.



  1. Обзор критериев эффективности работы операционных систем.

Главным требованием, предъявляемым к операционной системе, является выполнение ею основных функций эффективного управления ресурсами и обеспечение удобного интерфейса для пользователя и прикладных программ. Современная ОС, как правило, должна поддерживать мультипрограммную обработку, виртуальную память, свопинг, многооконный графический интерфейс пользователя, а также выполнять многие другие необходимые функции и услуги. А кроме этих, следующие требования:

Расширяемость. Изменения ОС обычно заключаются в приобретении ею новых

свойств, например поддержке новых типов внешних устройств или новых сетевых технологий. Если код ОС написан таким образом, что дополнения и изменения могут вноситься без нарушения целостности системы, то такую ОС называют расширяемой. Расширяемость достигается за счет модульной структуры ОС, при которой программы строятся из набора отдельных модулей, взаимодействующих только через функциональный интерфейс.

Переносимость. В идеале код ОС должен легко переноситься с процессора одного типа

на процессор другого типа и с аппаратной платформы (которые различаются не только типом процессора, но и способом организации всей аппаратуры компьютера) одного типа на аппаратную платформу другого типа. Переносимые ОС имеют несколько вариантов реализации для разных платформ, такое свойство ОС называют также многоплатформенностью.

Совместимость. Если ОС имеет средства для выполнения прикладных программ,

написанных для других операционных систем, то про нее говорят, что она обладает

совместимостью с этими ОС. Понятие совместимости включает также поддержку

пользовательских интерфейсов других ОС.

Надежность и отказоустойчивость. Система должна быть защищена как от

внутренних, так и от внешних ошибок, сбоев и отказов. Ее действия должны быть всегда

предсказуемыми, а приложения не должны иметь возможности наносить вред ОС. Надежность и отказоустойчивость ОС прежде всего определяются архитектурными решениями, положенными в ее основу, а также качеством ее реализации (отлаженностью кода).

Безопасность. Современная ОС должна защищать данные и другие ресурсы

вычислительной системы от несанкционированного доступа. Чтобы ОС обладала свойством безопасности, она должна как минимум иметь в своем составе средства аутентификации определения легальности пользователей, авторизации — предоставления легальным пользователям дифференцированных прав доступа к ресурсам, аудита — фиксации всех «подозрительных» для безопасности системы событий.

Производительность. Операционная система должна обладать настолько хорошим

быстродействием и временем реакции, насколько это позволяет аппаратная платформа. На

производительность ОС влияет много факторов, среди которых основными являются архитектура ОС, многообразие функций, качество программирования кода, возможность исполнения ОС на высокопроизводительной (многопроцессорной) платформе.

Критерий эффективности, в соответствии с которым ОС организует управление ресурсами

компьютера, может быть различным. Например, в одних системах важен такой критерий, как пропускная способность вычислительной системы, в других — время ее реакции. Очевидно, что ОС, построенные в соответствии с разными критериями эффективности, будут по-разному организовывать вычислительный процесс.

  1. Обзор базовых типов архитектур операционных систем.

Перечислим основные типы внутренней архитектуры операционных систем и в качестве

примеров рассмотрим архитектуру наиболее распространенных операционных систем – систем

UNIX и Windows. Разливают три базовых типа архитектуры операционных систем:

• монолитная архитектура;

• многоуровневая архитектура;

• архитектура типа клиент-сервер на основе микроядра.

Рассмотрим каждый из этих типов архитектуры более подробно.

Монолит:

При монолитной архитектуре операционная система не имеет какой-либо явно выраженной

внутренней структуры. Это набор процедур, использующих общие глобальные данные, и

вызываемые друг другом или пользователем. Заметим, что монолитную архитектуру имели самые первые поколения операционных систем.




При использовании монолитной архитектуры, аппаратно-зависимый и аппаратно-

независимый код в составе операционной системы тесно переплетаются, что крайне затрудняет

развитие операционной системы или ее перенос на другую аппаратную платформу. Наличие

бессистемных разветвленных связей между компонентами операционной системы с монолитной

архитектурой приводит к необходимости коррекции многих компонентов системы при реальной

потребности изменения только одного из них. При этом может наблюдаться эффект снежной

лавины – изменение одной процедуры потребовало изменение нескольких других, каждая из

которых потребовала изменение еще нескольких других процедур и т.д. Еще большие неудобства

могут доставить глобальные данные, т.к. даже незначительное изменение их формата,

необходимое для какой-то частной процедуры, в большинстве случаев потребует коррекции

практически всех остальных процедур операционной системы. Серьезные трудности возникают

при сопровождении и технической поддержке операционной системы с монолитной

архитектурой, в период ее эксплуатации, особенно если система находится в эксплуатации

длительное время, и сопровождение выполняют специалисты, которые не участвовали в

разработке этой операционной системы с самого начала проекта. В результате, по мере роста и

усложнения монолитной операционной системы, ее поддержка все более затрудняется. В

конечном итоге, довольно быстро наступает момент, когда дальнейшее развитие системы

становится нецелесообразным – легче написать все заново, чем модифицировать имеющийся

код. Довольно скоро ограничения монолитной архитектуры стали столь значительными, что для

построения расширяемых и переносимых операционных систем необходимо было искать новые

решения, и они были предложены.

Многоуровневая архитектура

Многоуровневая архитектура появилась как ответ на ограничения монолитной архитектуры

в плане расширяемости, переносимости и совместимости. Основная идея многоуровневой

архитектуры состоит в следующем:

1. Полная функциональность операционной системы разделяется на уровни, например

уровень управления аппаратурой, уровень управления памятью, уровень файловой системы,

уровень управления процессами и т.п.

2. Для каждого уровня определяются интерфейс взаимодействия, т.е. некоторый набор

правил, согласно которым следует обращаться за услугами данного уровня.

3. Взаимодействие уровней строится таким образом, что каждый уровень может

обращаться за услугами только к соседнему нижележащему уровню через его интерфейс.

4. Внутренние структуры данных каждого уровня не доступны другим уровням, а

реализации процедур уровня скрыты и не зависят от реализаций процедур внутри других

уровней.



Обязательным условием для разбиения функциональности на уровни является

взаимодействие только между соседними уровнями. В многоуровневых системах запрещаются

прямые обращения к любым уровням, минуя соседний уровень.



Многоуровневая архитектура предполагает взаимодействие между уровнями

исключительно через их интерфейсы, при этом внутренняя реализация уровней скрыта от других

уровней. Это позволяет в случае необходимости изменять внутренние реализации процедур

уровня на более эффективные. Можно даже полностью заменить весь уровень, требуется только

Омский авиационный колледж имени Н.Е. Жуковского 16

обеспечить стандартный интерфейс взаимодействия с другими уровнями. Разбиение

функциональности операционной системы на уровни выполняется на этапе ее проектирования и

сохраняется на весь срок жизни операционной системы. При этом, по мере развития

операционной системы, интерфейсы уровней могут дополняться новыми вызовам. Однако

интерфейсы не могут сокращаться, т.к. необходимо обеспечивать совместимость с программами,

разработанными для предыдущих версий операционной системы, и использующими старые

интерфейсы. Расширение интерфейса обычно связано с введением в операционную систему

новой функциональности, например, при появлении новых аппаратных средств. Другой причиной

дополнения интерфейса может стать новая, более оптимальная реализация некоторого алгоритма

работы операционной системы, при этом старый интерфейс необходимо сохранить в целях

совместимости.

Клиент-сервер архитектура:



Архитектура типа клиент-сервер в настоящее время является наиболее совершенной с точки

зрения расширяемости и переносимости операционных систем. Идея архитектуры клиент-сервер

состоит в следующем: все компоненты операционной системы разделяются на программы –

поставщики услуг (программы серверы, выполняющие определенные действия по запросам

других программ), и программы – потребители услуг (программы клиенты, обращающиеся к

серверам для выполнения определенных действий). Заметим здесь, что одна и та же программа

может быть одновременно сервером по отношению к одному виду услуг и клиентом по

отношению к другому виду услуг. Запущенные в системе процессы-серверы постоянно находится

в состоянии ожидания клиентских запросов. В случае необходимости, клиенты посылают

серверам запросы на оказание требуемых им услуг, например запрос на чтение файла, запрос на

выделение памяти, запрос на вывод результатов на экран и т.п. Получив запрос от клиента, сервер

выполняет его, при этом он сам может обратиться за услугами к другим серверам. После

выполнения запроса сервер отсылает клиенту сообщение о завершении задания и результаты

работы. При этом клиенты и серверы никогда не общаются напрямую. Если некоторый процесс

нуждается в каких-либо услугах со стороны операционной системы, то он посылает

соответствующее сообщение диспетчеру в составе микроядра операционной системы. Получив

запрос, микроядро определяет сервер, который может его обслужить, пробуждает его процесс и

переадресовывает ему запрос клиента. Очевидно, что серверы должны быть предварительно

зарегистрированы в системе. При этом микроядро само является сервером по отношению к

запросам, связанным с управлением аппаратурой. В процессе выполнения запросов от

пользовательских программ, системные серверы, выступая в роли клиентов, обращаются за

Омский авиационный колледж имени Н.Е. Жуковского 18

аппаратно-зависимыми услугами к микроядру, при этом сами серверы операционной системы

выполняются в режиме задачи, наравне с обычными пользовательскими процессами, и не имеют

прямого доступа к аппаратуре.

Для архитектуры типа клиент-сервер характерно горизонтальное разделение

функциональности между равноправными серверами, вместо вертикального иерархического

распределения в многоуровневой архитектуре. При этом, каждый сервер отвечает за выполнение

отдельной достаточно простой операции и ни в коей мере не является эквивалентом уровня в

многоуровневой архитектуре.

Таким образом, архитектура клиент-сервер обеспечивает следующие основные

преимущества:

• переносимость операционной системы, т.к. серверы, работающие в пользовательском

режиме, аппаратно независимы;

• расширяемость операционной системы, т.к. новая функциональность может быть легко

введена за счет введения нового сервера, и это никак не затронет существующую

функциональность;

• гибкость операционной системы, т.к. пользователь может запустить только те сервисы,

которые ему действительно нужны, и не расходовать ресурсы системы на поддержку

невостребованной функциональности, при этом пользователь может изменять набор запущенных

серверов без перезапуска системы.

Указанные преимущества делают архитектуру клиент-сервер наиболее подходящей для

построения операционных систем, удовлетворяющих современным требованиям.

Архитектура клиент-сервер, наряду с указанными преимуществами, имеет один серьезный

недостаток – производительность операционной системы, функционирующей на основе обмена

сообщениями между клиентами и серверами через микроядро, заметно ниже

производительности операционной системы, функционирование которой основано на простых

вызовах функций. Поэтому идеализированная модель операционной системы на базе

архитектуры клиент-сервер, когда ядро операционной системы выполняет только функции

диспетчера сообщений и сервера для управления аппаратурой, довольно редко применяется на

практике.

В реальных операционных системах, основанных на архитектуре клиент-сервер, ядро

обычно выполняет существенно больший объем работы, так, что иногда точнее говорить о

гибридной архитектуре, сочетающей многоуровневое ядро и серверы за пределами ядра для

выполнения некоторых операций. Такая организация операционной системы позволяет достичь

удачного компромисса гибкость/производительность, и, в конечном итоге, получить

производительность, близкую к производительности классической многоуровневой системы в

сочетании с максимально простой переносимостью и расширяемостью.

  1. Понятие ядра операционной системы. Режимы работы компонентов операционной системы.

Наиболее общим подходом к структуризации операционной системы является разделение

всех ее модулей на две группы:

1. ядро — модули, выполняющие основные функции ОС, такие как управление процессами,

памятью, устройствами ввода-вывода и т. п. Ядро составляет сердцевину операционной системы,

без него ОС является полностью неработоспособной и не сможет выполнить ни одну из своих

функций. В состав ядра входят функции, решающие внутрисистемные задачи организации

вычислительного процесса, такие как переключение контекстов, обработка прерываний. Эти

функции недоступны для приложений. Другой класс функций ядра служит для поддержки

приложений, создавая для них так называемую прикладную программную среду. Приложения

могут обращаться к ядру с запросами — системными вызовами — для выполнения тех или иных

действий, например для открытия и чтения файла, вывода графической информации на дисплей,

получения системного времени и т. д. Функции ядра, которые могут вызываться приложениями,

образуют интерфейс прикладного программирования — API.

Функции, выполняемые модулями ядра, являются наиболее часто используемыми

функциями операционной системы, поэтому скорость их выполнения определяет

производительность всей системы в целом. Для обеспечения высокой скорости работы ОС все

модули ядра или большая их часть постоянно находятся в оперативной памяти, то есть являются
  1   2   3   4   5   6   7   8

Похожие:

Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Темы для теоретического изучения Определение, назначение и функции...
Освоение команд и утилит ос при работе в консольном режиме диалога и файловой структуры операционных систем
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Краткое содержание курса
Лекция: Понятие операционной системы (ОС), цели ее работы. Классификация компьютерных систем
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Руководство по установке и настройке 32-разрядной операционной системы
Как запретить регистрацию пользователя в системе, не изгоняя его из списков пользователей? 78
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Задание для курсовой работы студентам заочного отделения по курсу...
Ос не нуждается в дисковой файловой системе – все системные файлы создаются на ram- диске, что делает ее особенно привлекательной...
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon А. В. Сеньков ООО "свд встраиваемые Системы"
К таким средствам относятся пакеты поддержки плат (bsp – Board Support Package) операционной системы qnx neutrino
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon На объектах вычислительной техники утверждено
«Самарский государственный экономический университет» (далее Университет) только лицензионных программных продуктов. Настоящая Инструкция...
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Методические указания к лабораторным работам по дисциплине «Операционные системы»
Программирование в операционной среде unix: обмен информацией между параллельными процессами, организация защиты файлов в файловой...
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Технологическая инструкция Установка «Платформы барс» на операционные системы-ти 0 2014
Установка и настройка субд oracle 11g r1 Client для 32битной операционной системы 10
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Услуги по определению достаточности и оптимальности (неизбыточности)...
Проекта поддержания операционной деятельности «Продолжение строительства и реконструкции системы авиатопливообеспечения в аэропорту...
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Установлен и настроен управляющий Грид-сервер, под управлением операционной...
Установлен и настроен управляющий Грид-сервер, под управлением операционной системы Ubuntu Server Установлено по globus Toolkit 1,...
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Многофункциональное автомобильное зеркало заднего вида со встроенным...
Многофункциональное зеркало относится к классу автомобильных комбинированных устройств, сочетающих функции планшета на базе операционной...
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Руководство администратора
Данный документ описывает основную и расширенную конфигурацию операционной системы depo thinOS
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Руководство по установке и эксплуатации Настоящий документ описывает...
Настоящий документ описывает процесс установки и обслуживания клиента контентной фильтрации Netpolice версии 01 для операционной...
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Руководство пользователя
Необходимо ввести пин-код для доступа к загрузке операционной системы (далее ос) вида: 12
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Пояснительная записка Кафедра пмиК
Файловый менеджер для операционной системы Android с поддержкой облачных сервисов
Понятие и назначение операционной системы. Место операционной системы в вычислительной системе icon Инструкция для агентов по работе в программе уфс пегас-Тур
Для доступа к информационной системе требуется на компьютер, подключенный к сети Интернет под управлением операционной системы Microsoft...

Руководство, инструкция по применению




При копировании материала укажите ссылку © 2024
контакты
rykovodstvo.ru
Поиск