Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лекции СПО

.pdf
Скачиваний:
30
Добавлен:
03.06.2015
Размер:
2.4 Mб
Скачать

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

сервер, в которой роль тр нспортных средств выполняет микроядро.

Рис. 3.11. Ре лиз ция системно о вызов в микроядерной рхитектуре

4.5.2 Преимущества и недостатки микроядерной архитектуры

Опер ционные системы, основ нные н концепции микроядр , в

высокой степени удовлетворяют ольшинству тре ов ний, предъявляемых к

современным ОС, о л д я переносимостью, р сширяемостью, н дежностью и созд в я хорошие предпосылки для поддержки р спределенных приложений.

З эти достоинств

приходится пл тить снижением производительности, и это

является основным недост тком микроядерной рхитектуры.

 

Высок я степень переносимости о

условлен

тем, что весь м шинно-

з висимый код изолиров н в микроядре,

поэтому для перенос

системы н

новый процессор

тре уется меньше изменений

и все они

ло ически

сруппиров ны вместе.

Рсширяемость присущ микроядерной ОС в очень высокой степени. В

тр диционных систем х д же при н личии мно ослойной структуры неле ко уд лить один слой и поменять е о н дру ой по причине множественности и р змытости интерфейсов между слоями. До вление новых функций и изменение существующих тре ует хороше о зн ния опер ционной системы и

ольших з тр т времени. В то же время о р ниченный н ор четко

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

и эволюции ОС. До вление новой подсистемы тре ует р зр

отки ново о

приложения, что ник к не з тр

ив ет целостность микроядр .

Микроядерн я

структур

позволяет не только до

влять, но и сокр щ ть число компонентов

опер ционной системы, что т кже

ыв ет очень полезно. Н пример, не всем

пользов телям нужны средств

езоп сности или поддержки р спределенных

вычислений, уд ление их из тр диционно о ядр

ч ще все о невозможно.

О ычно

тр диционные опер ционные системы

позволяют

дин мически

до влять в ядро или уд лять из ядр только

др йверы внешних устройств —

ввиду ч стых изменений в конфи ур ции

подключенных к компьютеру

внешних устройств подсистем ввод -вывод ядр

допуск ет з

рузку

и

вы рузку др йверов «н

ходу», но для это о он

р зр тыв ется

осо ым

о р зом (н пример, сред

STREAMS в UNIX или менеджер ввод -вывод

в

Windows NT). При микроядерном подходе конфи урируемость ОС не вызыв ет ник ких про лем и не тре ует осо ых мер — дост точно изменить ф йл с н стройк ми н ч льной конфи ур ции системы или же ост новить не нужные

ольше серверы в

ходе р оты о ычными

для ост новки приложений

средств ми.

 

 

спользов ние

микроядерной модели

повыш ет н дежность ОС.

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

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

то о, поскольку серверы выполняются в пользов тельском режиме, они не

имеют непосредственно о доступ

к пп р туре и не мо ут модифициров ть

п мять, в которой хр нится и р

от ет микроядро. Дру им потенци льным

источником повышения н дежности ОС является уменьшенный о ъем код

микроядр по ср внению с тр диционным ядром — это сниж ет вероятность

появления оши ок про р ммиров ния.

Модель с микроядром хорошо подходит для поддержки р спределенных

вычислений, т к к к

использует

мех низмы,

н ло ичные

сетевым:

вз имодействие клиентов

и серверов путем о мен

соо щениями.

Серверы

микроядерной ОС мо ут р

от ть к к н

одном, т к и н р зных компьютер х.

В этом случ е при получении соо щения от приложения микроядро может

о р от ть

е о

с мостоятельно

и

перед ть

лок льному серверу

или

же

пересл ть по сети микроядру, р

от ющему н

дру ом компьютере. Переход к

р спределенной

о р

отке тре ует миним льных

изменений

в

р

оте

опер ционной системы — просто лок льный тр нспорт з меняется н

сетевой.

Производительность. При кл ссической ор

низ ции ОС (рис. 3.12, )

выполнение

системно о вызов

 

сопровожд ется

двумя

переключениями

режимов,

при микроядерной ор

низ ции (рис. 3.12, 6) — четырьмя. Т ким

о р зом, опер ционн я

систем

н

основе микроядр

при

прочих

р вных

условиях все д

удет менее производительной, чем ОС с кл ссическим ядром.

менно по этой причине микроядерный подход не получил т ко о широко о р спростр нения, которое ему предрек ли.

Рис. 3.12. Смен режимов при выполнении системно о вызов

Серьезность это о недост тк хорошо иллюстрирует история р звития

Windows NT. В версиях 3.1 и 3.5 диспетчер окон, р фическ я и лиотек и

высокоуровневые др йверы р фических устройств входили в сост в сервер

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

соответствии с микроядерной схемой. Одн ко очень скоро р зр отчики

