Betalingsmetoder Abuse

Opgaver, som Linux-kernen udfører

08.11.2022, 22:03

I sidste artikel forklarede vi, hvad Linux-kernen er, og nu vil vi gå i detaljer med, hvilke funktionelle opgaver den udfører. Den monolitiske Linux OS-kerne udfører den mest omfattende række af opgaver. Behandlingen af indgående systemkald finder sted på det øverste niveau. Disse kald er grænsefladen mellem kernen og brugerprogrammerne. Hardwaresignaler og afbrydelser håndteres på et lavere niveau.

Linux-kernens vigtigste funktionelle opgaver

Men kernens opgaver er ikke kun at håndtere afbrydelser. Den indeholder også programmer til styring af enheder. Der er brug for drivere til at behandle signaler, der kommer fra enheder. En større del af kernen er afsat til dem. Nogle af dem er i form af binære filer. Versionen af kernen uden lukkede drivere er Linux-libre, men i praksis er den ikke så nem at bruge, fordi det ikke altid er muligt at bygge en pc baseret på komponenter med kun åbne drivere.

Andre funktionelle opgaver i kernen er at arbejde med abstraktioner. Virtuelle tråde genereres af en virtuel tråd, en memory manager tildeler og isolerer en del af RAM'en specifikt til processen, et virtuelt filsystem danner en enkelt plads til lagring af filer, sockets oprettes af et netværksmodul. Sådan skabes forudsætningerne for at sikre et højt sikkerhedsniveau. Systemet for interprocesinteraktion sørger for, at der ikke opstår konflikter, når man tilgår de samme computerressourcer, og sørger også for dataudveksling mellem processer.

Fra brugersoftwarens side ligner det fysisk hardware med den forskel, at processoren og RAM ikke kommunikerer direkte, men gennem systemkald. Kataloget /dev indeholder symbolske referencer og blokreferencer til periferiudstyr. Et særligt træk ved blokreferencer er, at de kun fungerer med blokke af en bestemt størrelse.

På trods af kernens kontrol over alle processer gør den ikke noget selv, den har brug for brugersoftware og de processer, der udføres af denne software. Blandt den grundlæggende software er GNU-værktøjerne: Det er svært at forestille sig en Linux-distribution uden dem. Et eksempel er Bash-shell, som gør det muligt at indtaste kommandoer i konsollen.