Kazalo:
Opredelitev - Kaj pomeni monolitno jedro?
Monolitno jedro je okvir programske opreme operacijskega sistema, ki ima vse privilegije za dostop do vhodno / izhodnih (V / I) naprav, pomnilnika, strojne prekinitve in nabora CPU-ja. Monolitna jedra so ponavadi večja od drugih jeder, ker se ukvarjajo s toliko vidiki računalniške obdelave na najnižji ravni, zato morajo vključevati kodo, ki deluje s številnimi napravami, I / O in prekinitvenimi kanali ter drugimi strojnimi operaterji.
Ta oblika jedra je osnova za Linux, Unix, MS-DOS in Mac OS. Novejši operacijski sistemi običajno uporabljajo hibridno jedro za lažje vzdrževanje in izboljšanje operacijskega sistema.
Tehopedija razlaga monolitno jedro
Monolitna jedra imajo popoln privilegiran dostop do različnih komponent pod njihovim nadzorom. Tej vključujejo:
- Datotečni sistemi
- Medprocesna komunikacija
- Upravljanje V / I in naprav
- Temeljno upravljanje procesov
- Strojna oprema
Razlog, da so novejše arhitekture jedra, kot sta mikrokernel ali hibridno oblikovanje jedra, zato, ker večje kot je jedro, več funkcij mora prevzeti. Zaradi tega je koda okorna in počasnejša. Druga pomanjkljivost monolitne zasnove jedra je, da je treba kodo jedra spremeniti, da bi dodali funkcije ali odpravili napake. To ponavadi zahteva ponovno prevajanje kode jedra in gonilnikov strojne opreme; lahko celo pomeni popolno nadgradnjo operacijskega sistema, kar je drago in zmanjša zaupanje uporabnikov.
Novejše arhitekture jedra ohranijo dostop le do omejenih privilegijev in prenesejo privilegij do uporabniškega prostora prek strežnikov, ki upravljajo z viri neodvisno z lastnimi privilegiji. Ti strežniki delujejo zunaj prostora za pomnilnik jedra, kar omogoča veliko manjše velikosti jedra in veliko učinkovitejšo pot nadgradnje.
Monolitna arhitektura jedra se še vedno uporablja za sisteme, kot so sistemi, ki temeljijo na Linuxu, kjer razvijajoče se jedro, ki se nenehno posodablja in nadomešča, je del kulture operacijskega sistema. Racionalizirana narava Linuxa je monolitno jedro zmanjšala na sprejemljivo velikost, kar olajša dodajanje funkcij.