Windows NT поняли, что т кой мех низм о р щений к ч сто используемым

функциям р фическо о интерфейс существенно з медляет р оту

приложений и дел ет д нную опер ционную систему уязвимой в условиях

острой конкуренции. В результ те в версию Windows NT 4.0 ыли внесены

существенные изменения — все перечисленные выше модули ыли перенесены в ядро, что отд лило эту ОС от иде льной микроядерной рхитектуры, но з то

резко повысило ее производительность.

Этот пример иллюстрирует л вную про лему, с которой ст лкив ются

р зр отчики опер ционной системы, решившие применить микроядерный подход, — что включ ть в микроядро, что выносить в пользов тельское

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

перед чи соо щений, средств вз имодействия с

пп р турой,

в том числе

средств доступ

к мех низм м привиле иров нной з щиты. Одн ко мно ие

р зр отчики не

все д жестко придержив ются

принцип

минимиз ции

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

результ те ре лиз ции ОС

о р зуют некоторый спектр, н одном

кр ю

которо о н ходятся системы

с миним льно возможным микроядром,

н

дру ом — системы, подо ные Windows NT, в которых микроядро выполняет дост точно ольшой о ъем функций.

4.6 Выводы

Простейш я структуриз ция ОС состоит в р зделении всех компонентов ОС н модули, выполняющие основные функции ОС (ядро), и

модули, выполняющие вспомо тельные функции ОС. Вспомо тельные модули ОС оформляются ли о в виде приложений (утилиты и системные

о р тыв ющие про р ммы), ли о в виде и лиотек процедур.

Вспомо тельные модули з руж ются в опер тивную п мять только н время

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

При

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

р зными уровнями

полномочий

устойчивость ОС может ыть

повышен

путем выполнения

функций ядр

в привиле иров нном режиме,

вспомо тельных модулей ОС и

приложений — в пользов тельском. Это д ет возможность з щитить коды и д нные ОС и приложений от нес нкциониров нно о доступ . ОС может выступ ть в роли р итр в спор х приложений з ресурсы.

Ядро, являясь структурным элементом ОС, в свою очередь, может ыть ло ически р зложено н следующие слои (н чин я с с мо о нижне о):

м шинно-з висимые компоненты ОС;

зовые мех низмы ядр ;

менеджеры ресурсов;

интерфейс системных вызовов.

Вмно ослойной системе к ждый слой о служив ет вышележ щий слой, выполняя для не о некоторый н ор функций, которые о р зуют межслойный интерфейс. Н основе функций нижележ ще о слоя следующий вверх по иер рхии слой строит свои функции — олее сложные и олее мощные, которые, в свою очередь, ок зыв ются примитив ми для созд ния еще

олее мощных функций вышележ ще о слоя. Мно ослойн я ор низ ция ОС

существенно упрощ ет р зр отку и модерниз цию системы.

Лю я ОС для решения своих з д ч вз имодействует с пп р тными

средств ми компьютер , именно: средств ми поддержки привиле иров нно о

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

о л стей п мяти, системой прерыв ний и системным т ймером. Это дел ет ОС

м шинно-з висимой, привяз нной к определенной пп р тной пл тформе.

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

выполняются в привиле иров нном режиме. В микроядерных ОС в

привиле иров нном режиме ост ется р от ть только очень не ольш я ч сть

ОС, н зыв ем я микроядром. Все ост льные высокоуровневые функции ядр оформляются в виде приложений, р от ющих в пользов тельском режиме.

Микроядерные ОС удовлетворяют ольшинству тре ов ний,

предъявляемых к современным ОС, о л д я переносимостью, р сширяемостью,

н дежностью и созд в я хорошие предпосылки для поддержки р спределенных

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

рхитектуры.

5

Процессы и потоки

 

 

 

 

В жнейшей функцией

опер ционной системы

является ор

низ ция

р цион льно о использов ния

всех ее

пп р тных

и информ ционных

ресурсов.

К основным ресурс м мо ут

ыть отнесены процессоры,

п мять,

внешние устройств , д нные и про р ммы. Р спол ющ я одними и теми же

пп р тными ресурс ми, но упр вляем я р зличными ОС, вычислительн я

систем может р от ть с р зной степенью эффективности. Поэтому зн ние

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

эксплу т ционных

возможностях

и х р ктеристик х.

Хотя

и в

однопро р ммной

ОС нео ходимо

реш ть

з д чи упр вления ресурс ми

(н пример, р спределение п мяти

между

приложением и

ОС),

л вные

сложности н

этом пути возник ют в мультипро р ммных ОС, в которых з

ресурсы конкурируют ср зу несколько приложений.

менно поэтому ольш я

ч сть всех

про лем, р ссм трив емых в этой

л ве, относится к

мультипро р ммным систем м.

 

5.1 Мультипрограммирование

