Articles

Czym jest jądro systemu Linux?

Jądro Linux® jest głównym składnikiem systemu operacyjnego Linux (OS) i stanowi podstawowy interfejs między sprzętem komputera a jego procesami. Komunikuje się między nimi, zarządzając zasobami tak efektywnie, jak to tylko możliwe.

Jądro jest tak nazwane, ponieważ – jak ziarno w twardej skorupie – istnieje wewnątrz systemu operacyjnego i kontroluje wszystkie główne funkcje sprzętu, niezależnie od tego, czy jest to telefon, laptop, serwer, czy jakikolwiek inny rodzaj komputera.

Co robi jądro

Jądro ma 4 zadania:

  1. Zarządzanie pamięcią: Śledzenie, ile pamięci jest używane do przechowywania czego i gdzie
  2. Zarządzanie procesami: Określa, które procesy mogą korzystać z centralnej jednostki obliczeniowej (CPU), kiedy i jak długo
  3. Sterowniki urządzeń: Działają jako mediator/interpreter między sprzętem a procesami
  4. Wywołania systemowe i bezpieczeństwo: Odbierają żądania usług od procesów

Jądro, jeśli jest poprawnie zaimplementowane, jest niewidoczne dla użytkownika, pracując w swoim własnym małym świecie znanym jako przestrzeń jądra, gdzie przydziela pamięć i śledzi, gdzie wszystko jest przechowywane. To, co widzi użytkownik – przeglądarki internetowe i pliki – znane jest jako przestrzeń użytkownika. Aplikacje te wchodzą w interakcję z jądrem za pośrednictwem interfejsu wywołania systemowego (SCI).

Pomyśl o tym w ten sposób. Jądro jest zajętym osobistym asystentem dla potężnej władzy wykonawczej (sprzętu). Zadaniem asystenta jest przekazywanie wiadomości i żądań (procesów) od pracowników i społeczeństwa (użytkowników) do władzy wykonawczej, pamiętanie, co jest przechowywane gdzie (pamięć), oraz określanie, kto ma dostęp do władzy wykonawczej w danym czasie i na jak długo.

Gdzie jądro pasuje do systemu operacyjnego

Aby umieścić jądro w kontekście, można pomyśleć o maszynie Linux jako posiadającej 3 warstwy:

  1. Sprzęt: Fizyczna maszyna – spód lub podstawa systemu, składająca się z pamięci (RAM) i procesora lub centralnej jednostki obliczeniowej (CPU), a także urządzeń wejścia/wyjścia (I/O), takich jak pamięć masowa, sieć i grafika. Procesor wykonuje obliczenia, odczytuje dane z pamięci i zapisuje je do niej.
  2. Jądro systemu Linux: Rdzeń systemu operacyjnego. (Widzisz? Jest w samym środku.) Jest to oprogramowanie rezydujące w pamięci, które mówi procesorowi, co ma robić.
  3. Procesy użytkownika: Są to działające programy, którymi zarządza jądro. Procesy użytkownika są tym, co wspólnie tworzą przestrzeń użytkownika. Procesy użytkownika są również znane jako po prostu procesy. Jądro pozwala również tym procesom i serwerom komunikować się ze sobą (znane jako komunikacja międzyprocesowa, lub IPC).

Kod wykonywany przez system działa na procesorach w 1 z 2 trybów: tryb jądra lub tryb użytkownika. Kod działający w trybie jądra ma nieograniczony dostęp do sprzętu, podczas gdy tryb użytkownika ogranicza dostęp do procesora i pamięci do SCI. Podobna separacja istnieje dla pamięci (przestrzeń jądra i przestrzeń użytkownika). Te 2 małe szczegóły tworzą podstawę dla niektórych skomplikowanych operacji, takich jak separacja przywilejów dla bezpieczeństwa, budowanie kontenerów i maszyn wirtualnych.

To również oznacza, że jeśli proces zawiedzie w trybie użytkownika, szkody są ograniczone i mogą być odzyskane przez jądro. Jednakże, z powodu dostępu do pamięci i procesora, awaria procesu jądra może spowodować awarię całego systemu. Ponieważ istnieją zabezpieczenia i uprawnienia wymagane do przekraczania granic, awarie procesów użytkownika zazwyczaj nie powodują zbyt wielu problemów.

Dlaczego warto wybrać Red Hat?

W Red Hat, Linux jest podstawą wszystkiego co robimy. Red Hat jest drugim co do wielkości korporacyjnym współtwórcą jądra Linux, wnosząc ze sobą doświadczenie i wiedzę z 25 lat oraz dużą społeczność partnerów, klientów i ekspertów z całej branży. To długa relacja, z historią i poziomem doświadczenia, który jest trudny do zdobycia.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *