Общая часть (часть 2) (2015) (by Кибитова) (1161598), страница 31
Текст из файла (страница 31)
подходовВ этом случаеядро ОС представляетсобоюединуюсистем.Одинизнихможноназватьклассическим:ониспользовалсявпервыхвсистем.Одинизклассическим:ониспользовалсявпервыхмонолитную программу, в которой отсутствует явная структуризация, хотя, конечно,операционныхсистемахииспользуетсяпор—этоподход,основанныйнаоперационныхсистемахдосихпор—этоподход,основанныйнаней есть логическая структуризация. Это означает, что монолитное ядро содержитиспользованииядра. В этомядро функций,ОС представляетпредставляетсобоюединуюиспользовании монолитногомонолитногослучаеядроОСединуюфиксированноечисло реализованныхв нембазовыхпоэтомусобоюмодификациямонолитнуюпрограмму,вкоторойотсутствуетструктуризация,хотя,конечно,монолитнуюпрограмму,явнаяструктуризация,хотя,конечно,ввфункционального набора достаточно затруднительна (необходима практически полнаяней естьесть логическаялогическаяЭто ядраозначает,чтоядросодержитнейструктуризация.что монолитноемонолитноеядросодержитпеределкаядра).
Устройствомонолитногонапоминаетфизическуюорганизациюфиксированноечисловнембазовыхфункций,поэтомумодификацияфиксированноечислореализованныхфункций,поэтомумодификацияпервых компьютеров: в них также нельзя было выделить отдельные физическиефункционального блокинабора—достаточнозатруднительна(необходимапрактическифункциональногонабора(необходимапрактически полнаяполнаяфункциональныевсе было единым,монолитными интегрированнымдруг спеределкаядра).Устройствоядранапоминаетфизическуюорганизациюпеределкаядра).Устройствомонолитногонапоминаетфизическуюорганизациюдругом. Аналогичными свойствами обладают одноплатные компьютеры, у которых всепервых компьютеров:компьютеров:было выделитьотдельныефизическиепервыхв (ЦПУ,них такжевыделитьотдельныефизическиенеобходимыекомпонентыОЗУ и нельзяпр.) расположенына однойплате, и, чтобычто-тофункциональныеблоки—всебылоединым,монолитнымиинтегрированнымдругссфункциональныеблокимонолитнымиинтегрированнымдругизменить в этой конфигурации, требуются соответствующие инженерные знания.другом.
АналогичнымиАналогичными свойствами обладают одноплатныедругом.одноплатные компьютеры,компьютеры, уу которыхкоторых всевсенеобходимыекомпоненты(ЦПУ,ОЗУипр.)расположенынаоднойплате,и,чтобычто-тонеобходимые компонентырасположены на одной плате, и, чтобы что-то91изменить вв этойэтой конфигурации,конфигурации, требуются соответствующиеинженерныеизменитьсоответствующиеинженерные знания.знания. 9191На Рис. 73 проиллюстрирована структурная организация классической системыРис. 73проиллюстрированаклассическойсистемыструктурнаяинтерфейсорганизацияклассическойсистемыUnix. ВНаданномслучаеядро имеет фиксированныйсистемныхвызовов.В немUnix.Вданномслучаеядроимеетвызовов.Внемфиксированныйинтерфейссистемныхвызовов.Внемреализованоуправлениепроцессами, а такжедрайверорганизацияфайловой системы,реализованавсяНа Рис.73 проиллюстрированаструктурнаяклассическойсистемыреализованоуправлениепроцессами,реализованавсяатакжедрайверфайловойсистемы,реализованаUnix.
Всистемыданном случаеядро имеетработыфиксированныйинтерфейссистемныхвызовов.В немвсялогикапо организациис устройствами(которыеможноразделитьналогикасистемыпоорганизацииработыразделитьнасустройствами(которыеможноразделитьнареализованоуправлениепроцессами,атакжедрайверфайловойсистемы,реализованавсябайт-ориентированные и блок-ориентированные) и пр.и пр.байт-ориентированныеи блок-ориентированные)логика системы по организацииработы с устройствами(которые можно разделить набайт-ориентированныеи блок-ориентированные)и пр.ПрограммыпользователяУровеньПрограммы пользователяУровеньпользователяПрограммы пользователяпользователяУровеньпользователяБиблиотекиБиблиотекиБиблиотекиИнтерфейс системных вызововИнтерфейс системных вызововИнтерфейс системных вызововФайловая подсистемаФайловая подсистемаВзаимодействие междуВзаимодействие междупроцессамиВзаимодействиемеждупроцессамипроцессамиПланировщикПланировщикПланировщикФайловая подсистемаБуферБуферБуферБайтБлокБайтБлокориентированныеориентированныеБайтБлокориентированныеориентированныеустройстваустройстваориентированныеориентированныеустройстваустройстваустройстваУправление памятьюУправление памятьюУправление памятьюустройстваДрайверы устройствДрайверы устройствМонолитное ядроДрайверы устройствУровень аппаратного обеспеченияУровень аппаратного обеспеченияУровень аппаратного обеспеченияМонолитное ядроМонолитное ядроАппаратное обеспечениеАппаратноеобеспечениеобеспечениеАппаратноеРис.73.
СтруктураОСмонолитнымядром.Рис.ОС ссс монолитныммонолитнымядром.ядром.Рис. 73.73. СтруктураСтруктура ОС Чтокасается достоинствданногоподхода,то можноможно утверждать,утверждать, чточто длядляЧтоданного подхода,подхода, тотоутверждать,Что касаетсякасается достоинствдостоинств данногоможно утверждать,чточтодлядляконкретногосостава функциональностии логикиядра этоэто будетбудет наиболеенаиболее эффективноеэффективноелогикиядраядраконкретногоэффективноеконкретного составасостава функциональностифункциональности ии логикиэто будетнаиболее эффективноерешение(т.к.оноимеетминимальноеколичествоинтерфейсныхсочленений,связанныхколичествоинтерфейсныхинтерфейсныхсочленений,сочленений,связанныхрешениеминимальное количествосочленений,связанныхрешение (т.к.(т.к.
онооно имеетимеет минимальноесвязанныхсопритакомподходеотсутствуетуниверсальность,универсальность,и ииитаком подходеподходе отсутствуетотсутствуетуниверсальность,соструктуризацией).Однакопри такомуниверсальность,со структуризацией).структуризацией). ОднакоОднако привнутренняяорганизацияядрарассчитананаконкретнуюреализацию.Недостатокэтомна конкретнуюконкретнуюреализацию.реализацию.НедостатокНедостатокввв этомвнутренняя организацияорганизация ядра рассчитанав этомвнутренняярассчитана наНедостатокэтомслучаеперепрограммироватьядроприпривнесенииизменений,случаезаключаетсянеобходимостиперепрограммироватьядроядропривнесенииизменений,случаезаключаетсязаключаетсявв необходимостинеобходимости перепрограммироватьвнесенииизменений,внесенииизменений,иии этоявляетсяпрерогативойразработчика.Соответственно,длявнесенияновойСоответственно, длядля внесениявнесенияновойэто являетсяявляется прерогативойпрерогативой разработчика.эторазработчика.
Соответственно,внесенияновойновойфункциональностипользователюсистемыприходитсяобращатьсякразработчику,чтофункциональности пользователюпользователю системычточтосистемы приходитсяприходитсяобращатьсяобращатьсяк кразработчику,разработчику,функциональностиразработчику,чтозачастуюзатратам.зачастуюведетведеткккматериальнымматериальным затратам.зачастуюведетматериальнымзатратам. АльтернативуданномуподходупредлагаютмногослойныеоперационныеоперационныеАльтернативуданномумногослойныеоперационныеАльтернативу данному подходуподходу предлагаютпредлагают многослойныеоперационныесистемы.ВВВэтомэтом случаевсеуровнислои.системы.разделяютсянекоторыефункциональныефункциональныеслои.системы.этомслучае всеуровни разделяютсянанекоторыенекоторыефункциональныеслои.все уровниразделяютсянафункциональныеслои.Здесьможнопровестианалогиюсмодельюсетевыхпротоколов.МеждуслоямиимеютсяЗдесьможнопровестианалогиюмодельюсетевыхпротоколов.МеждуслоямиимеютсяЗдесь можно провести аналогию с моделью сетевых протоколов.
Между слоямислоями имеютсяимеютсяфиксированные интерфейсы.интерфейсы. УправлениефиксированныеУправлениепроисходитпосредствомвзаимодействиявзаимодействияпосредствомвзаимодействияфиксированныеинтерфейсы.Управление происходитпроисходит посредствомвзаимодействиясоседнихслоев.слоев. ПосколькуПоскольку любаялюбая(программа,соседнихструктуризацияэффективность(программа,соседнихслоев.Посколькулюбая структуризацияснижаетэффективностьэффективность(программа,структуризацияснижает(программа,написанная вв видевиде однойодной большойбольшой функции,работаетбыстрее,чеманалогичнаянаписаннаяфункции,работаетбыстрее,чеманалогичнаянаписанная в виде одной большой функции, работает быстрее, чем аналогичнаяаналогичнаяпрограмма, разбитая нана подпрограммы, т.к.любое обращениеведетк ккпрограмма,обращениек ккподпрограммеподпрограммеведетподпрограммеведетпрограмма, разбитаяразбитая на подпрограммы,подпрограммы, т.к.
любое обращениеподпрограммеведеткнакладнымрасходам),топодобныесистемыобладаютболеенизкойэффективностью.накладнымрасходам),расходам), тото подобныеподобные системысистемы обладают более низкойнакладнымнизкой эффективностью.эффективностью.эффективностью. Итак, каждыйкаждый слойслой предоставляетпредоставляет определенныйслою.сервисвышестоящемуслою.Итак,определенныйсервиссервисвышестоящемувышестоящемуслою.Итак,каждыйслойпредоставляетвышестоящемуслою.Деление на слои является индивидуальным для каждой конкретной операционнойДелениена слоислои являетсяявляется индивидуальныминдивидуальным для каждой конкретнойДелениенаконкретной операционнойоперационнойсистемы. Это может быть слой файловой системы, слой управления операционнойвнешнимисистемы.Этоможетбытьслойфайловойсистемы,слойуправлениясистемы.
Это может быть слойслой управленияуправления внешнимивнешнимивнешнимиустройствами и т.д. Тогда модернизация подобных систем сводитсяк модернизациисистем сводитсякк модернизацииустройствамиит.д.Тогдамодернизацияподобныхсводитсямодернизацииустройствамиит.д.Тогдамодернизациямодернизациисоответствующих слоев. Вследствие чего проблема несколько упрощается, но при этомсоответствующихслоев.наВследствиечего проблема несколько упрощается,ноприсоответствующихслоев.Вследствиенопри этомэтомприэтомостаются ограниченияструктурную организацию (например,упрощается,имея слой нофайловойостаются(например, имеяимея слойслой файловойфайловойостаются ограниченияограничения нана структурнуюструктурную организацию (например,слойфайловой 929292…………ФайловаясистемасистемаФайловаяФайловая системаФайловая система…………ДрайверДрайверустройстваустройстваДрайверДрайверустройстваустройстваУправлениеУправлениеУправлениеУправлениепроцессамипроцессамипроцессамипроцессамиДрайверДрайверустройстваустройстваДрайверустройстваустройстваДрайверсистемы, можноможно заменитьзаменитьегоегодругимдругимвариантомвариантомэтогоэтогослоя,слоя,ноиспользоватьсистемы,ноиспользоватьсистемы,можнозаменитьегодругимвариантомэтогослоя,ноиспользоватьсистемы,можнозаменитьегодругимвариантомэтогослоя,ноиспользоватьодновременнодверазличныефайловыесистемыне представляетсявозможным).одновременнодверазличныефайловыесистемыневозможным).одновременнодверазличныефайловыесистемыненепредставляетсяпредставляетсявозможным).одновременнодверазличныефайловыесистемыпредставляетсявозможным).Третийподходпредлагаетиспользоватьмикроядернуюархитектуру(Рис.74).Третий подходподход предлагаетпредлагает использоватьиспользовать микроядернуюархитектуру(Рис.74).Третиймикроядернуюархитектуру(Рис.74).Третийподходпредлагаетиспользоватьмикроядернуюархитектуру(Рис.74).Функционированиеоперационныхсистемподобноготипаосновываетсяна использованииФункционированиеоперационныхсистемподобноготипаосновываетсянаиспользованииФункционированиеоперационныхсистемподобноготипанаФункционированиеоперационныхсистемподобноготипаосновываетсяосновываетсянаиспользованиииспользованиит.н.микроядра.Вэтомслучаевыделяетсяминимальныйнаборфункций(например,т.н.