Hvad er systemafbrydelser?

Mainframe computer

Prioriterede interrupts giver computere mulighed for at køre mange programmer samtidigt.

Billedkredit: Jupiterimages/Photos.com/Getty Images

Selvom nogle computere, såsom den, der kører din brødristerovn, udfører én opgave ad gangen, har stationære pc'er, smartphones og mainframes flere processer, der arbejder samtidigt. Computeren klarer dette gennem systemafbrydelser, en mekanisme, hvorved ét program midlertidigt får prioritet over andre. Den centrale behandlingsenhed tillader forskellige slags afbrydelser baseret på et forudbestemt opgavehierarki.

Flere programmer

En moderne pc, smartphone eller server har flere programmer i hukommelsen, selvom CPU'en kun kører en håndfuld på et givet tidspunkt; de fleste er ledige. Programmer omfatter programmer som dit tekstbehandlingsprogram, regneark og e-mail, hjælpefunktioner som f.eks hukommelsesmonitorer og printspoolere, og de programmer, der administrerer din computers netværkskort, tastatur og højttalere. Når et vigtigt program har brug for service, udsender det en afbrydelse til CPU'en, som stopper andet igangværende arbejde for at tage sig af den presserende opgave. CPU'en servicerer kun afbrydelsen, hvis den har prioritet over andre opgaver.

Dagens video

Hardwareafbrydelser

Harddiske, netværkskort, printere og andre enheder udsender hardwareafbrydelser for at få CPU'ens opmærksomhed. For eksempel anmoder et program om data fra harddisken; selvom denne opgave tager omkring 10 millisekunder, er det lang tid til CPU'en, som udfører andet arbejde i mellemtiden. Når harddisken finder dataene, udsender den en hardwareafbrydelse, der beder CPU'en om at stoppe, hvad den laver midlertidigt og levere dataene til det anmodende program.

Software afbrydes

Programmer udsteder softwareafbrydelser til at håndtere specielle anmodninger via computerens operativsystem. I dit tekstbehandlingsprogram vil du f.eks. indsætte datoen i en sideoverskrift. Tekstbehandleren udsender en softwareafbrydelse og anmoder om datoen fra Microsoft Windows. Tekstbehandleren venter kort, mens Windows henter datoen fra systemkalenderen. Når datoen er klar, returnerer Windows kontrollen til tekstbehandleren. Softwareafbrydelser har en relativt lav prioritet. hvis CPU'en, mens den henter datoen, modtager en anmodning fra harddisken, afbryder CPU'en harddisken først og afslutter hentning af datoen.

CPU-fælder

Operativsystemet reserverer flere afbrydelser med meget høj prioritet til nødsituationer. For eksempel bliver et programs data korrupte, hvilket får det til at gå ned. Operativsystemet udsender en CPU-fælde, som stopper programmet og viser en advarselsmeddelelse på skærmen, der fortæller dig, hvad der skete. I mere ekstreme tilfælde udvikler selve operativsystemet et alvorligt problem. Det udsteder en anden CPU-fælde, som viser en diagnostisk meddelelse og stopper al behandling.