Jądro monolityczne: Różnice pomiędzy wersjami
[wersja nieprzejrzana] | [wersja przejrzana] |
Usunięta treść Dodana treść
poprawiłem Znaczniki: blanking (filtr nadużyć) VisualEditor |
m Wycofano edycje użytkownika 77.253.209.126 (dyskusja). Autor przywróconej wersji to MalarzBOT. |
||
Linia 1:
{{Dopracować|źródła=2012-08}}
[[Grafika:Kernel-pl.svg|thumb|right|300px|Model funkcjonowania jądra monolitycznego.]]
'''Jądro monolityczne''' – rodzaj [[Jądro systemu operacyjnego|jądra systemu operacyjnego]], w którym większa część funkcji jądra zaimplementowana jest w pojedynczym obrazie pamięci, który ładowany jest na stałe do pamięci komputera przez [[Program rozruchowy|bootloader]]. Zdarza się jednak, że do jądra monolitycznego (zwanego wtedy modularnym) dopisywana jest możliwość ładowania modułów, które jednak nie realizują najbardziej podstawowych funkcji jądra.
Jądro monolityczne cechuje się wyższą wydajnością niż [[mikrojądro]], zwłaszcza w systemach [[procesor|jednoprocesorowych]] oraz przy obciążaniu systemu tylko jednym procesem{{fakt|data=2011-09}}.
Z drugiej strony awaria (np. błąd programisty) w dowolnym miejscu jądra monolitycznego może spowodować awarię całego systemu (np. błędne żądanie dostępu do pamięci w sterowniku każdego, nawet nieistotnego urządzenia, może zniszczyć dane na dysku, albo "zawiesić" cały system), przez co testowanie tych jąder (szczególnie sterowników urządzeń) jest czasochłonne i skomplikowane, a ewentualne luki mogą często być wykorzystane przez [[Cracker (haker komputerowy)|crackerów]] do łamania zabezpieczeń.
Tworzenie [[System operacyjny czasu rzeczywistego|systemów czasu rzeczywistego]] przy pomocy jądra monolitycznego choć możliwe, jest zwykle trudniejsze niż w mikrojądrach, z powodu konieczności zagwarantowania ograniczeń czasowych przez wszystkie komponenty (zwykle przy wykorzystaniu [[Wywłaszczenie (informatyka)|wywłaszczania]] mało ważnych komponentów, oraz unikanie blokad w postaci [[semafor (informatyka)|semaforów]]).
Przykładami [[system operacyjny|systemów operacyjnych]] z jądrem monolitycznym są m.in.:
* [[FreeBSD]]
* [[Linux]]
Postęp w [[L4 (informatyka)|architekturze mikrojąder]], wzrost wydajności komputerów, problemy bezpieczeństwa w jądrach monolitycznych oraz wzrost komplikacji i rozmiaru ich kodu (szczególnie w systemach współbieżnych i czasu rzeczywistego), spowodowały że mikrojądra są coraz częściej wybierane przy tworzeniu systemów operacyjnych (np. [[Singularity]] - mikrojądro w języku [[C#]]).
== Zobacz też ==
*[[jądro systemu operacyjnego|jądro]]
*[[mikrojądro]]
[[Kategoria:Jądro systemu operacyjnego]]
|