Video: Rozdiel Medzi Prerušením A Výnimkou
2024 Autor: Mildred Bawerman | [email protected]. Naposledy zmenené: 2023-12-16 08:42
Prerušenie vs Výnimka
V ktoromkoľvek počítači by sa počas jeho bežného vykonávania programu mohli vyskytnúť udalosti, ktoré spôsobia dočasné zastavenie CPU. Takéto udalosti sa nazývajú prerušenia. Prerušenie môže spôsobovať chyba softvéru alebo hardvéru. Hardvérové prerušenia sa nazývajú (jednoducho) prerušenia, zatiaľ čo softvérové prerušenia sa nazývajú výnimky. Akonáhle sa vyvolá prerušenie (softvér alebo hardvér), riadenie sa prenesie do špeciálneho podprogramu s názvom ISR (Interrupt Service Routine), ktorý dokáže spracovať podmienky vyvolané prerušením.
Čo je to prerušenie?
Pojem prerušenie je zvyčajne vyhradený pre hardvérové prerušenia. Sú to prerušenia riadenia programu spôsobené udalosťami externého hardvéru. Tu znamená externý externý procesor. Hardvérové prerušenia zvyčajne pochádzajú z mnohých rôznych zdrojov, ako sú napríklad časovač, periférne zariadenia (klávesnice, myš atď.), I / O porty (sériové, paralelné atď.), Diskové jednotky, hodiny CMOS, rozširujúce karty (zvuková karta, video) karta atď.). To znamená, že k hardvérovým prerušeniam takmer nikdy nedôjde v dôsledku nejakej udalosti súvisiacej s vykonávajúcim programom. Napríklad udalosť ako stlačenie klávesu na klávesnici používateľom alebo časový limit interného hardvérového časovača môže zvýšiť tento druh prerušenia a informovať CPU, že určité zariadenie vyžaduje určitú pozornosť. V takejto situácii CPU zastaví to, čo práve robilo (tj pozastaví aktuálny program),poskytuje službu požadovanú zariadením a vráti sa k normálnemu programu. Keď dôjde k hardvérovým prerušeniam a procesor spustí ISR, ďalšie hardvérové prerušenia sú deaktivované (napr. V strojoch s rozlíšením 80 × 86). Ak potrebujete, aby sa počas chodu ISR vyskytli ďalšie hardvérové prerušenia, musíte to urobiť výslovne vymazaním príznaku prerušenia (pomocou inštrukcie sti). V strojoch s rozmermi 80 × 86 bude mať vyčistenie príznaku prerušenia vplyv iba na hardvérové prerušenia.vymazanie príznaku prerušenia ovplyvní iba hardvérové prerušenia.vymazanie príznaku prerušenia ovplyvní iba hardvérové prerušenia.
Čo sú výnimky?
Výnimkou je softvérové prerušenie, ktoré je možné identifikovať ako špeciálnu rutinu obsluhy. Výnimku je možné identifikovať ako automaticky sa vyskytujúcu pascu (Trap je možné identifikovať ako prenos kontroly, ktorý iniciuje programátor). Spravidla neexistujú žiadne konkrétne pokyny spojené s výnimkami (pasce sa generujú pomocou konkrétnej inštrukcie). Takže nastane výnimka z dôvodu „výnimočnej“podmienky, ktorá nastane počas vykonávania programu. Napríklad delenie nulou, vykonanie nezákonného operačného kódu alebo porucha súvisiaca s pamäťou môžu spôsobiť výnimky. Kedykoľvek dôjde k výnimke, CPU dočasne pozastaví program, ktorý vykonával, a spustí ISR. ISR bude obsahovať, čo robiť s výnimkou. Môže to problém vyriešiť, alebo ak to nie je možné, môžete program elegantne prerušiť vytlačením vhodnej chybovej správy. Aj keď konkrétna inštrukcia nespôsobí výnimku, výnimku vždy spôsobí inštrukcia. Napríklad chyba delenia nulou môže nastať iba počas vykonania inštrukcie delenia.
Aký je rozdiel medzi prerušením a výnimkou?
Prerušenia sú hardvérové prerušenia, zatiaľ čo výnimkou sú softvérové prerušenia. Výskyty prerušenia hardvéru zvyčajne zakazujú ďalšie prerušenia hardvéru, ale to neplatí pre výnimky. Ak potrebujete zakázať hardvérové prerušenia, kým nebude poskytnutá výnimka, musíte explicitne vymazať príznak prerušenia. Vlajka prerušenia v počítači zvyčajne ovplyvňuje (hardvérové) prerušenia na rozdiel od výnimiek. To znamená, že vyčistenie tohto príznaku nezabráni výnimkám.
Odporúčaná:
Rozdiel Medzi Výnimkou A Výnimkou
Výnimka vs Výnimka Výnimka a výnimka sú dve slová, ktoré sú často zamieňané kvôli podobnosti svojich tvarov a tvaroslovia. Vlastne existuje
Rozdiel Medzi Kontrolovanou A Runtime Výnimkou
Zaškrtnutá výnimka vs Runtime výnimka Výnimky sú špeciálnym typom udalostí, ktoré môžu narušiť normálny priebeh programu. Výnimka z názvu pochádza z „exc
Rozdiel Medzi Prerušením A Pascou
Interrupt vs Trap V ktoromkoľvek počítači sa počas bežného vykonávania programu môžu vyskytnúť udalosti, ktoré môžu spôsobiť dočasné zastavenie procesora. Udalosti ako
Rozdiel Medzi Systémovým Volaním A Prerušením
Systémové volanie vs prerušenie Typický procesor vykonáva pokyny jeden po druhom. Môžu sa však vyskytnúť prípady, keď sa procesor musí dočasne zastaviť a vypnúť
Rozdiel Medzi Skontrolovanou A Nezaškrtnutou Výnimkou V Jave
Kľúčový rozdiel - kontrolovaná a nekontrolovaná výnimka v jazyku Java Výnimkou je chyba za behu. Existujú dva typy výnimiek známe ako začiarknuté a nezaškrtnuté