Erinevus küsitluse ja katkestamise vahel

Teatud aegadel lakkab põhiprotsessor töötamast ja kontrollib, kas mõnel kontrolleril on selle jaoks sõnum olemas, kui see on olemas, töötleb seda sõnumit ja jätkab töötamist. Seda nimetatakse küsitluseks. Lisaks on selge, et põhiprotsessor teeb oma tööd ja seadmed teevad oma tööd. Kui seade lõpetab oma töö või ilmneb tõrge, teavitab seade peaprotsessorit katkestamistaotlusest.

Mis on küsitlus?

Süsteemides, kus rohkem väliseid loogikalülitusi suhtleb mitme U / I ühenduse kaudu ühe mikroprotsessoriga, kasutatakse U / I küsitlust. Mikroarvuti helistab perioodiliselt igale välisele loogikalülitusele ja uurib, kas see on teenust taotlenud. Kui väline loogikalülitus ei vaja hooldust, uurib mikroarvuti järgmist välist loogikalülitust jne. Kui üks neist vajab hooldust, lülitub mikroarvuti vastava välise loogikalülituse teenindusprogrammi käivitamiseks. U / I ülekandefunktsioon on programmi kaasatud. Teisisõnu, küsitlus on kliendi helistamine (arvutid või terminalid), mis võib saata andmeid pärast helistamist (kui neid on). Kui kliendil on andmeid, saadab ta selle pärast küsitlust ja kui andmeid pole, vastab klient eitavalt ning server helistab järgmisele kliendile. Mõni seade võib vajada kontrolleri hooldamist (nt kui mõni seade lõpetab mõõtmise või kui ilmneb tõrge). Päring saadetakse kontrollerile, seades SRQ rea madalaks. Pärast seda, kui kontroller on teenindamistaotluse kätte saanud, kutsub ta kõik bussis olevad seadmed üles leidma seadme, mis selle päringu saatis.

Mis katkestab?

Programmi täitmise ajal saab mikroprotsessor vastu võtta katkestussignaali spetsiaalsete IRQ-liinide kaudu. Katkestamine toimub tavaliselt katkestamiseks töötlemiseks vastava süsteemi alamprogrammi kutsumisega - need on niinimetatud BIOS- või DOS-katkestuste rutiinne töötlus. Pärast töötlemise katkestamist jätkab protsessor katkestatud programmi täitmist. Samuti võib rakendusprogramm ise sisaldada juhist, mis nõuab BIOS-i või DOS-i katkestamisrutiini täitmist. Sisend-väljundoperatsioone teostatakse enamasti sel viisil. Näiteks kui programm soovib ekraanile märgi printida, saab ta seda teha, helistades vastavale katkestamisrutiinile. BIOS sisaldab elementaarseid sisend-väljundrutiine, mis töötavad suhteliselt kiiresti, ja vastavad DOS-rutiinid on aeglasemad, kuid nende võimalused on suuremad (sisend-väljundkanalite alistamise võimalus, vigade kontrollimise võimalus ja muu selline). Seetõttu on riistvaraline katkestus signaal, mille protsessor võtab vastu teisest arvuti seadmest, ja tarkvarakatkestus on BIOS-i või DOS-i rutiini (alamprogramm) täitmisprotsess, mida kutsutakse automaatselt vastu võetud katkestussignaali töötlemiseks või kutsutakse üles käivitama vastavad juhised.

Erinevus küsitluse ja katkestamise vahel

Küsitluse taust ja katkestamine

Esimesel juhul kontrollib protsessor regulaarsete ajavahemike järel, kas seade vajab toimingut. Katkestuse korral on olemas mehhanism, mille abil protsessor võimaldab välisel seadmel (nt klaviatuur, helikaart jne) protsessori tähelepanu äratada.

Küsitluse ja katkestamise mehhanism

Katkestused on spetsiaalselt organiseeritud mehhanismid välisseadmete suhtlemiseks. Seadmed teatavad protsessorile, kui on vaja midagi teha. Polling on Protocol - protsessor küsib seadmelt regulaarselt, kas on vaja toimingut teha.

Küsitluste teenindamine ja katkestamine

Mikrokontrolleri teenuste küsitlusel vajab tähelepanu vajav seade ja liigub seejärel jälgimiseks järgmise seadme juurde. Katkestuse korral katkestussignaali saamisel peatub keskseade praeguse tegevusega ja teenindab seadet. Töödeldud teenuseid või katkestust nimetatakse katkestatud teenuse rutiiniks (ISR) või katkestuse käitlejaks.

Protsessor

Küsitlusprotsessis on CPU ootel ja kontrollib, kas mõni seade vajab teenust. See raiskab asjatult aega. Katkestuste korral häiritakse protsessorit vaid vajaduse korral.

Küsitluse ja katkestamise ilmumine

Seadmeid saab kontrollida ainult korrapärase intervalliga, kui neid kontrollitakse. Katkestus võib juhtuda igal ajahetkel.

Küsitluse eelised ja katkestamine

Mõni küsitluse eelis on suhteliselt lihtne programm, edastuskindlus, mis toimub maksimaalsel kiirusel, s.t kohe, kui I / O-seade on valmis ja pole vaja täiendavaid juurdepääsukiibisid. Katkestus on kasulik, kuna see võib teenindada mitut seadet, see on paindlikum ja tõhusam.

Küsitluste puudused ja katkestamine

Küsitluste puudusteks on mõne seadme ooteaeg, mis on lühem kui reageerimise aeg, ja siis tuleks kasutada mõnda muud edastusmeetodit, samuti seda, et keskseade kulutab tarbetult aega nende seadmete kontrollimiseks, mis pole andmeedastust otsinud. Katkestuste puudused on keerukama riistvara / tarkvara nõudmine ja ajakadu, kuni CPU teeb kindlaks, millised üksused katkestamist taotlevad.

Küsitlus vs katkestamine: võrdlusdiagramm

Kokkuvõte küsitlusest vs. Vahele segama

  • Küsitluse korral tehakse ühe protsessoriga ühendatud seadmete tsükliline lugemine. Kui väline loogikalülitus ei vaja hooldust, uurib mikroarvuti järgmist välist loogikalülitust. Kui üks neist vajab hooldamist, lülitub mikroarvuti vastava väliste loogikaahelate teenindamiseks programmi käivitamiseks.
  • Katkestamisel katkestab välise loogika nõudmisel mikroarvuti oma praeguse programmi käitamise ja lülitub katkestusprogrammi käivitamisele. Katkestatud struktuur võimaldab mikroprotsessoril reageerida asünkroonsetele sündmustele, st välise loogika taotlustele, mitte oodata välise loogikaahela oleku uurimiseks ahelas.