De primære funksjonene til Unix-kjernen er som følger:
- Prosessadministrasjon: Kjernen oppretter, planlegger og administrerer utførelsen av prosesser. Den tildeler ressurser til hver prosess, for eksempel minne, CPU-tid og tilgang til eksterne enheter. I tillegg sørger kjernen for at prosesser kjører trygt og effektivt ved å administrere synkronisering, kommunikasjon og interprosesskommunikasjon (IPC) mellom prosesser.
- Minnebehandling: Kjernen er ansvarlig for å administrere systemets fysiske og virtuelle minne. Den allokerer og frigjør minne til prosesser etter behov, og den bruker forskjellige minnebehandlingsteknikker, for eksempel personsøking og bytte, for å optimalisere minnebruken og sikre effektiv minnetilgang.
- Filsystemadministrasjon: Kjernen gir et grensesnitt for prosesser for å få tilgang til og manipulere filer. Den administrerer filsystemet, organiserer og lagrer data på lagringsenheter, og sørger for at dataintegriteten bevares. Kjernen støtter også ulike filsystemtyper og gir funksjoner som filoppretting, sletting, endre navn og modifikasjon.
- Nettverksadministrasjon: Kjernen håndterer nettverkskommunikasjon og dataoverføring. Den implementerer TCP/IP-protokollstakken og tilbyr tjenester for nettverksoppgaver, inkludert pakkerouting, IP-adresseadministrasjon og DNS-oppløsning. Kjernen administrerer også nettverksenheter, som nettverkskort og rutere, slik at prosesser kan utveksle data over nettverket.
- Enhetsadministrasjon: Kjernen er ansvarlig for å administrere maskinvareenheter, som disker, skrivere og eksterne enheter. Det gir et abstraksjonslag som skjuler maskinvarespesifikke detaljer fra prosesser og applikasjoner, slik at de får tilgang til enheter på en enhetlig og konsistent måte. Kjernen håndterer avbrudd og enhets I/O-operasjoner, og sikrer effektiv og pålitelig enhetskommunikasjon.
- Sikkerhetsadministrasjon: Kjernen gir sikkerhetsfunksjoner for å beskytte systemet mot uautorisert tilgang og misbruk. Den implementerer mekanismer for brukerautentisering, tilgangskontroll og revisjon. I tillegg håndhever kjernen obligatoriske tilgangskontrollpolicyer og bruker ulike sikkerhetstiltak, som sandboxing og privilegeseparasjon, for å forhindre potensielle sikkerhetssårbarheter.
- Systemanrop: Kjernen gir et sett med systemanrop, som er grunnleggende operasjoner som prosesser kan bruke for å samhandle med kjernen. Systemanrop lar prosesser be om tjenester fra kjernen, for eksempel å lage nye prosesser, få tilgang til filer og sende nettverkspakker. Kjernen implementerer disse systemanropene og håndterer de underliggende systemoperasjonene, og sikrer at prosesser samhandler med systemet på en kontrollert og standardisert måte.