Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Тема № 10. Обзор современных операционных систем



Вкратце рассмотрим архитектурные особенности современных операционных систем. Необходимо отметить, что самыми популярными и востребованными являются операционные системы семейства Windows компании Microsoft.

Современная операционная система Linux относится к семейству операционных систем Unix. Операционная система Unix является удачным примером реализации простой мультипрограммной и многопользовательской операционной системы. Первая версия этой системы занимала всего 12 Кбайт и могла работать на компьютерах с небольшим объемом оперативной памяти. При создании второй версии разработчики отказались от языка ассемблера и специально придумали язык высокого уровня, на котором можно было бы писать не только системные, но и прикладные программы (язык С). Вследствие этого и сама операционная система и приложения, выполняющиеся в ней, стали мобильными. Компилятор с языка С для оттранслированных программ генерирует реентерабельный и разделяемый код, что позволяет эффективно использовать имеющиеся в системе ресурсы.

Общая характеристика и особенности архитектуры операционной системы Linux

Упрощенно говоря Linux – система включает ядро, пользовательские интерфейсы и приложения. В пользовательский интерфейс может входить и интерфейс в виде текстовой оболочки командной строки и целый ряд GUI (графических интерфейсов). Пользователи получают доступ к приложениям через пользовательский интерфейс, приложения обращаются к ресурсам через интерфейс системных вызовов, который взаимодействует с ядром. Потоки ядра реализуются в виде «демонов», находящихся в состоянии покоя, пока планировщик не разбудит их.

Система Linux является многопользовательской, поэтому ядро должно иметь механизм управления правами доступа пользователей и защиты системных ресурсов. Ядро Linux является монолитным, но, тем не менее, последние усовершенствования, внесенные для обеспечения масштабируемости ядра, включают в себя возможности модульности, подобные тем, которые поддерживаются операционными системами с микроядром. Процессы в Linux могут выполняться в режиме ядра, либо в пользовательском режиме. Ядро Linux состоит из шести основных подсистем: управления процессами, взаимодействия между процессами, управления памятью, управления файловой системой, управления операциями ввода-вывода, сетевой подсистемой.

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

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

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

- диспетчер задач;

- механизм передачи сообщений между процессами;

 - супервизор прерываний;

- сетевой интерфейс.

Микроядро операционной системы QNX имеет объем всего в несколько десятков килобайт, это одно из самых маленьких ядер среди всех существующих операционных систем. В этом объеме помещаются: механизм передачи сообщений между процессами IPC (Inter Process Communication); редиректор прерываний; диспетчер задач; сетевой интерфейс для перенаправления сообщений.

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

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

Диспетчер задач обеспечивает многозадачность. К выполнению своих функций как диспетчера ядро приступает в следующих случаях:

- процесс вышел из состояния блокировки;

- истек квант времени для процесса, владеющего центральным процессором;

- какое-либо событие прерывает работающий процесс.

Диспетчер выбирает процесс для запуска среди процессов неблокированных в порядке значения их приоритетов. Обслуживание каждого из процессов зависит от  метода его диспетчеризации.

Сетевой интерфейс взаимодействует с сетевым адаптером через сетевой драйвер, но базовые сетевые службы реализованы на уровне ядра.

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

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

Построены по микроядерной технологии. В состав ядра включены только самые важные основообразующие управляющие процедуры, а остальные управляющие модули вызываются из ядра как службы. Только часть служб использует процессор в режиме ядра, а остальные в пользовательском режиме, как и обычные приложения пользователей.  Для обеспечения надежности они располагаются в отдельном виртуальном адресном пространстве, к которому имеет доступ только системный код.

Микроядро выполняет диспетчеризацию задач, обработку прерываний, поддерживает механизмы синхронизации потоков и процессов, обеспечивает взаимосвязи между всеми остальными компонентами операционной системы, работающими в режиме ядра. Помимо ядра в режиме супервизор работает так называемая исполняющая система. Компоненты исполняющей системы:

-диспетчер процессов;

- диспетчер виртуальной памяти;

-диспетчер объектов (создает и поддерживает защищаемые объекты, дескрипторы объектов и атрибуты защиты объектов);

- монитор безопасности (обеспечивает санкционирование доступа к объектам, контроль полномочий доступа и аудит);

- диспетчер ввода-вывода

- средства вызова локальных процедур (LPC – Local Procedure Call);

Вопросы для самопроверки

1. Какой язык программирования создан специально для разработки операционной системы.

2. Особенности архитектуры ядра Linux

3. В каких случаях получает управление диспетчер ядра QNX

4. Что такое исполняющая система Windows.

 

 

 

 


Поделиться:



Последнее изменение этой страницы: 2019-03-22; Просмотров: 278; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.014 с.)
Главная | Случайная страница | Обратная связь