Информационный портал

Операционные системы

 


Операционные системы

 

 

Многослойные операционные системы являются продолжением идеи расслоения операционной системы и изоляции ядра от программ пользователя.

Практически все современные операционные системы – Microsoft Windows (семейство NT), Linux, MacOS, операционные системы UNIX – System V и BSD, появившиеся в середине 1970-х годов, все эти операционные системы являются многослойными операционными системами. Первая многослойная операционная система THE была разработана в Technische Hogeschool Eindhoven Э. Дейкстрой и его студентами в 1968 г (Таненбаум, Современные операционные системы, 2002). Система содержала 6 слоев – распределение процессора и многозадачность, управление памятью и процессом, уровень связи оператора и процесса, управление вводом-выводом, уровень пользовательских программ и уровень оператора. Каждый уровень был предназначен для постепенной абстракции реальной машины вплоть до уровня процесса системного оператора, однако подобное расслоение не решало этой задачи до конца – разработчикам не удалось избавиться от реализации машинно-зависимых функций на верхних слоях операционной системы. Позднее эта модель многократно пересматривалась и модифицировалась, пока не была разработана обобщенная модель многослойной операционной системы.

 

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

0. Уровень аппаратной поддержки

1. Уровень сопряжения с оборудованием

2. Уровень системных механизмов

3. Уровень системных служб

4. Уровень системных вызовов

5. Пользовательский уровень

В задачи уровней входит постепенное абстрагирование реальной машины от пользователя и его программ. Фактически каждый уровень строит собственную модель реальной машины – виртуальную машину, на которой работает следующий уровень. Количество машинно-зависимых компонент сокращается с каждым последующим уровнем, или, как это реализовано в операционных системах Microsoft Windows семейства NT – все машинно-зависимые компоненты сгруппированы на одном единственном уровне, а все верхние уровни вообще не содержат машинно-ориентированного кода.
Уровень аппаратной поддержки является самым низким уровнем многослойной операционной системы. Фактически этот уровень вообще не реализуется в современных операционных системах – в качестве него рассматриваются высокоуровневые возможности аппаратных платформ, используемые операционными системами для решения своих задач. Примером таких возможностей являются переключение задач, защита адресного пространства, организация виртуальной памяти в системах на базе процессоров Intel, аппаратная поддержка свопинга в VAX-11/780, уровни выполнения задач в процессорах MC86x00 и т.д. В большей своей части современные операционные системы вообще не знают о том, как в действительности реализуется то же переключение задач – на средних уровнях операционных систем эта операция представляется как атомарная и примитивная, хотя на самом деле, на уровне аппаратуры, это сложная и многошаговая операция.

Статья по теме  Заработок в SeoFast

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

Абстрагируя реальную машину от остальных частей операционной системы, уровень сопряжения с оборудованием фактически строит для них некоторую виртуальную машину, с которой и взаимодействует операционная система. Если разработчикам операционной системы удается сгруппировать весь машинно-зависимый код на уровне сопряжения с оборудованием, то остальные слои операционной системы будут машинно-независимыми и работать исключительно с той моделью, которую предоставляет им уровень сопряжения с оборудованием. Это открывает широкие возможности для придания современным операционным системам важного свойства – переносимости, т.е. возможности нормально функционировать на различных аппаратных платформах, за счет замены всего одного слоя операционной системы – уровня сопряжения с оборудованием. На сегодняшний день только одно семейство операционных систем в полной мере обладает такими возможностями – это семейство NT операционных систем Microsoft Windows, к которому относятся версии Microsoft Windows NT, Microsoft Windows 2000, Microsoft Windows XP, Microsoft Windows Server 2003, Microsoft Windows Vista, Microsoft Windows Server 2008 и Microsoft Windows 7. Кроме того, подобными возможностями обладает и операционная система Microsoft Windows Mobile.

Уровень системных механизмов реализует базовые функции операционной системы, к которым относят управление процессами и потоками, управление вводом/выводом, управление оперативной памятью, обеспечение взаимодействия между модулями операционной системы, управление работой низкоуровневых драйверов устройств. Фактически данный уровень выполняет функции, которые ранее возлагались на ядро операционной системы, поэтому его часто называют уровнем ядра. Конкретный набор функций, реализуемых ядром, и объектов, которыми оно управляет, зависит от реализации конкретной операционной системы.
Уровень системных служб включает в себя набор диспетчеров, служб, определяющих высокоуровневые функции управления ресурсами системы. Данный уровень содержит модули, которые определяют политику работы всей операционной системы. К основным диспетчерам, которые включаются во все современные операционные системы, относятся – диспетчер процессов, диспетчер оперативной памяти, диспетчер ввода/вывода, диспетчер файловых систем (иногда его объединяют с диспетчером ввода/вывода), диспетчер межпроцессного взаимодействия и т.д. В зависимости от особенностей реализации операционной системы работа ее системных служб так же может быть построена на различных основах. Например, в операционных системах Microsoft Windows многие исполнительные службы (executive services) реализованы как пассивные серверы, которые выполняют свою работу только в момент поступления запросов от других модулей операционной системы. В операционной системе UNIX политики управления системой реализуются специальными постоянно активными процессами – демонами (daemons), которые постоянно «сканируют» систему. В операционной системе Linux использованы оба эти похода.

