Starpība Starp Pārtraukumu Un Izņēmumu

Starpība Starp Pārtraukumu Un Izņēmumu
Starpība Starp Pārtraukumu Un Izņēmumu

Video: Starpība Starp Pārtraukumu Un Izņēmumu

Video: Starpība Starp Pārtraukumu Un Izņēmumu
Video: Aquarium FILTER GUIDE v.2 - Everything To Know About Filtration in Aquascaping 2024, Novembris
Anonim

Pārtraukt vs izņēmums

Jebkurā datorā programmas normālas izpildes laikā var būt notikumi, kas var izraisīt CPU īslaicīgu apstāšanos. Šādus notikumus sauc par pārtraukumiem. Pārtraukumus var izraisīt vai nu programmatūras, vai aparatūras kļūmes. Aparatūras pārtraukumus sauc par (vienkārši) pārtraukumiem, bet programmatūras pārtraukumus - par izņēmumiem. Kad tiek pārtraukts pārtraukums (programmatūra vai aparatūra), vadība tiek pārsūtīta uz īpašu apakšprogrammu, ko sauc par ISR (Interrupt Service Routine), kas var tikt galā ar apstākļiem, kurus rada pārtraukums.

Kas ir pārtraukt?

Terminu Pārtraukt parasti rezervē aparatūras pārtraukumiem. Tie ir programmas vadības pārtraukumi, ko izraisa ārēji aparatūras notikumi. Šeit ārēji nozīmē CPU ārēju. Aparatūras pārtraukumi parasti nāk no daudziem dažādiem avotiem, piemēram, taimera mikroshēmas, perifērijas ierīcēm (tastatūras, pele utt.), I / O portiem (sērijas, paralēli utt.), Diskdziņiem, CMOS pulkstenim, paplašināšanas kartēm (skaņas karte, video karte utt.). Tas nozīmē, ka aparatūras pārtraukumi gandrīz nekad nenotiek kāda notikuma dēļ, kas saistīts ar izpildes programmu. Piemēram, notikums, piemēram, lietotāja nospiežams taustiņš uz tastatūras, vai iekšēja aparatūras taimera taimauts var izraisīt šāda veida pārtraukumu un var informēt CPU, ka noteiktai ierīcei jāpievērš īpaša uzmanība. Šādā situācijā CPU pārtrauks visu, ko tas darīja (ti, aptur pašreizējo programmu),nodrošina ierīcei nepieciešamo pakalpojumu un atgriezīsies pie parastās programmas. Kad notiek aparatūras pārtraukumi un CPU sāk ISR, citi aparatūras pārtraukumi tiek atspējoti (piemēram, 80 × 86 mašīnās). Ja jums ir nepieciešami citi aparatūras traucējumi, kamēr notiek ISR, jums tas jādara skaidri, notīrot pārtraukuma karodziņu (ar sti instrukciju). 80 × 86 mašīnās pārtraukšanas karodziņa notīrīšana ietekmēs tikai aparatūras pārtraukumus.pārtraukuma karodziņa notīrīšana ietekmēs tikai aparatūras pārtraukumus.pārtraukuma karodziņa notīrīšana ietekmēs tikai aparatūras pārtraukumus.

Kas ir izņēmumi?

Exception is a software interrupt, which can be identified as a special handler routine. Exception can be identified as an automatically occurring trap (a Trap can be identified as a transfer of control, which is initiated by the programmer). Generally, there are no specific instructions associated with exceptions (traps are generated using a specific instruction). So, an exception occurs due to an “exceptional” condition that occurs during program execution. For example, division by zero, execution of an illegal opcode or memory related fault could cause exceptions. Whenever an exception is raised, the CPU temporarily suspends the program it was executing and starts the ISR. ISR will contain what to do with the exception. It may correct the problem or if it is not possible it may abort the program gracefully by printing a suitable error message. Although a specific instruction does not cause an exception, an exception will always be caused by an instruction. For example, the division by zero error can only occur during the execution of the division instruction.

Kāda ir atšķirība starp pārtraukumu un izņēmumu?

Pārtraukumi ir aparatūras traucējumi, bet izņēmumi ir programmatūras traucējumi. Aparatūras pārtraukumi parasti atspējo citus aparatūras traucējumus, taču tas neattiecas uz izņēmumiem. Ja jums ir jāatspējo aparatūras pārtraukumi, līdz tiek izsniegts izņēmums, jums skaidri jānotīra pārtraukuma karodziņš. Un parasti pārtraukuma karogs datorā ietekmē (aparatūras) pārtraukumus, nevis izņēmumus. Tas nozīmē, ka šī karodziņa notīrīšana neaizkavēs izņēmumus.

Ieteicams: