lag af UNIX -operativsystemet
UNIX -operativsystemet er struktureret i en lagdelt arkitektur, hvor hvert lag leverer tjenester til lagene over det. Her er en oversigt over de vigtigste lag:
1. Hardware: Grundlaget for systemet, der består af fysiske komponenter som CPU, hukommelse, lagerenheder og netværksgrænseflader.
2. Kernel: Kernen i operativsystemet, der er ansvarlig for styring af hardware og levering af vigtige tjenester som hukommelsesstyring, procesplanlægning, filsystemstyring og enhedsdrivere.
3. Systemopkald: En grænseflade mellem brugerprogrammerne og kernen. Dette er funktioner på lavt niveau, der giver programmer mulighed for at anmode om kerne-tjenester.
4. Systembiblioteker: Samlinger af funktioner, der giver abstraktioner på højere niveau over systemopkald. Disse biblioteker gør det lettere for programmerere at udvikle applikationer.
5. Shell: En kommandolinjetolk, der giver brugerne mulighed for at interagere med systemet. Det modtager kommandoer fra brugeren, fortolker dem og udfører dem ved at ringe til de relevante systemprogrammer eller biblioteker.
6. Brugerprogrammer: Ansøgninger og værktøjer, der kører oven på operativsystemet. De interagerer med kernen gennem systemopkald eller biblioteker.
interaktion mellem skal og kerne
Lad os forstå interaktionen ved hjælp af kommandoen `ls` som et eksempel:
1. Brugerinput: Brugertyperne `ls` i skallen.
2. Shell -fortolkning: Shell genkender `ls` som en indbygget kommando eller et brugerdefineret program.
3. Programudførelse: Hvis `ls` er en indbygget kommando, udfører shell den direkte. Hvis det er et brugerdefineret program, opretter skallen en ny proces til at køre det.
4. Systemopkald: Programmet (enten Shell eller 'LS' -programmet) har brug for at få adgang til filer på disken. Den bruger et systemopkald som `åben ()`, `læst ()` eller `stat ()` for at anmode om denne service fra kernen.
5. kernehandling: Kernen håndterer systemopkaldsanmodningen ved at udføre de nødvendige operationer på filsystemet (f.eks. Læsning af filmetadata eller hentning af filindhold).
6. Resultat returneret: Kernen returnerer de ønskede oplysninger til programmet.
7. Datadisplay: Programmet (i dette tilfælde 'ls`) formater og viser output til brugeren.
Derfor fungerer skallen som en formidler mellem brugeren og kernen, hvilket giver en brugervenlig grænseflade til at udføre programmer og adgangssystemressourcer.
resume
UNIX's lagdelte arkitektur giver mulighed for fleksibilitet, vedligeholdelighed og effektivitet. Shell fungerer som kommandotolk, der interagerer med kernen gennem systemopkald for at udføre programmer og styre ressourcer. Denne interaktion giver brugerne mulighed for at administrere deres systemer og køre applikationer glat.