Spisu treści:
Definicja - Co oznacza monolityczne jądro?
Jądro monolityczne to struktura oprogramowania systemu operacyjnego, która ma wszystkie uprawnienia dostępu do urządzeń wejścia / wyjścia (I / O), pamięci, przerwań sprzętowych i stosu procesora. Jądra monolityczne są zwykle większe niż inne jądra, ponieważ zajmują się tak wieloma aspektami przetwarzania komputerowego na najniższym poziomie, a zatem muszą zawierać kod, który współpracuje z wieloma urządzeniami, kanałami we / wy i kanałami przerwań oraz innymi operatorami sprzętowymi.
Ta forma jądra stanowi podstawę systemów Linux, Unix, MS-DOS i Mac OS. Nowsze systemy operacyjne zwykle używają jądra hybrydowego, aby umożliwić łatwiejszą konserwację i ulepszenia systemu operacyjnego.
Techopedia wyjaśnia monolityczne jądro
Jądra monolityczne zachowują pełny dostęp do różnych kontrolowanych przez siebie komponentów. Obejmują one:
- Systemy plików
- Komunikacja międzyprocesowa
- I / O i zarządzanie urządzeniami
- Podstawowe zarządzanie procesami
- Sprzęt komputerowy
Powodem, dla którego preferowane są nowsze architektury jądra, takie jak mikrojądro lub hybrydowy projekt jądra, jest to, że im większe staje się jądro, tym więcej funkcji musi przyjąć. Dzięki temu kod jest nieporęczny i wolniej się ładuje. Kolejną wadą monolitycznego projektu jądra jest to, że kod jądra musi zostać zmodyfikowany, aby dodać funkcje lub naprawić błędy. Zwykle wymaga to ponownej kompilacji kodu jądra i sterowników sprzętowych; może to nawet oznaczać całkowite uaktualnienie systemu operacyjnego, co jest kosztowne i zmniejsza zaufanie użytkowników.
Nowsze architektury jądra zachowują dostęp tylko do ograniczonych uprawnień i przekazują uprawnienia do przestrzeni użytkownika za pośrednictwem serwerów, które zapewniają zarządzanie zasobami niezależnie z własnymi uprawnieniami. Serwery te działają poza przestrzenią pamięci jądra, umożliwiając znacznie mniejsze rozmiary jądra i znacznie bardziej wydajną trasę aktualizacji.
Monolityczna architektura jądra jest nadal używana w systemach takich jak Linux, gdzie ewoluujące jądro, które jest ciągle aktualizowane i wymieniane, jest częścią kultury systemu operacyjnego. Uproszczona natura Linuksa obniżyła monolityczne jądro do akceptowalnego rozmiaru, co ułatwia dodawanie funkcji.
