Ãèáðèäíîå ÿäðî
| Ïðîâåðèòü èíôîðìàöèþ.
Íåîáõîäèìî ïðîâåðèòü òî÷íîñòü ôàêòîâ è äîñòîâåðíîñòü ñâåäåíèé, èçëîæåííûõ â ýòîé ñòàòüå.
Íà ñòðàíèöå îáñóæäåíèÿ äîëæíû áûòü ïîÿñíåíèÿ. |
Ãèáðèäíîå ÿäðî (àíãë. Hybrid kernel) â ìîäèôèöèðîâàííûå ìèêðîÿäðà (ìèíèìàëüíàÿ ðåàëèçàöèÿ îñíîâíûõ ôóíêöèé ÿäðà îïåðàöèîííîé ñèñòåìû êîìïüþòåðà), ïîçâîëÿþùèå äëÿ óñêîðåíèÿ ðàáîòû çàïóñêàòü «íåñóùåñòâåííûå» ÷àñòè â ïðîñòðàíñòâå ÿäðà.
Èìåþò «ãèáðèäíûå» äîñòîèíñòâà è íåäîñòàòêè.
Âñå ðàññìîòðåííûå ïîäõîäû ê ïîñòðîåíèþ îïåðàöèîííûõ ñèñòåì èìåþò ñâîè äîñòîèíñòâà è íåäîñòàòêè.  áîëüøèíñòâå ñëó÷àåâ ñîâðåìåííûå îïåðàöèîííûå ñèñòåìû èñïîëüçóþò ðàçëè÷íûå êîìáèíàöèè ýòèõ ïîäõîäîâ. Òàê, íàïðèìåð ñåé÷àñ, ÿäðî «Linux» ïðåäñòàâëÿåò ñîáîé ìîíîëèòíóþ ñèñòåìó ñ îòäåëüíûìè ýëåìåíòàìè ìîäóëüíîãî ÿäðà. Ïðè êîìïèëÿöèè ÿäðà ìîæíî ðàçðåøèòü äèíàìè÷åñêóþ çàãðóçêó è âûãðóçêó î÷åíü ìíîãèõ êîìïîíåíòîâ ÿäðà â òàê íàçûâàåìûõ ìîäóëåé.  ìîìåíò çàãðóçêè ìîäóëÿ åãî êîä çàãðóæàåòñÿ íà óðîâíå ñèñòåìû è ñâÿçûâàåòñÿ ñ îñòàëüíîé ÷àñòüþ ÿäðà. Âíóòðè ìîäóëÿ ìîãóò èñïîëüçîâàòüñÿ ëþáûå ýêñïîðòèðóåìûå ÿäðîì ôóíêöèè.
Ñóùåñòâóþò âàðèàíòû ÎÑ GNU (Debian GNU/Hurd), â êîòîðûõ âìåñòî ìîíîëèòíîãî ÿäðà ïðèìåíÿåòñÿ ÿäðî Mach (òàêîå æå, êàê â Hurd), à ïîâåðõ íåãî â ïîëüçîâàòåëüñêîì ïðîñòðàíñòâå ðàáîòàþò òå æå ñàìûå ïðîöåññû, êîòîðûå ïðè èñïîëüçîâàíèè Linux áûëè áû ÷àñòüþ ÿäðà. Äðóãèì ïðèìåðîì ñìåøàííîãî ïîäõîäà ìîæåò ñëóæèòü âîçìîæíîñòü çàïóñêà îïåðàöèîííîé ñèñòåìû ñ ìîíîëèòíûì ÿäðîì ïîä óïðàâëåíèåì ìèêðîÿäðà. Òàê óñòðîåíû 4.4BSD è MkLinux, îñíîâàííûå íà ìèêðîÿäðå Mach. Ìèêðîÿäðî îáåñïå÷èâàåò óïðàâëåíèå âèðòóàëüíîé ïàìÿòüþ è ðàáîòó íèçêîóðîâíåâûõ äðàéâåðîâ. Âñå îñòàëüíûå ôóíêöèè, â òîì ÷èñëå âçàèìîäåéñòâèå ñ ïðèêëàäíûìè ïðîãðàììàìè, îñóùåñòâëÿåòñÿ ìîíîëèòíûì ÿäðîì. Äàííûé ïîäõîä ñôîðìèðîâàëñÿ â ðåçóëüòàòå ïîïûòîê èñïîëüçîâàòü ïðåèìóùåñòâà ìèêðîÿäåðíîé àðõèòåêòóðû, ñîõðàíÿÿ ïî âîçìîæíîñòè õîðîøî îòëàæåííûé êîä ìîíîëèòíîãî ÿäðà.
Íàèáîëåå òåñíî ýëåìåíòû ìèêðîÿäåðíîé àðõèòåêòóðû è ýëåìåíòû ìîíîëèòíîãî ÿäðà ïåðåïëåòåíû â ÿäðå Windows NT. Õîòÿ Windows NT ÷àñòî íàçûâàþò ìèêðîÿäåðíîé îïåðàöèîííîé ñèñòåìîé[1], ýòî íå ñîâñåì òàê. Ìèêðîÿäðî NT ñëèøêîì âåëèêî (áîëåå 1 Ìáàéò, êðîìå òîãî, â ÿäðå ñèñòåìû íàõîäèòñÿ, íàïðèìåð, åù¸ è ìîäóëü ãðàôè÷åñêîãî èíòåðôåéñà), ÷òîáû íîñèòü ïðèñòàâêó «ìèêðî». Êîìïîíåíòû ÿäðà Windows NT ðàñïîëàãàþòñÿ â âûòåñíÿåìîé ïàìÿòè è âçàèìîäåéñòâóþò äðóã ñ äðóãîì ïóòåì ïåðåäà÷è ñîîáùåíèé[1][2], êàê è ïîëîæåíî â ìèêðîÿäåðíûõ îïåðàöèîííûõ ñèñòåìàõ.  òî æå âðåìÿ âñå êîìïîíåíòû ÿäðà ðàáîòàþò â îäíîì àäðåñíîì ïðîñòðàíñòâå è àêòèâíî èñïîëüçóþò îáùèå ñòðóêòóðû äàííûõ, ÷òî ñâîéñòâåííî îïåðàöèîííûì ñèñòåìàì ñ ìîíîëèòíûì ÿäðîì. Ïðè÷èíà ïðîñòà: ÷èñòî ìèêðîÿäåðíûé äèçàéí êîììåð÷åñêè ìåíåå âûãîäåí, ïîñêîëüêó ìåíåå ýôôåêòèâåí (çà ñ÷åò íàêëàäíûõ ðàñõîäîâ íà ïåðåäà÷ó ñîîáùåíèé òàì, ãäå ìîæíî áûëî îáîéòèñü âûçîâàìè ôóíêöèé).
Òàêèì îáðàçîì, Windows NT ìîæíî ñ ïîëíûì ïðàâîì íàçâàòü ãèáðèäíîé îïåðàöèîííîé ñèñòåìîé.
Ñìåøàííîå ÿäðî, â ïðèíöèïå, äîëæíî îáúåäèíÿòü ïðåèìóùåñòâà ìîíîëèòíîãî ÿäðà è ìèêðîÿäðà: êàçàëîñü áû, ìèêðîÿäðî è ìîíîëèòíîå ÿäðî â êðàéíîñòè, à ñìåøàííîå â çîëîòàÿ ñåðåäèíà.  íèõ âîçìîæíî äîáàâëÿòü äðàéâåðà óñòðîéñòâ äâóìÿ ñïîñîáàìè: è âíóòðü ÿäðà, è â ïîëüçîâàòåëüñêîå ïðîñòðàíñòâî. Íî íà ïðàêòèêå êîíöåïöèÿ ñìåøàííîãî ÿäðà ÷àñòî ïîä÷¸ðêèâàåò íå òîëüêî äîñòîèíñòâà, íî è íåäîñòàòêè îáîèõ òèïîâ ÿäåð.
[ïðàâèòü] Ïðèìåðû
- Syllable
- BeOS
- Haiku
- XNU (íà îñíîâå Darwin, èñïîëüçóåòñÿ â Mac OS X)
- BSD-îñíîâàííûå
- DragonFly BSD (ïåðâîå èç ñåìåéñòâà BSD ìèêðîÿäðî, îñíîâàííîå íå íà Mach)
- NetWare[3]
- Plan 9
- Inferno
- NT kernel (èñïîëüçóåòñÿ Windows NT, 2000, 2003; XP, Vista, 7)
- ReactOS
[ïðàâèòü] Ïðèìå÷àíèÿ
- â‘ 1 2 MS Windows NT Kernel-mode User and GDI White Paper. Microsoft Corporation (2007). Àðõèâèðîâàíî èç ïåðâîèñòî÷íèêà 12 ôåâðàëÿ 2012. Ïðîâåðåíî 1 ìàðòà 2007.
- â‘ Silberschatz Abraham Operating System Concepts; 7th Edition. â Hoboken, New Jersey: John Wiley & Sons Inc. â ISBN 978-0-471-69466-3
- â‘ An Overview of the NetWare Operating System(2007-02-07)
[ïðàâèòü] Ññûëêè
- Linus Torvalds on Real World Tech
- Hybrid Kernel category criticised
- Sysinternals article about the NT Native API
| Îïåðàöèîííûå ñèñòåìû (èñòîðèÿ) | |
|---|---|
| ßäðî | |
| Óïðàâëåíèå ïðîöåññàìè |
|
| âïàìÿòüþ | |
| Ïðî÷åå | |