Den primära prestationsfördelen med att använda avbrott för synkronisering mellan enhetsdrivare och enheter ligger i
Effektivitet och lyhördhet . Istället för att föraren ständigt pollar enheten (kontrollerar dess status upprepade gånger), tillåter avbrott enheten att signalera föraren * endast när * den behöver uppmärksamhet. Detta förbättrar prestandan på flera sätt:
* reducerad CPU -overhead: Polling förbrukar betydande CPU -cykler, särskilt om enheten är långsam eller sällsynt i sin verksamhet. Avbrott eliminerar denna bortkastade CPU -tid. CPU kan fokusera på andra uppgifter tills enheten är klar, vilket resulterar i bättre totala systemprestanda.
* Förbättrad lyhördhet: Avbrott ger ett mycket mer lyhörd system. När en enhet behöver tjänst (t.ex. dataöverföring komplett, feltillstånd) signalerar den omedelbart CPU via ett avbrott. Detta gör att föraren kan reagera snabbt, minimera latens och säkerställa snabb hantering av enhetshändelser. Polling har å andra sidan inneboende latens eftersom föraren bara kontrollerar enhetens status med specifika intervall.
* Bättre resursutnyttjande: Genom att bara använda CPU-tid när det är nödvändigt frigör avbrottsdriven kommunikation processorn för andra uppgifter. Detta leder till bättre resursanvändning och ett mer effektivt system som helhet.
Kort sagt, avbrott ger en asynkron, händelsedriven mekanism för enhetskommunikation, vilket resulterar i ett mycket mer effektivt och lyhörd system jämfört med den ständiga kontrollen som är involverad i polling. CPU är inte belastat med onödigt arbete, och systemet kan reagera snabbare på enhetshändelser.