Мультипро р ммиров ние, или мно оз д чность (multitasking), — это

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

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

компьютер : опер тивную и внешнюю п мять,

устройств

ввод -вывод ,

д нные. Мультипро р ммиров ние призв но

повысить

эффективность

использов ния вычислительной системы, одн ко эффективность может

поним ться по-р зному. Н и олее х р ктерными критериями эффективности вычислительных систем являются:

пропускн я спосо ность — количество з д ч, выполняемых вычислительной системой в единицу времени;

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

ре ктивность системы — спосо ность системы выдержив ть з р нее

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

В з висимости от вы р нно о критерия эффективности ОС делятся н

системы

п кетной

о р отки,

системы

р зделения времени

и системы

ре льно о

времени.

К ждый

тип ОС

имеет специфические

внутренние

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

может выполняться в режиме п кетной о р отки,

ч сть — в режиме

ре льно о времени или в режиме р зделения времени.

 

5.1.1 Мультипрограммирование в системах пакетной обработки

При использов нии мультипро р ммиров ния для повышения

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

процессор ., Т кие простои мо ут возник ть из-з приост новки з д чи по ее

внутренним причин м, связ нным, н пример, с ожид нием ввод д нных для

о р отки. Д нные мо ут

хр ниться

н диске или

же

поступ ть

от

пользов теля,

р от юще о

з

термин лом,

т кже

от

измерительной

пп р туры,

уст новленной

н

внешних

технических

о ъект х.

При

возникновении т ко о род

локировки

выполняемой з д чи естественным

решением, ведущим к повышению эффективности использов ния процессор ,

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

Системы

п кетной о р

отки предн зн ч лись для

решения з д ч в

основном вычислительно о

х р ктер , не

тре ующих

ыстро о

получения

результ тов. Гл вной целью

и

критерием

эффективности

систем

п кетной

о р отки является м ксим льн я пропускн я спосо ность,

то есть решение

м ксим льно о числ з д ч в единицу времени.

 

 

 

Для достижения этой цели в систем х п кетной о р

отки используется

следующ я схем

функциониров ния: в н ч ле р оты

формируется п кет

з д ний, к ждое з д ние содержит тре ов ние к системным ресурс м; из это о

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

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

м шины. Н пример, в мультипро р ммной смеси жел тельно одновременное присутствие вычислительных з д ч и з д ч с интенсивным вводом-выводом.

Т ким о р зом, вы ор ново о з д ния из п кет з д ний з висит от внутренней ситу ции, скл дыв ющейся в системе, то есть вы ир ется «вы одное» з д ние.

Следов тельно, в вычислительных систем х, р от ющих под упр влением

п кетных ОС, невозможно р нтиров ть выполнение то о или ино о з д ния в течение определенно о период времени.

Р ссмотрим олее дет льно совмещение во времени опер ций ввод -

вывод и вычислений.

Т кое совмещение может дости ться р зными спосо ми. Один из них

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

вывод . В компьютер х кл сс мэйнфреймов т кие процессоры н зыв ют

к н л ми. О ычно к н л имеет систему ком нд, отлич ющуюся от системы ком нд центр льно о процессор . Эти ком нды специ льно предн зн чены для

упр вления

внешними

устройств ми, н пример

«проверить

состояние

устройств »,

«уст новить

м нитную оловку»,

«уст новить н ч ло

лист »,

«н печ т ть

строку».

К н льные про р ммы

мо ут

хр ниться

в

той же

опер тивной п мяти,

что и про р ммы центр льно о процессор .

В

системе

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

помощью которой к н лу перед ются п р метры и ук з ния

н то, к кую

про р мму ввод -вывод он должен выполнить. Н чин я с

это о

момент

центр льный процессор и к н л мо ут р от ть п р ллельно (рис. 4.1,

).

Рис. 4.1. П р ллельное выполнение вычислений и опер ций ввод -вывод

Дру ой спосо совмещения вычислений с опер циями ввод -вывод

ре лизуется в компьютер х, в которых внешние устройств

упр вляются не

процессором ввод -вывод ,

контроллер ми. К ждое внешнее устройство (или

рупп внешних устройств одно о тип )

имеет свой со ственный контроллер,

который втономно отр

тыв ет ком нды, поступ ющие

от центр льно о

процессор . При этом контроллер и

центр льный процессор

р от ют

синхронно.

Поскольку

мно ие

внешние

устройств

включ ют

электромех нические узлы, контроллер выполняет свои ком нды упр вления устройств ми существенно медленнее, чем центр льный процессор — свои.

Это о стоятельство используется для ор низ ции п р ллельно о выполнения вычислений и опер ций ввод -вывод : в промежутке между перед чей ком нд,

контроллеру центр льный процессор может выполнять вычисления (рис. 4.1, ).

Контроллер может соо щить центр льному процессору о том, что он отов