Статья по теме  Покупка активных рефералов

Уровень системных вызовов или уровень API часто рассматривается как верхний подслой уровня системных служб. Данный уровень предоставляет интерфейс к системным функциям, которые используются приложениями пользователя и пользовательским интерфейсом. Реализация уровня API в различных операционных системах также отличается друг от друга. В операционной системе Microsoft Windows вообще не выделяется отдельного уровня API – его функции выполняет слой исполнительных служб (executive services), поэтому обращение к системной функции, по сути, является запросом к соответствующему диспетчеру. Диспетчеры сами выполняют запросы пользовательских программ, поэтому API операционной системы Microsoft Windows считается активным. В операционных системах UNIX и Linux уровень API представлен в виде набора библиотек функций, выполнение которых возложено на те приложения, которые к ним обращаются – это пассивный API.
Пользовательский уровень представляет собой слой, на котором выполняются приложения пользователя, и реализуется интерфейс для программирования и управления вычислительной системой.

Разделение операционной системы на слои не мешает выделению режимов выполнения отдельных модулей. Как правило, в многослойных операционных системах выделяют два или более режима выполнения модулей. Как минимум это привилегированный и пользовательские режимы. Например, в операционных системах Microsoft Windows выделяют два режима – режим ядра (Kernel Mode) и режим пользователя (User Mode). Количество режимов выполнения может быть и больше, например, в UNIX-подобных операционных системах выделяют три режима выполнения – режим ядра (Kernel Mode), режим системы (System Mode) и режим задачи (Task Mode). Граница разделения режимов определяется индивидуально для каждой операционной системы.

  • 0/5
  • рейтинги
0 рейтингиX
Very bad! Bad Hmmm Oke Good!
0% 0% 0% 0% 0%

  1. Спасибо, статья очень познавательная. Пользовалась и никогда не задумывалась. что такое МОС. Теперь немножко разобралась, благодаря Вам! =) =) =)

  2. Рекомендую прочитать статью. Очень познавательно и поучительно. не зря потратил время на этот сайт

  3. Практически все современные операционные системы – Microsoft Windows (семейство NT), Linux, MacOS, операционные системы UNIX – System V и BSD, появившиеся в середине 1970-х годов, все эти операционные системы являются многослойными операционными системами ощень интересная статья 8) 8) =)

  4. Спасибо за полезную информацию!!! Всегда пользуюсь вашим сайтом!!! Очень полезный и поучительный!!! *THUMBS UP* *THUMBS UP* *THUMBS UP* *THUMBS UP* *THUMBS UP*

  5. очень интересно,мы этим пользуемся и не подозреваем как все работает и как создавалось.такими темпами скоро и до искуственного интеллекта дойдем.Ваш сайт , скажу одно для обычного обывателя довольно простым языком изложено . Молодцы

  6. Фактически каждый уровень строит собственную модель реальной машины – виртуальную машину, на которой работает следующий уровень.

  7. забавно разрабтки придумывают, но никогда не любил голосовое управление ! но Очень интересная статья. Мне очень она понравилась. Здесь очень хорошо всё объяснили, поэтому всё понятно и интересно! я очень люблю ваш сайт =) =) =)

  8. Для человека который ничего не понимает я много полезного для себя узнал. Спасибо автору.

  9. очень интересная стаття!! Очень много узнал, прочитав ее. Спасибо вам большое!!

  10. Большое спасибо за Ваш сайт. Я узнал много нового и интересного. Статья очень понравилась, все объяснено понятно, читать очень интересно. =)

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

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

  13. 😀 очень крутая статья,несет поток полезной информации в сжатом тексте!-автору респект! 😀 😀

  14. Очень полезная и одновременно сложная для меня статья, спасибо за инфу…., буду учиться

  15. Спасибо за статью.Мне очень она понравилась.очень полено для расширения кругозора.Спасибо!!!

  16. Очень интересная и познавательная статья читайте и просвещайтесь рекамендую

  17. даже представить не могла….какая мнослойная система….но в общем интересно…Спасибо!!!! =)

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

  19. очень интересно,мы этим пользуемся и не подозреваем как все работает и как создавалось.такими темпами скоро и до искуственного интеллекта дойдем =) .за статью спасибо-просветительная.

  20. Статья очень полезная!!!!Спасибо за информацию автору!!! =) =) =) *THUMBS UP* *THUMBS UP* *THUMBS UP*

  21. Очень интересная и познавательная статтья, как мне!!! Много чего интересного узнал, здесь и наука и история, очень хорошая статтья, хотя до етого и не слышал много чего узнал из нее!!!

  22. Привет всем — Спасибо за статью очень интересно и увлекательно!!! Много чего нового узнал!

  23. Никогда не слышал про многослойные операционные системы , возможно по тому что не интересовался , но как поступил в КАИ на факультет информатики , то там первый раз столкнулся с таким понятием . Порылся в интернете , наткнулся на Ваш сайт , скажу одно для обычного обывателя довольно простым языком изложено . Молодцы

  24. Очень интересная статья. Мне очень она понравилась. Здесь очень хорошо всё объяснили, поэтому всё понятно и интересно! я очень люблю ваш сайт =)

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *