Prioriterade avbrott gör att datorer kan köra många program samtidigt.
Bildkredit: Jupiterimages/Photos.com/Getty Images
Även om vissa datorer, till exempel den som kör din brödrost, utför en uppgift i taget, har stationära datorer, smartphones och stordatorer flera processer som arbetar samtidigt. Datorn hanterar detta genom systemavbrott, en mekanism genom vilken ett program tillfälligt får prioritet framför andra. Den centrala bearbetningsenheten tillåter olika typer av avbrott baserat på en förutbestämd uppgiftshierarki.
Flera program
En modern PC, smartphone eller server har flera program i minnet, även om CPU: n bara kör en handfull vid varje givet ögonblick; de flesta är lediga. Program inkluderar applikationer som din ordbehandlare, kalkylblad och e-post, hjälpfunktioner som t.ex minnesmonitorer och utskriftsspooler, och programmen som hanterar din dators nätverkskort, tangentbord och högtalare. När ett viktigt program behöver service gör det ett avbrott till CPU: n, vilket stoppar annat pågående arbete för att ta hand om den pressande uppgiften. CPU: n servar avbrottet endast om det har prioritet framför andra uppgifter.
Dagens video
Hårdvaruavbrott
Hårddiskar, nätverkskort, skrivare och andra enheter ger hårdvaruavbrott för att få processorns uppmärksamhet. Till exempel begär ett program data från hårddisken; även om den här uppgiften tar cirka 10 millisekunder, är det lång tid till CPU: n, som utför annat arbete under tiden. När hårddisken hittar data skickar den ett hårdvaruavbrott som säger till CPU: n att tillfälligt stoppa vad den gör och leverera data till det begärda programmet.
Programvaruavbrott
Program utfärdar programvaruavbrott för att hantera speciella förfrågningar via datorns operativsystem. I din ordbehandlare vill du till exempel klistra in datumet i en sidrubrik. Ordbehandlaren utfärdar ett programavbrott och begär datumet från Microsoft Windows. Ordbehandlaren väntar en kort stund medan Windows hämtar datumet från systemkalendern. När datumet är klart återgår Windows kontrollen till ordbehandlaren. Programavbrott har relativt låg prioritet. om processorn får en förfrågan från hårddisken medan den hämtar datumet, servar processorn hårddiskavbrottet först och avslutar sedan att hämta datumet.
CPU-fällor
Operativsystemet reserverar flera mycket högprioriterade avbrott för nödsituationer. Till exempel blir ett programs data korrupta, vilket gör att det kraschar. Operativsystemet utfärdar en CPU-fälla som stoppar programmet och visar ett varningsmeddelande på skärmen som låter dig veta vad som hände. I mer extrema fall utvecklar själva operativsystemet ett allvarligt problem. Den utfärdar en annan CPU-fälla som visar ett diagnostiskt meddelande och stoppar all bearbetning.