лекции СПО
.pdfПри выполнении своих функций ф йлов я систем тесно
вз имодействует с подсистемой упр вления внешними устройств ми, котор я по з прос м ф йловой системы осуществляет перед чу д нных между диск ми
и опер тивной п мятью.
Подсистем упр вления внешними устройств ми, н зыв ем я т кже
подсистемой ввод -вывод , исполняет роль интерфейс ко всем устройств м,
подключенным к компьютеру. Спектр этих устройств очень о ширен.
Номенкл тур выпуск емых н копителей н |
жестких, |
и ких и оптических |
диск х, принтеров, ск неров, мониторов, |
плоттеров, |
модемов, сетевых |
д птеров и олее специ льных устройств ввод -вывод , т ких к к, н пример,
н ло о-цифровые прео р зов тели, может н считыв ть сотни моделей. Эти
модели мо ут существенно отлич ться н ором и последов тельностью ком нд,
с помощью которых осуществляется о мен информ цией с процессором и
п мятью компьютер , скоростью р |
оты, кодировкой перед в емых д нных, |
|||
возможностью совместно о использов ния и множеством дру их дет лей. |
||||
Про р мм , |
упр вляющ я конкретной моделью внешне о устройств и |
|||
учитыв ющ я все |
е о осо енности, о ычно н зыв ется |
др йвером |
это о |
|
устройств (от н лийско о drive |
— упр влять, вести). |
Др йвер |
может |
упр влять единственной моделью устройств , н пример модемом U-1496E
комп нии ZyXEL, или же руппой устройств определенно о тип , н пример
лю ыми Hayes-совместимыми модем ми. Для пользов теля очень в жно, что ы
опер ционн я систем включ л к к можно ольше р зноо р зных др йверов,
т к к к это р нтирует возможность подключения к компьютеру ольшо о
числ внешних устройств р зличных производителей. От н личия подходящих
др йверов во мно ом з висит успех опер ционной системы н рынке
(н пример, отсутствие |
мно их нео ходимых др йверов внешних устройств |
||||||
ыло одной из причин низкой популярности OS/2). |
|
|
|||||
Созд нием |
др йверов |
устройств |
з ним ются к к р зр |
отчики |
|||
конкретной |
ОС, |
т к |
и специ листы комп ний, |
выпуск ющих |
внешние |
||
устройств . |
Опер ционн я |
систем |
должн |
поддержив ть |
хорошо |
определенный интерфейс между др йвер ми и ост льной ч стью ОС, что ы
р зр отчики из комп ний-производителей устройств ввод -вывод мо ли
пост влять вместе со своими устройств ми др йверы для д нной опер ционной системы.
Прикл дные про р ммисты мо ут пользов ться интерфейсом др йверов
при р зр |
отке своих про р мм, но это не очень удо но — т кой интерфейс |
|||
о ычно предст вляет со ой низкоуровневые опер ции, |
о ремененные ольшим |
|||
количеством дет лей. |
|
|
|
|
Поддерж ние высокоуровнево о |
унифициров нно о |
интерфейс |
||
прикл дно о про р ммиров ния к р знородным устройств м |
ввод -вывод |
|||
является одной из н и олее в жных з д ч ОС. Со времени появления ОС UNIX |
||||
т кой унифициров нный интерфейс в |
ольшинстве |
опер ционных систем |
||
строится н |
основе концепции ф йлово о доступ . Эт |
концепция з ключ ется |
в том, что о мен с лю ым внешним устройством вы лядит к к о мен с ф йлом,
имеющим |
имя и предст вляющим |
со ой |
неструктуриров нную |
|
последов тельность |
йтов. В к честве ф йл |
может выступ ть к к ре льный |
||
ф йл н диске, т к и |
лф витно-цифровой термин л, печ т ющее устройство |
|||
или сетевой |
д птер. |
Здесь мы опять имеем дело со свойством опер ционной |
||
системы подменять |
ре льную пп р туру |
удо ными |
для пользов теля и |
|
про р ммист |
стр кциями. |
|
|
3.2.4 Защита данных и администрирование
Безоп сность д нных вычислительной системы о еспечив ется
средств |
ми отк зоустойчивости ОС, н пр вленными н |
з щиту от с оев и |
отк зов |
пп р туры и оши ок про р ммно о о еспечения, |
т кже средств ми |
з щиты от нес нкциониров нно о доступ . В последнем случ е ОС з щищ ет д нные от оши очно о или злон меренно о поведения пользов телей системы.
Первым ру ежом о ороны при з щите д нных от нес нкциониров нно о доступ является процедур ло ическо о вход . Опер ционн я систем должн у едиться, что в систему пыт ется войти пользов тель, вход которо о р зрешен
дминистр тором. Функции з щиты ОС воо ще очень тесно связ ны с
функциями дминистриров ния, т к к к именно дминистр тор определяет
пр в пользов телей при их о р щении к р зным ресурс м системы — ф йл м,
к т ло м, |
принтер м, |
ск |
нер м |
и т. |
п. |
Кроме то о, |
дминистр тор |
|
о р ничив ет возможности |
пользов телей |
в |
выполнении |
тех |
или иных |
|||
системных |
действий. |
Н пример, |
пользов телю может |
ыть |
з прещено |
|||
выполнять процедуру з вершения р |
оты ОС, уст н влив ть системное время, |
з верш ть чужие процессы, созд в ть учетные з писи пользов телей, изменять
пр в доступ к некоторым к т ло |
м и ф йл м. Администр тор может т кже |
||||
урез ть возможности пользов тельско о |
интерфейс , у р в, |
н пример, |
|||
некоторые пункты из меню опер ционной системы, выводимо о н |
дисплей |
||||
пользов теля. |
|
|
|
|
|
В жным средством |
з щиты |
д нных |
являются функции |
удит ОС, |
|
з ключ ющиеся в фикс ции всех со ытий, |
от которых з висит |
езоп сность |
|||
системы. Н пример, попытки уд чно о и |
неуд чно о ло ическо о |
вход в |
|||
систему, опер ции доступ |
к некоторым к т ло м и ф йл м, использов ние |
принтеров и т. п. Список со ытий, которые нео ходимо отслежив ть,
определяет дминистр тор ОС.
Поддержк отк зоустойчивости ре лизуется опер ционной системой,
к к пр вило, н основе резервиров ния. Ч ще все о в функции ОС входит
поддерж ние нескольких копий д нных н р зных диск х или р зных дисковых н копителях. Резервируются т кже принтеры и дру ие устройств ввод -
вывод . При отк зе одно о из из ыточных устройств опер ционн я систем
должн |
ыстро |
и |
прозр чным для |
пользов теля о р зом |
произвести |
||||
реконфи ур цию |
системы и продолжить р |
оту с |
резервным устройством. |
||||||
Осо ым |
случ ем |
о еспечения отк зоустойчивости |
является |
использов ние |
|||||
нескольких процессоров, то есть мультипроцессиров ние, |
ко д |
систем |
|||||||
продолж ет р оту при отк зе одно о |
из |
процессоров, хотя и |
с |
меньшей |
|||||
производительностью. |
(Нео ходимо отметить, что |
мно ие |
ОС |
использует |
мультипроцессорную конфи ур цию компьютер |
только для ускорения р оты |
|
и при отк зе одно о из процессоров прекр щ ют р |
оту.) |
|
Поддержк |
отк зоустойчивости т кже входит в о яз нности системно о |
|
дминистр тор . |
В сост в ОС о ычно входят утилиты, позволяющие |
дминистр тору выполнять ре улярные опер ции резервно о копиров ния для о еспечения ыстро о восст новления в жных д нных.
3.2.5 Интерфейс прикладного программирования
Прикл дные про р ммисты используют в своих приложениях о р щения к ОС, ко д для выполнения тех или иных действий им тре уется
осо ый ст тус, которым о л д ет только опер ционн я систем . Н пример, в
ольшинстве современных ОС все действия, связ нные с упр влением
пп р тными средств ми компьютер , может выполнять только ОС. Помимо
этих функций прикл дной про р ммист может воспользов ться н ором
сервисных функций ОС, которые упрощ ют н пис ние приложений. Функции
т ко о |
тип ре лизуют |
универс льные действия, ч сто |
тре ующиеся |
в |
||
р зличных приложениях, т кие, н пример, к к о р |
отк текстовых строк. Эти |
|||||
функции мо ли ы |
ыть выполнены и с мим приложением, |
одн ко ор здо |
||||
проще |
использов ть |
уже |
отовые, отл женные |
процедуры, |
включенные |
в |
сост в опер ционной системы. В то же время д же при н личии в ОС соответствующей функции про р ммист может ре лизов ть ее с мостоятельно в р мк х приложения, если предложенный опер ционной системой в ри нт е о не вполне устр ив ет.
Возможности опер ционной системы доступны |
прикл дному |
про р ммисту в виде н ор функций, н зыв юще ося |
интерфейсом |
прикл дно о про р ммиров ния (Application Programming Interface, API). От
конечно о |
пользов теля |
эти |
функции |
скрыты |
з о олочкой |
лф витно- |
|
цифрово о или |
р фическо о пользов тельско о интерфейс . |
|
|||||
Для |
р зр отчиков |
приложений все |
осо енности |
конкретной |
|||
опер ционной |
системы |
предст влены |
осо енностями ее API. Поэтому |
опер ционные |
системы с р зличной внутренней ор |
низ цией, но |
с |
один ковым н |
ором функций API к жутся им одной и |
той же ОС, |
что |
упрощ ет ст нд ртиз цию опер ционных систем и о еспечив ет переносимость
приложений |
|
между |
внутренне |
р зличными |
ОС, |
соответствующими |
||||
определенному ст нд рту н |
API. Н пример, следов ние о щим ст нд рт м |
|||||||||
API UNIX, одним из которых является ст нд рт Posix, позволяет |
оворить о |
|||||||||
некоторой о о щенной опер ционной системе UNIX, хотя мно очисленные |
||||||||||
версии этой ОС от р зных производителей ино д |
существенно отлич ются |
|||||||||
внутренней ор |
низ цией. |
|
|
|
|
|
|
|
||
Приложения выполняют о р щения к функциям API с помощью |
||||||||||
системных |
вызовов. |
Спосо , которым |
приложение |
получ ет |
услу и |
|||||
опер ционной |
системы, очень похож н |
вызов подпро р мм. |
нформ ция, |
|||||||
нужн я ОС |
и |
состоящ я о ычно |
из идентифик тор ком нды |
и |
д нных, |
|||||
помещ ется |
в |
определенное |
место |
п мяти, в ре истры |
и/или |
стек. З тем |
упр вление перед ется опер ционной системе, котор я выполняет тре уемую функцию и возвр щ ет результ ты через п мять, ре истры или стеки. Если опер ция проведен неуспешно, то результ т включ ет индик цию оши ки.
Спосо |
ре лиз ции |
системных вызовов |
з висит |
от структурной |
ор низ ции |
ОС, котор я, |
в свою очередь, тесно |
связ н |
с осо енностями |
пп р тной пл тформы. Кроме то о, он з висит от язык про р ммиров ния.
При использов нии ссем лер про р ммист уст н влив ет зн чения ре истров и/или о л стей п мяти, з тем выполняет специ льную инструкцию вызов сервис или про р ммно о прерыв ния для о р щения к некоторой функции ОС. При использов нии языков высоко о уровня функции ОС вызыв ются тем же спосо ом, что и н пис нные пользов телем подпро р ммы, тре уя з д ния определенных р ументов в определенном порядке.
3.2.6 Пользовательский интерфейс
Опер ционн я систем должн о еспечив ть удо ный интерфейс не только для прикл дных про р мм, но и для человек , р от юще о з
термин лом. |
Этот |
человек |
может |
ыть |
конечным |
пользов телем, |
||||||
дминистр тором ОС или про р ммистом. |
|
|
|
|
|
|||||||
В |
р нних |
опер ционных систем х |
п кетно о |
режим |
функции |
|||||||
пользов тельско о |
интерфейс |
ыли сведены к минимуму и не |
тре ов ли |
|||||||||
н личия |
термин л . Ком нды язык упр вления |
з д ниями |
н ив лись н |
|||||||||
перфок рты, |
результ ты выводились н |
печ т ющее устройство. |
|
|||||||||
Современные ОС поддержив ют р звитые функции пользов тельско о |
||||||||||||
интерфейс |
для интер ктивной р |
оты з |
термин л ми двух типов: |
лф витно- |
||||||||
цифровыми и |
р фическими. |
|
|
|
|
|
|
|
||||
При р |
оте з лф витно-цифровым термин лом пользов тель имеет в |
|||||||||||
своем |
р споряжении |
систему |
ком нд, |
мощность |
который |
отр ж ет |
функцион льные возможности д нной ОС. О ычно ком ндный язык ОС позволяет з пуск ть и ост н влив ть приложения, выполнять р зличные
опер ции с ф йл ми и к т ло ми, получ ть информ цию о состоянии ОС
(количество р от ющих процессов, о ъем сво одно о простр нств н диск х
и т. п.), дминистриров ть систему. Ком нды мо ут вводиться не только в интер ктивном режиме с термин л , но и считыв ться из т к н зыв емо о ком ндно о ф йл , содерж ще о некоторую последов тельность ком нд.
Про р ммный модуль ОС, ответственный з чтение отдельных ком нд или же последов тельности ком нд из ком ндно о ф йл , ино д н зыв ют ком ндным интерпрет тором.
Ввод ком нды может ыть упрощен, если опер ционн я систем поддержив ет р фический пользов тельский интерфейс. В этом случ е пользов тель для выполнения нужно о действия с помощью мыши вы ир ет н экр не нужный пункт меню или р фический символ.
3.3 Требования к современным операционным системам
Гл вным тре ов нием, предъявляемым к опер ционной системе,
является выполнение ею основных функций эффективно о упр вления ресурс ми и о еспечение удо но о интерфейс для пользов теля и прикл дных
про р мм. |
Современн я |
ОС, к к |
пр вило, |
должн |
поддержив ть |
мультипро р ммную о р |
отку, вирту льную п мять, свопин , мно ооконный |
||||
р фический |
интерфейс |
пользов теля, |
т кже |
выполнять |
мно ие дру ие |
нео ходимые функции и услу и. Кроме этих тре ов ний функцион льной
полноты к |
опер ционным |
систем м |
предъявляются |
не |
менее в жные |
эксплу т ционные тре ов ния, которые перечислены ниже. |
|
||||
Расширяемость. В то время |
к к пп р тн я |
ч сть компьютер |
|||
уст рев ет |
з несколько лет, |
полезн я |
жизнь опер ционных систем может |
||
измеряться |
десятилетиями. Примером |
может служить |
ОС |
UNIX. Поэтому |
опер ционные системы все д изменяются со временем эволюционно, и эти
изменения олее зн чимы, чем изменения пп р тных средств. зменения ОС
о ычно з ключ ются в прио ретении ею новых свойств, н пример поддержке новых типов внешних устройств или новых сетевых техноло ий. Если код ОС
н пис н т ким о р зом, |
что |
дополнения и изменения мо ут |
вноситься ез |
|
н рушения целостности |
системы, то т кую ОС н зыв ют |
р сширяемой. |
||
Р сширяемость дости |
ется з |
счет модульной структуры ОС, при которой |
||
про р ммы строятся из н |
ор |
отдельных модулей, вз имодействующих только |
||
через функцион льный интерфейс. |
|
|||
Переносимость. В иде ле код ОС должен ле ко переноситься с |
||||
процессор одно о тип |
н |
процессор дру о о тип и с пп р тной пл тформы |
(которые р злич ются не только типом процессор , но и спосо ом ор низ ции всей пп р туры компьютер ) одно о тип н пп р тную пл тформу дру о о
тип . Переносимые ОС имеют несколько в ри нтов ре лиз ции для р зных пл тформ, т кое свойство ОС н зыв ют т кже мно опл тформенностъю.
Совместимость. Существует несколько «дол оживущих» популярных опер ционных систем (р зновидности UNIX, MS-DOS, Windows 3.x, Windows
NT, OS/2), для которых н р от н широк я номенкл тур приложений.
Некоторые из них пользуются широкой популярностью. Поэтому для пользов теля, переходяще о по тем или иным причин м с одной ОС н дру ую,
очень привлек тельн возможность з пуск в новой опер ционной системе
привычно о приложения. Если ОС имеет средств для выполнения прикл дных
про р мм, н пис нных для дру их опер ционных систем, то про нее оворят,
что он о л д ет совместимостью с этими ОС. Следует р злич ть совместимость н уровне двоичных кодов и совместимость н уровне исходных
текстов. Понятие совместимости включ ет т кже поддержку пользов тельских интерфейсов дру их ОС.
Надежность и отказоустойчивость. Систем должн ыть з щищен к к от внутренних, т к и от внешних оши ок, с оев и отк зов. Ее действия
должны ыть все д предск зуемыми, приложения не должны иметь
возможности н носить вред ОС. Н дежность и отк зоустойчивость ОС прежде все о определяются рхитектурными решениями, положенными в ее основу,
т кже к чеством ее ре лиз ции (отл женностью код ). Кроме то о, в жно,
включ ет ли ОС про р ммную поддержку пп р тных средств о еспечения отк зоустойчивости, т ких, н пример, к к дисковые м ссивы или источники
еспере ойно о пит ния.
Безопасность. Современн я ОС должн з щищ ть д нные и дру ие
ресурсы вычислительной системы от нес нкциониров нно о доступ . Что ы
ОС о л д л свойством |
езоп сности, он |
должн |
к к минимум иметь в своем |
||
сост ве средств |
утентифик ции — определения ле льности пользов телей, |
||||
вториз ции |
— |
предост вления |
ле |
льным |
пользов телям |
дифференциров нных |
пр в |
доступ |
к ресурс м, удит |
— фикс ции всех |
|||
«подозрительных» для |
езоп сности системы со ытий. Свойство |
езоп сности |
|||||
осо енно |
в жно для сетевых ОС. В т ких ОС к з д че |
контроля доступ |
|||||
до вляется з д ч з щиты д нных, перед в емых по сети. |
|
|
|||||
Производительность. |
Опер ционн я |
систем |
должн |
о л д ть |
|||
н столько |
хорошим |
ыстродействием и временем ре кции, н сколько это |
|||||
позволяет |
пп р тн я пл тформ . Н |
производительность ОС влияет мно о |
|||||
ф кторов, |
среди которых основными являются |
рхитектур |
ОС, мно оо р зие |
функций, к чество про р ммиров ния код , возможность исполнения ОС н высокопроизводительной (мно опроцессорной) пл тформе.
3.4 Выводы
ОС — это комплекс вз имосвяз нных про р мм, предн зн ченный для
повышения эффективности пп р туры компьютер путем р цион льно о
упр вления е о ресурс ми, т кже для о еспечения удо ств пользов телю путем предост вления ему р сширенной вирту льной м шины.
К числу основных ресурсов, упр вление которыми осуществляет ОС,
относятся процессоры, основн я |
п мять, т ймеры, |
н |
оры д нных, диски, |
||||
н копители н |
м |
нитных лент х, |
принтеры, сетевые устройств |
и некоторые |
|||
дру ие. Ресурсы |
р спределяются |
между процесс ми. |
Для решения з д ч |
||||
упр вления |
ресурс ми р зные |
ОС |
используют |
р зличные |
л оритмы, |
||
осо енности которых в конечном счете |
и определяют о лик ОС. |
|
Н и олее в жными подсистем ми ОС являются подсистемы упр вления процесс ми, п мятью, ф йл ми и внешними устройств ми, т кже подсистемы
пользов тельско о интерфейс , з щиты д нных и дминистриров ния.
Прикл дному про р ммисту возможности ОС доступны в виде н ор функций, сост вляющих интерфейс прикл дно о про р ммиров ния (API).
В число тре ов ний, предъявляемых се одня к сетевым ОС, входят:
функцион льн я полнот и эффективность упр вления ресурс ми, модульность
и р сширяемость, переносимость и мно опл тформенность, совместимость н
уровне приложений |
и пользов тельских интерфейсов, н дежность и |
отк зоустойчивость, |
езоп сность и производительность. |
4 |
Архитектура операционной системы |
|
|
|
||||||
Лю |
я |
сложн я |
систем |
должн иметь |
понятную |
и р цион льную |
||||
структуру, |
то |
есть р зделяться |
н |
ч сти |
— |
модули, |
имеющие |
вполне |
||
з конченное функцион льное н зн чение с |
четко о оворенными пр вил ми |
|||||||||
вз имодействия. |
Ясное |
поним ние |
роли |
к ждо о отдельно о |
модуля |
|||||
существенно упрощ ет р |
оту по модифик ции и р звитию системы. Н против, |
|||||||||
сложную систему |
ез хорошей структуры ч ще проще р зр |
от ть з ново, чем |
модернизиров ть.
Функцион льн я сложность опер ционной системы неиз ежно приводит к сложности ее рхитектуры, под которой поним ют структурную ор низ цию ОС н основе р зличных про р ммных модулей. О ычно в сост в ОС входят
исполняемые и о ъектные |
модули ст нд ртных для |
д нной ОС форм тов, |
и лиотеки р зных типов, |
модули исходно о текст про р мм, про р ммные |
|
модули специ льно о форм т (н пример, з рузчик |
ОС, др йверы ввод - |
вывод ), конфи ур ционные ф йлы, ф йлы документ ции, модули спр вочной системы и т. д.
Большинство современных опер ционных систем предст вляют со ой
хорошо |
структуриров нные |
модульные системы, спосо ные |
к р звитию, |
|
р сширению и переносу н |
новые пл тформы. К кой-ли о единой |
рхитектуры |
||
ОС не |
существует, |
но |
существуют универс льные |
подходы к |
структуриров нию ОС. |
|
|
|
4.1 Ядро и вспомогательные модули ОС
Н и олее о щим подходом к структуриз ции опер ционной системы
является р зделение всех ее модулей н |
две руппы: |
- ядро — модули, выполняющие основные функции ОС; |
|
- модули, выполняющие вспомо тельные функции ОС. |
|
Модули ядр выполняют т кие |
зовые функции ОС, к к упр вление |
процесс ми, п мятью, устройств ми ввод -вывод и т. п. Ядро сост вляет