Przejdź do zawartości

Jądro systemu operacyjnego

Z Wikipedii, wolnej encyklopedii
To jest stara wersja tej strony, edytowana przez 95.51.244.170 (dyskusja) o 09:43, 30 paź 2012. Może się ona znacząco różnić od aktualnej wersji.

Szablon:Źródła

Jądro systemu operacyjnego (ang. kernel) – podstawowa część systemu operacyjnego, która jest odpowiedzialna za wszystkie jego zadania.

Budowa jądra

Wyróżnia się kilka tak dziekuje podstawowych metod konstrukcji jąder[potrzebny przypis]:

Model funkcjonowania jądra monolitycznego.
Model komunikacji mikrojądra z aplikacjami.
  • mikrojądro – w tej technice z monolitycznego jądra zostaje tylko jego podstawowa część, a części odpowiedzialne za bardziej wyrafinowane funkcje są wydzielone do funkcjonalnych bloków albo realizowane jako zwykłe procesy w trybie użytkownika.
  • nanokernel – technika zbliżona do techniki mikrojądra, różnica w wielkości – nanokernel jest jeszcze mniejszy.
  • exokernel – architektura będąca odmianą nanojądra. Cechą wyróżniającą jest możliwość zarządzania zasobami systemu przez nieuprzywilejowanego użytkownika, a rola jądra sprowadza się do zabezpieczania zasobów. Przykładem systemu korzystającego z tego typu jądra jest system XOK, zbudowany w MIT Laboratory for Computer Science, pracujący na komputerach PC. Wyposażony on został w bibliotekę ExOS, która implementuje system UNIX i umożliwia uruchamianie większości aplikacji tego systemu.
  • cachekernel – w tej technice jądro systemu buforuje obiekty systemowe takie jak wątki czy przestrzenie adresowe tak jak sprzęt komputerowy buforuje pamięć. Jądra aplikacji trybu użytkownika są odpowiedzialne za ładowanie tych danych i ponowne ich zapisanie stosując specyficzne dla danej aplikacji mechanizmy.
Model komunikacji jądra hybrydowego z aplikacjami.
  • jądro hybrydowe – kompromis między architekturą jądra monolitycznego i mikrojądra. W krytycznych usługach - np. stos sieci - usługi są na stałe wkompilowane w główny kod jądra, inne usługi pozostają oddzielone od głównego jądra i działają jako serwery (w przestrzeni jądra). Dzięki temu rozwiązaniu możliwe jest zachowanie wydajności jądra monolitycznego dla kluczowych usług. Klasyfikacja ta budzi kontrowersje niektórych programistów[potrzebny przypis].

Cechy jądra

Z budowy jądra wynikają jego cechy, takie jak:

Zastosowanie systemów operacyjnych

Zastosowanie systemów operacyjnych wynika ściśle z ich budowy, a to przeważnie sprowadza się do budowy ich jądra. Tak więc:

[potrzebny przypis].

Przykłady jąder systemów operacyjnych

Jądra monolityczne:

Hybrydowe:

Mikrojądra: