Kernel to angielskie słowo używane w informatyce do oznaczenia rdzeń systemu operacyjnego, który jest główną częścią komputera.
Prosta zmiana wersji Kernela na starszą lub nowszą może wystarczyć do rozwiązania problemów problems sprzęt komputerowy a także kompatybilność z komputerem.
Dzięki pełnej kontroli nad wszystkim, co jest związane z systemem, Kernel jest jednym z pierwszych programów ładowanych podczas startu systemu. Jak tylko zacznie działać, Kernel uruchamia proces, który wykrywa cały sprzęt komputerowy niezbędne do prawidłowego działania komputera.
Ponadto Kernel obsługuje żądania wejścia i wyjścia z oprogramowaniei zarządza np. używaną pamięcią i urządzeniami peryferyjnymi.
Rola jądra
Jądro, rdzeń systemu, odpowiada za: podłącz oprogramowanie do sprzęt komputerowy. W ten sposób nawiązuje efektywną komunikację między zasobami systemu operacyjnego i zarządza jego funkcjami.
Zobacz poniżej główne funkcje systemu operacyjnego zarządzanego przez jądro.
zarządzanie procesem
W systemie operacyjnym proces jest uruchomionym programem. Zarządzanie procesami wykonywane przez Kernel decyduje o tym, które procesy zostaną wykonane.
Każdy z uruchomionych procesów może kilkakrotnie w ciągu jednej sekundy wejść i wyjść z procesora, ustępując miejsca innemu procesowi. Kernel jest odpowiedzialny za decydowanie, które procesy zostaną przydzielone do procesora.
Ponieważ przełączanie między procesami odbywa się bardzo szybko, program może nadal działać, nawet jeśli nie znajduje się na procesorze.
Tryby dostępu
Realizacja procesu może odbywać się na dwa różne sposoby.
- tryb użytkownika: składa się z kilku podsystemów. Jeden z nich, w tym podsystem środowiskowy, uruchamia aplikacje przeznaczone dla różnych typów systemów operacyjnych. Tryb użytkownika jest uważany za tryb nieuprzywilejowany. Wszystkie oprogramowania w ten sposób muszą wysyłać żądania do jądra w celu wykonania uprzywilejowanych instrukcji, takich jak tworzenie procesów.
- Tryb jądra: jest uważany za uprzywilejowany, ponieważ ma dostęp do całego komputera. Gdy procesor jest w trybie jądra, oznacza to, że działa oprogramowanie godny zaufania i zdolny do wykonania wszelkich poleceń.
Zobacz także znaczenie procesor.
zarządzanie pamięcią
W menedżerze zadań część pamięci RAM (całkowita pamięć) jest przydzielana do Kernela.
Podczas zarządzania procesami Kernel wysyła programy do przestrzeni adresowej. Część całkowitej pamięci przydzielona do jądra zapewnia, że zawsze dostępna jest pamięć aby główne procesy były wysyłane do tej przestrzeni.
Kernel posiada również funkcję definiowania części pamięci, do której każdy proces może uzyskać dostęp podczas swojej pracy.
Zarządzanie urządzeniami
jądro steruje urządzeniami peryferyjnymi podłączonymi do komputera.
Za każdym razem, gdy użytkownik podłącza urządzenie (np. pendrive, drukarkę, słuchawki, klawiaturę, mysz itp.), Kernel zarządza pamięcią tego urządzenia i jego komunikacją z programami i sprzęt komputerowy z komputera.
Każde urządzenie ma dysk zaprojektowany do pracy w określonym systemie operacyjnym. Dlatego też kierowca przeznaczony dla systemu Windows nie działa na przykład na komputerze MAC.
O kierowca Zadaniem każdego urządzenia jest dokonywanie pewnego rodzaju translacji poleceń wykonywanych między określonym urządzeniem elektronicznym a systemem operacyjnym komputera.
Dostęp do usług systemu operacyjnego odbywa się za pośrednictwem interfejsu użytkownika oznaczonego jako muszla, co w języku angielskim oznacza „powłokę”. Nazwa wynika z faktu, że muszla być najbardziej zewnętrzną warstwą wokół rdzenia.
Zobacz znaczenie berło.
wywołania systemowe
Wywołania systemowe to specyficzne funkcje dostępne dla programów komputerowych używanych w trybie użytkownika. Służą do wywoływania rdzenia systemu operacyjnego komputera, aby: wykonać określoną czynność.
Funkcje te są często złożone i wykorzystują funkcje, do których przeciętny użytkownik nie ma dostępu.
Poniżej znajduje się kilka przykładów wywołań systemowych Windows i odpowiadającego im jądra Linuksa.
Okna | Linux | Opis |
---|---|---|
bliski uchwyt |
blisko |
zamknąć plik |
Utwórz plik | otwarty | utwórz plik |
Usunąć plik | odczepić | usunąć plik |
WyjdźProces | Wyjście | Zakończ proces i wszystkie jego segmenty |
GetLocalTime | zespół | Pobierz aktualną lokalizację, datę i godzinę |
dowiedz się więcej o Okna.
Rodzaje jądra
Jeśli chodzi o architekturę, rdzeń systemu operacyjnego może być: monolityczny, hybrydowy lub być mikrojądra.
Monolityczny
Sterowniki urządzeń i rozszerzenia rdzenia działają w przestrzeni podstawowej, z pełnym dostępem do sprzęt komputerowy.
Ponieważ wszystkie moduły działają w tej samej przestrzeni adresowej, wystąpienie błędu w jednej z tych przestrzeni może mieć wpływ na cały system.
Przykłady monolitycznych: Linux, BSD, MS-DOS i Solaris.
Linux jest jednym z najbardziej znanych jąder monolitycznych. Lubić oprogramowanie darmowy i przenośny, Linux ma tę zaletę, że działa na dziesiątkach platform, od komputerów IBM po urządzenia mobilne, smartfony lub iPody.
dowiedz się więcej o oprogramowanie isprzęt komputerowy.
Mikrojądro lub mikrojądro
Mikrojądro, jak sama nazwa wskazuje, jest bardzo małym jądrem iz tego powodu uruchamia jak najmniej procesów w przestrzeni jądra. Niektóre z tych procesów działają w przestrzeni użytkownika.
W przypadku mikrojądra typu Kernel, jeśli wystąpi błąd, po prostu uruchom ponownie usługę, która przedstawiła problem. Zapobiega to obniżeniu całego systemu (jak to ma miejsce w przypadku jądra monolitycznego).
Przykłady mikrojąder: AIX, BeOS, L4, Mach, Minix, MorphOS, QNX, RADIO, VSTa i GNU Hurd.
Hybrydowy
Systemy hybrydowe są uważane za systemy, które działają na zasadzie pośredniej w porównaniu z systemami monolitycznymi i mikrojądrowymi. Hybryda łączy stabilność i bezpieczeństwo mikrojądra z monolityczną wydajnością.
Jądro hybrydowe jest podobne do mikrojądra, ale ma kod („nieistotny”) w przestrzeni jądra, dzięki czemu wykonywane operacje są szybsze.
Przykłady hybryd: AmigaOS, Android, Chrome, Macintosh, webOS, Windows, OSX i Xinu.
jądro Android jest zbudowany z Linuksa. Jednak nie wszyscy oceniają Android lubią Linuksa, ponieważ uważają, że jest on oparty tylko na Linuksie, ale nie na samym Linuksie.
dowiedz się więcej o Android.