De primære funktioner i Unix-kernen er som følger:
- Processtyring: Kernen opretter, planlægger og styrer udførelsen af processer. Den tildeler ressourcer til hver proces, såsom hukommelse, CPU-tid og adgang til perifere enheder. Derudover sikrer kernen, at processer kører sikkert og effektivt ved at styre synkronisering, kommunikation og interproceskommunikation (IPC) mellem processer.
- Hukommelsesstyring: Kernen er ansvarlig for at styre systemets fysiske og virtuelle hukommelse. Den allokerer og frigiver hukommelse til processer efter behov, og den bruger forskellige hukommelseshåndteringsteknikker, såsom paging og swapping, for at optimere hukommelsesforbruget og sikre effektiv hukommelsesadgang.
- Filsystemstyring: Kernen giver en grænseflade til processer for at få adgang til og manipulere filer. Det administrerer filsystemet, organiserer og gemmer data på lagerenheder og sikrer, at dataintegriteten bevares. Kernen understøtter også forskellige filsystemtyper og giver funktioner som filoprettelse, sletning, omdøbning og ændring.
- Netværksadministration: Kernen håndterer netværkskommunikation og dataoverførsel. Den implementerer TCP/IP-protokolstakken og leverer tjenester til netværksopgaver, herunder pakkerouting, IP-adressestyring og DNS-opløsning. Kernen administrerer også netværksenheder, såsom netværkskort og routere, hvilket gør det muligt for processer at udveksle data over netværket.
- Enhedsadministration: Kernen er ansvarlig for at administrere hardwareenheder, såsom diske, printere og ydre enheder. Det giver et abstraktionslag, der skjuler de hardwarespecifikke detaljer fra processer og applikationer, hvilket giver dem mulighed for at få adgang til enheder på en ensartet og konsistent måde. Kernen håndterer afbrydelser og enheds I/O-operationer, hvilket sikrer effektiv og pålidelig enhedskommunikation.
- Sikkerhedsstyring: Kernen indeholder sikkerhedsfunktioner for at beskytte systemet mod uautoriseret adgang og misbrug. Den implementerer mekanismer til brugergodkendelse, adgangskontrol og revision. Derudover håndhæver kernen obligatoriske adgangskontrolpolitikker og bruger forskellige sikkerhedsforanstaltninger, såsom sandboxing og privilegieadskillelse, for at forhindre potentielle sikkerhedssårbarheder.
- Systemkald: Kernen giver et sæt systemkald, som er grundlæggende operationer, som processer kan bruge til at interagere med kernen. Systemkald tillader processer at anmode om tjenester fra kernen, såsom oprettelse af nye processer, adgang til filer og afsendelse af netværkspakker. Kernen implementerer disse systemkald og håndterer de underliggende systemoperationer, hvilket sikrer, at processer interagerer med systemet på en kontrolleret og standardiseret måde.