Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Vstup/výstup riadený prerušením (I/O) je mechanizmus, v ktorom I/O zariadenie signalizuje CPU, keď má dáta alebo je pripravené prijímať dáta, namiesto toho, aby CPU neustále kontrolovalo stav I/O zariadenia.
Týmto spôsobom môže CPU pokračovať vo vykonávaní inštrukcií, kým prebieha I/O prenos, čo výrazne skracuje čakacie doby a zvyšuje celkovú efektivitu systému.
Ako to funguje:
- I/O zariadenie pracuje nezávisle od CPU a udržiava vyrovnávaciu pamäť na ukladanie dát.
- Keď sa vyrovnávacia pamäť zaplní (pre vstup) alebo prázdna (pre výstup), zariadenie generuje signál prerušenia do CPU.
- Po prijatí prerušenia CPU dočasne pozastaví svoje aktuálne vykonávanie a zodpovedajúca rutina služby prerušenia (ISR) spracuje prenos dát do/z vyrovnávacej pamäte I/O.
- Po dokončení prenosu dát ISR vráti riadenie hlavnému programu a CPU obnoví svoju predchádzajúcu úlohu.
2. Programovaný vstup/výstup
Programovaný vstup/výstup je jednoduchší I/O mechanizmus, kde CPU preberá proaktívnu úlohu pri riadení dátových prenosov s I/O zariadeniami. V preddefinovaných intervaloch sa neustále pýta I/O zariadenia, aby skontroloval, či je pripravené na výmenu údajov.
Ako to funguje:
- CPU pravidelne kontroluje stavový register I/O zariadenia, aby určil, či je pripravené odosielať alebo prijímať dáta.
- Ak je zariadenie pripravené, CPU zaháji prenos odoslaním alebo prijatím údajov z I/O portu alebo adresy mapovanej v pamäti.
- CPU neustále opakuje tento proces, kým sa neprenesú všetky požadované dáta.
Pokiaľ ide o efektívnosť, I/O riadené prerušením sa vo všeobecnosti uprednostňujú pred programovanými I/O, pretože umožňujú lepšie využitie CPU odstránením zbytočného a opakovaného dopytovania I/O zariadenia. Naprogramované I/O je však jednoduchšie implementovať a môže byť vhodné pre menej časovo kritické aplikácie.