Ero kyselyn ja keskeytyksen välillä

Tietyin aikoina pääprosessori lakkaa toimimasta ja tarkistaa onko jollain ohjaimella viesti siitä, jos sillä on, prosessoi viestin ja jatkaa toimintaa. Tätä kutsutaan kyselyksi. Lisäksi on selvää, että pääprosessori tekee työnsä ja laitteet tekevät työnsä. Jos laite lopettaa työnsä tai tapahtuu virhe, laite ilmoittaa pääprosessorille keskeytyspyynnöstä.

Mikä on kysely?

Järjestelmissä, joissa enemmän ulkoisia logiikkapiirejä kommunikoi useiden U / I-yhteyksien kautta yhdellä mikroprosessorilla, käytetään U / I-kyselyä. Mikrotietokone soittaa määräajoin jokaiselle ulkoiselle logiikkapiirille ja tutkii, onko se pyytänyt palvelua. Jos ulkoinen logiikkapiiri ei vaadi huoltoa, mikrotietokone tutkii seuraavaa ulkoista logiikkapiiriä jne. Jos jokin niistä vaatii huoltoa, mikrotietokone siirtyy suorittamaan vastaavan ulkoisen logiikkapiirin palvelevan ohjelman. U / I-siirtotoiminto sisältyy ohjelmaan. Toisin sanoen, kysely on asiakassoittoprosessi (tietokoneet tai päätelaitteet), joka voi lähettää tietoja kutsun jälkeen (jos sellaista on). Jos asiakkaalla on tietoja, hän lähettää sen kyselyn jälkeen ja jos tietoja ei ole, asiakas vastaa kielteisesti, ja palvelin soittaa seuraavalle asiakkaalle. Jotkin laitteet saattavat vaatia huoltoa ohjaimelta (esim. Kun jokin laite lopettaa mittauksen tai kun tapahtuu virhe). Pyyntö lähetetään ohjaimelle asettamalla SRQ-rivi matalaksi. Kun ohjain on vastaanottanut palvelupyynnön, hän soittaa kaikki väylän laitteet löytääkseen laitteen, joka lähetti pyynnön.

Mikä on keskeyttää?

Ohjelman suorituksen aikana mikroprosessori voi vastaanottaa keskeytyssignaalin erityisten IRQ-linjojen kautta. Keskeytykset suoritetaan yleisimmin kutsumalla asianmukainen järjestelmän aliohjelma keskeytyskäsittelyyn - nämä ovat ns. BIOS- tai DOS-keskeytyksen rutiinikäsittelyä. Keskeytyneen prosessoinnin jälkeen prosessori jatkaa keskeytetyn ohjelman suorittamista. Myös sovellusohjelma itsessään voi sisältää käskyn, joka vaatii BIOS- tai DOS-keskeytysrutiinin suorittamista. Tulo- ja lähtötoiminnot suoritetaan yleisimmin tällä tavalla. Esimerkiksi, jos ohjelma haluaa tulostaa merkin näytölle, se voi tehdä sen soittamalla asianmukaiseen keskeytysrutiiniin. BIOS sisältää joukon perustason tulo- ja lähtörutiineja, jotka ajavat suhteellisen nopeasti, ja vastaavat DOS-rutiinit ovat hitaampia, mutta niiden ominaisuudet ovat suurempia (mahdollisuus ohittaa tulo- ja lähtökanavat, mahdollisuus hallita virheitä ja niin edelleen). Siksi laitteiston keskeytyminen on signaali, jonka prosessori vastaanottaa tietokoneen toiselta laitteelta, ja ohjelmistokatko on BIOS- tai DOS-rutiinin (aliohjelma) suoritusprosessi, jota kutsutaan automaattisesti vastaanotetun keskeytyssignaalin käsittelemiseksi tai jota pyydetään suorittamaan vastaavat ohjeet.

Ero kyselyn ja keskeytyksen välillä

Kyselyn tausta ja keskeytys

Ensimmäisessä tapauksessa prosessori tarkistaa säännöllisin väliajoin, tarvitaanko laite toimintoa. Keskeytyksen yhteydessä on mekanismi, jolla prosessori sallii ulkoisen laitteen (esim. Näppäimistön, äänikortin jne.) Houkutella prosessorin huomion..

Kyselymekanismi ja keskeytys

Keskeytykset ovat erityisesti järjestettyjä mekanismeja oheislaitteiden kommunikointiin. Laitteet ilmoittavat prosessorille, jos tarvitaan toiminto. Pollaus on protokolla - CPU kysyy laitteilta säännöllisesti, tarvitaanko toimenpide.

Kyselyn ja keskeytyksen huolto

Mikrokontrolleripalvelujen kyselyssä laite tarvitsee huomiota ja siirtyy sen jälkeen seuraavaan laitteeseen tarkkailua varten. Keskeytyksen yhteydessä, kun keskeytyssignaali vastaanotetaan, CPU pysähtyy nykyisen toiminnan kanssa ja palvelee laitetta. Prosessoidut palvelut tai keskeytykset nimetään keskeytyksen palvelurutiiniksi (ISR) tai keskeytyskäsittelijäksi.

prosessori

Äänestysprosessissa CPU on pidossa ja tarkistaa, tarvitseeko jokin laite palvelua. Tämä tuhlaa tarpeettomasti aikaa. Toisaalta keskeytyksen yhteydessä prosessori häiriintyy vain tarvittaessa.

Kyselyn esiintyminen ja keskeytys

Laitteet voidaan pollata vain säännöllisin väliajoin, kun ne tarkistetaan. Keskeytyksiä voi tapahtua tiettyyn aikaan.

Kyselyn ja keskeytyksen edut

Jotkut kyselyn edut ovat suhteellisen yksinkertainen ohjelma, siirron luotettavuus, joka tapahtuu maksiminopeudella, ts. Heti, kun I / O-laite on valmis, eikä tarvetta lisäkäyttöpiireille. Keskeytyksestä on hyötyä, koska se voi palvella useita laitteita, se on joustavampi ja tehokkaampi.

Pollausten haitat ja keskeytykset

Kyselyn haittoja ovat joidenkin laitteiden odotusaika, joka on lyhyempi kuin vasteaika, ja sitten olisi käytettävä toista siirtomenetelmää, samoin kuin se, että CPU vie tarpeettoman aikaa tarkistaakseen laitteet, jotka eivät ole etsineet tiedonsiirtoa. Keskeytyksen haitoina ovat vaatimus monimutkaisemmasta laitteistosta / ohjelmistosta ja ajan menetys, kunnes CPU määrittelee mitkä yksiköt pyytävät keskeyttämistä.

Äänestys vs. keskeytykset: vertailukaavio

Yhteenveto kyselyistä Vs. Keskeyttää

  • Kyselyssä suoritetaan syklinen lukeminen laitteisiin, jotka on kytketty yhteen CPU: hon. Jos ulkoinen logiikkapiiri ei vaadi huoltoa, mikrotietokone tutkii seuraavaa ulkoista logiikkapiiriä. Jos yksi niistä vaatii huoltoa, mikrotietokone siirtyy ohjelman ajamiseen vastaavan ulkoisen logiikkapiirin palvelemiseksi.
  • Kun keskeytys tapahtuu, ulkoisen logiikan pyynnöstä mikrotietokone keskeyttää nykyisen ohjelman suorittamisen ja siirtyy keskeytysohjelman ajamiseen. Keskeytetty rakenne antaa mikroprosessorille vastata asynkronisiin tapahtumiin, ts. Ulkoisen logiikan pyyntöihin, olla odottamatta silmukassa tutkimaan ulkoisen logiikkapiirin tilaa..