ORDLISTE

Hvad er en kerne?

  Denne side blev automatisk oversat af DeepL. Switch to English

Kernen er kernen i et operativsystem, den del, der befinder sig mellem dine apps og din hardware. Den administrerer din computers ressourcer (CPU, hukommelse, lagerplads, enheder) og giver software en sikker og ensartet måde at bruge dem på. Tænk på den som en trafikbetjent og oversætter, der sørger for, at alt kører uden sammenstød.

Kernel_Layout.svg

Hvad gør kernen egentlig?

På et højt niveau, kernen:

  • Tidsplaner fungerer. Bestemmer, hvilket program der får CPU-tid, og hvornår.
  • Administrerer hukommelsen. Holder hver apps data adskilt og tildeler RAM efter behov.
  • Håndterer enheder og filer. Kommunikerer med drivere til din GPU, SSD, netværkskort og filsystemer.
  • Formidler I/O. Læser og skriver filer og netværksdata på vegne af apps.
  • Håndhæver sikkerheden. Adskiller brugertilstand (apps) fra kerneltilstand (OS-kernen), så en fejlbehæftet app ikke kan få hele systemet til at gå ned.
image-406

Er kernen det samme som operativsystemet?

Ikke helt. "Operativsystem" omfatter normalt kernen plus brugerrumsværktøjer og -tjenester (shells, biblioteker, desktopmiljøer, baggrundstjenester osv.). I daglig tale blander folk begreberne sammen, men strengt taget er kernen blot den privilegerede kerne, som alt andet er afhængigt af.

Hvordan "kommunikerer" apps med kernen?

Når en app skal gemme en fil eller sende en netværkspakke, foretager den et systemkald, som er en kontrolleret anmodning, der går fra brugertilstand til kerneltilstand. Kernen kontrollerer tilladelser, videresender anmodningen til det rigtige undersystem eller den rigtige driver og returnerer resultatet til appen. Denne grænse beskytter apps mod hinanden og mod hardwarens skarpe kanter.

infra-sync

Er der forskellige slags kerner?

Ja. Du vil se nogle få overordnede designs blive diskuteret:

  • Monolitiske kerner samler kernetjenester og mange drivere. (Eksempel: Linux-kernen.)
  • Mikrokerner holder kernen lille og flytter flere tjenester uden for kernen for at isolere dem.
  • Hybride eller modulære tilgange kombinerer ideer og praktiske systemer, der ofte trækker komponenter ind i eller ud af kerneområdet for at opnå bedre ydeevne eller sikkerhed.

Alle disse har det samme mål: pålidelig, hurtig styring af hardware. (Apples XNU kombinerer for eksempel en Mach-mikrokernel med et BSD-lag; Windows dokumenterer en lagdelt kernearkitektur.)

Opdaterer jeg nogensinde "kernen" direkte?

Det afhænger af din platform:

  • Windows/macOS: Kernelopdateringer leveres som en del af de normale OS-opdateringer.
  • Linux og mange servere/enheder: Kernen er en separat pakke, som du kan opdatere via din distribution eller leverandør. Kerner med langvarig support (LTS) bytter nye funktioner for stabilitet.

Opdateringer medfører hardwareunderstøttelse, ydeevneoptimeringer og sikkerhedsrettelser, men på produktionssystemer vil du typisk teste dem først.

Hvad sker der under opstart?

Meget kort version: firmware/UEFI kører først, bootloaderen indlæser kernen i hukommelsen, kernen initialiserer hardware og drivere, monterer lagerplads og starter derefter den første brugerproces, der starter resten af systemet. Derefter planlægger den løbende arbejde og håndterer I/O i baggrunden.

Har min telefon en kerne?

Absolut. Android-telefoner, spilkonsoller, routere og smart-tv'er kører for det meste en eller anden form for operativsystem med en kerne under hætten. Konceptet er ikke kun for stationære og bærbare computere.

android kernel

Hvorfor kaldes nedbrud for "kernel panics" (eller "blå skærm")?

Hvis der opstår en fejl i kernen (f.eks. en kritisk driverfejl), stopper operativsystemet ofte i stedet for at risikere at ødelægge data. Unix-lignende systemer rapporterer en kernel panic, mens Windows viser en stopfejl (den "blå skærm"). Det er dramatisk, men det er en sidste sikkerhedsforanstaltning, der beskytter dine filer.

Hurtig opsummering

  • Kernen er operativsystemets privilegerede kerne, der styrer CPU, hukommelse, enheder og I/O.
  • Apps interagerer med det via systemkald på tværs af grænsen mellem bruger- og kerneltilstand.
  • Forskellige kernekonstruktioner (monolitisk, mikrokernel, hybrider) afbalancerer ydeevne, isolation og vedligeholdelse.

Relaterede termer

  • Brugerplads / Kernelplads: Områder, hvor normale apps kører i forhold til kernen.
  • Systemkald (syscall): Det kontrollerede indgangspunkt fra apps til kerneltjenester.
  • Driver: Kernel- eller brugerkomponent, der ved, hvordan en bestemt enhed fungerer.
  • Planlægger: Kernelkomponent, der bestemmer, hvilken tråd der skal køre næste gang.
  • Virtuel hukommelse: Kernelfunktion, der giver hver proces sit eget adresserum.
  • Bootloader: Program, der indlæser kernen i hukommelsen ved opstart.
  • Kernel panic / stop error: En fatal fejl i kernemodus, der standser systemet for at forhindre skader.

RELATERET INDHOLD