Aplikacje
Sprzęt
Jądro monolityczne i mikrojądro
Systemy operacyjne można podzielić na dwie grupy:
systemy z jądrem monolitycznym i systemy z mikrojądrem.Te pierwsze mają
jądro złożone z jednego, wielkiego programu, który zawiera wszystkie
ważniejsze elementy systemu. Tradycyjne jądro monolityczne jest zawsze
ś
ciśle dopasowane do maszyny, na której działa. Każda zmiana konfiguracji
maszyny powoduje konieczność ponownego rekompilowania jądra. Autorzy
Linuksa rozwiązali ten problem, implementując system ładowalnych
modułów. Jądra monolityczne są bardzo wydajne – nie tracą czasu na
komunikację pomiędzy poszczególnymi częściami dolnej warstwy systemu.
Ich wadą jest mniejsza elastyczność oraz większa podatność na błędy – błąd w
dowolnej części jądra może spowodować zawieszenie całego
systemu.Oczywiście, jeśli autorzy systemu są w stanie zapewnić odpowiednio
dobrą jakość kodu, problem niestabilności znika.
Jądro monolitowe
Mikrojądra zbudowane są odmiennie – samo mikrojądro zajmuje się jedynie
zarządzeniem procesami i bezpośrednią komunikacją ze sprzętem.Sterowniki ,
obsługa systemów plików i inne usługi znajdują się w modułach , które z
punktu widzenia mikrojądra są niezależnymi procesami.Mikrojądro łatwiej
jest napisać.Jego podstawowa wada to bardzo duże straty wydajności ,
powodowane przez komunikację pomiędzy modułami i częste przełączanie
procesów.Paradoksalnie , na coraz bardziej nowoczesnym sprzęcie , te
problemy są coraz bardziej dotkliwe.
P
ro
ce
so
ry
-
s
e
rw
e
ry
P
ro
ce
so
ry
–
s
er
w
er
y
P
ro
ce
so
ry
-
s
e
rw
e
ry
P
ro
ce
so
ry
-
s
e
rw
e
ry
Aplikacje
Mikrojądro
Sprzęt