Мікраядро

З пляцоўкі Вікіпедыя
Перайсці да: рух, знайсці
Архітэктура мікраядра будуецца на праграмах-серверах карыстальніцкага рэжыма

Мікраядро — гэта мінімальная рэалізацыя функцый ядра аперацыйнай сістэмы.

Класічныя мікраядры падаюць вельмі невялікі набор нізкаўзроўневых прымітываў, ці сістэмных выклікаў, якія рэалізуюць базавыя сервісы аперацыйнай сістэмы.

Да іх належаць:

Усе астатнія сервісы АС, у класічных маналітных ядрах, якія падае непасрэдна ядро, у мікраядравых архітэктурах рэалізуюцца у адраснай прасторы карыстальніка (Ring3) і завуцца сервісамі. Пракладамі такіх сервісаў, выносных у прастору карыстальніка у мікраядравых архітэктурах, з'яўляюцца сеткавыя сервісы, файлавая сістэма, драйверы.

Асноўная годнасць мікраядравай архітэктуры — высокая ступень модульнасці ядра аперацыйнай сістэмы. Гэта істотна спрошчвае даданне ў яго новых кампанентаў. У мікраядраванй аперацыйнай сістэме можна не перапыняючы яе работы загружаць і выгружаць новыея драйверы, файлавыя сістэмы і г. д. Істотна спрошчваецца працэс адладкі кампанентаў ядра, бо новая версія драйвера можа загружацца без перазапуску ўсёй аперацыйнай сістэмы. Кампаненты ядра аперацыйнай сістэмы нічым прынцыпова не адрозніваюцца ад карыстальніцкіх праграм, таму для іх адладкі можна ўжываць звычайныя сродкі. Мікраядравая архітэктура паляпшае надзейнасць сістэмы, бо памылка на ўзроўні непрывілеяванай праграмы меньш небяспечная, чым адмова на ўзроўні рэжыма ядра.

Каб дадаь у АС з мікраядром драйвер якой-небудзь прылады, не трэба перакампіляваць усё ядро, а патрэбна толькі асобна адкампіляваць гэты драйвер і запусціць яго ў карыстальніцкай прасторы.

У той жа час мікраядравая архітэктура аперацыйнай сістэмы стварае дадатковыя накладныя выдаткі, звязаныя з абменам паведамленнямі, што адмоўна ўплывае на прадукцыйнасць. Для таго каб мікраядравая аперацыйная сістэма па хуткасці не саступала аперацыйным сістэмам на базе маналітнага ядра, патрабуецца вельмі акуратна праектаваць разбіццё сістэмы на кампаненты, імкнучыся мінімізаваць узаемадзеянні паміж імі. Такім чынам, асноўная складанасць пры стварэнні мікраядравых аперацыйных сістэм — неабходнасць вельмі акуратнага праектавання.

Мікраядры тыпу ядра АС Minix і GNU Hurd развіваюцца марудна, значна павольней, чым Linux і ядро сістэм сямейства BSD. Па словах стваральніка Minix3, Эндру Таненбаўма, ён імкнецца «пабудаваць звышнадзейную (very highly reliable) сістэму. Яна можа ўжывацца ў тым ліку на серверах, якім патрэбны годы безадмоўнай работы».[1]

Класічным прыкладам мікраядравай сістэмы з'яўляецца Symbian OS. Гэта прыклад распаўсюджанай і адпрацаванай мікраядравай (a пачынаючы з версіі Symbian OS v8.1, і нанаядравай) аперацыйнай сістэмы.

Стваральнікам Symbian OS удалося сумясціць эфектыўнасць і канцэптуальную статнасць, нягледзячы на тое, што сучасныя версіі гэтай сістэмы падаюць вялікія магчымасці, у тым ліку сродкі для работы з струменевымі данымі, стэкамі пратаколаў, крытычнымі да латэнтнасці ядра, графікай і відэа высокага разрознення). Распрацоўшчыкі Symbian вынеслі практычна ўсе прыкладныя (г.з. выходзячыя за межы кампетэнцыі ядра) задачы ў модулі-серверы, якія функцыянуюць ў карыстальніцкай адраснай прасторы.

У АС Windows NT версій 3.х мікраядравая архітэктура з сервісным працэсам ужывалася для падсістэмы графікі і інтэрфейсу карыстальніка. У прыватнасці, драйвер графічнай апаратуры загружаўся ў кантэкст сервіснага працэса, а не ядра. Пачынаючы з версіі 4, ад гэтага адмовіліся, сервісны працэс захаваўся толькі для кіравання кансольнымі вокнамі каманднага радка, а ўласна графічная падсістэма разам з драйверам апаратуры (у тым ліку трохмернай графикі) перасунулася ў спецыяльна адасоблены рэгіён ядра АС.

АС Windows CE (і створаныя на яе аснове зборкі, такія, як Windows Mobile), будучы практычна цалкам сумяшчальнай (як падмноства) з Windows NT па сістэмным выклікам і метадам праграмавання праграм, тым не меньш цалкам адрозніваецца ад Windows NT па ўнутранай архітэктуры і з'яўляецца мікраядравай АС з вынасам усіх драйвераў прылад, сеткавых стэкаў і графічнай падсістэмы у сервісныя працэсы.

Недахоп — плата за прымусовае «пераключэнне» працэсаў у ядры (пераключэнне кантэксту); гэты факт тлумачыць цяжкасці ў праектаванні і напісанні ядраў подобнай канструкцыі. Гэтыя недахопы здольны пераадолець АС, якія выкарыстоўваюць архітэктуру экзаядра, і з'яўляюцца ладейшым развіццём мікраядравай архітэктуры.

Гл. таксама[правіць | правіць зыходнік]

Мікраядры
АС на аснове мікраядраў

Зноскі

Спасылкі[правіць | правіць зыходнік]