Mikä on keskeytys: tyypit ja sen sovellukset

Kokeile Instrumenttia Ongelmien Poistamiseksi





Tietokoneet käyttävät keskeytyspyyntöjä erilaisten laitteistotoimintojen käsittelemiseksi. Laitteiden keskeytykset otettiin ensimmäisen kerran käyttöön UNIVAC 1103: n toimesta vuonna 1953. IBM 650 sisälsi ensimmäisen keskeytyksen peittämisen vuonna 1954. On olennaista määrittää erilaiset IRQ: t eri laitteille eri toimintojen suorittamiseksi. Ohjelman suorituksen aikana laitteet, kuten näppäimistöt, hiiri, edellyttävät suorittimen palveluja ja tuottavat keskeytyksen saadakseen prosessorin huomion ja käsittelemään pyydetyn palvelun. Nämä tunnetaan nimellä keskeyttää . Yksi I / O-laitteen väylistä on omistettu palvelemaan tätä tarkoitusta, joka tunnetaan nimellä Interrupt Service Routine (ISR). Näitä käytetään erilaisissa sovelluksissa, kuten aikaherkissä tapahtumissa, tiedonsiirrossa, epänormaalien tapahtumien korostamisessa, vahtikoira-ajastimissa, ansoissa jne.

Mikä on keskeytys?

Määritelmä: Sitä kutsutaan panokseksi signaali jolla on korkein prioriteetti laitteisto- tai ohjelmistotapahtumille, jotka edellyttävät tapahtuman välitöntä käsittelyä. Laskennan alkuaikoina prosessori piti odottaa signaalin mahdollisten tapahtumien käsittelemiseksi. Suorittimen tulisi tarkistaa jokainen laitteisto- ja ohjelmistoohjelma selvittääkseen, onko prosessoitavaa signaalia. Tämä menetelmä kuluttaa useita kellojaksoja ja tekee prosessorista kiireisen. Jos jokin signaali syntyi, prosessori vie tapahtuman käsittelyyn jälleen jonkin aikaa, mikä johti järjestelmän heikkoon suorituskykyyn.




Tämän monimutkaisen prosessin voittamiseksi otettiin käyttöön uusi mekanismi. Tässä mekanismissa laitteisto tai ohjelmisto lähettää signaalin prosessorille sen sijaan, että prosessori tarkastaisi laitteistolta tai ohjelmistolta tulevaa signaalia. Signaali hälyttää prosessorin korkeimmalla prioriteetilla ja keskeyttää nykyiset toiminnot tallentamalla sen nykyisen tilan ja toiminnon ja käsittelee keskeytyksen välittömästi, tämä tunnetaan nimellä ISR. Koska se ei kestä kauan, prosessori käynnistää normaalit toiminnot heti, kun ne on käsitelty.

Keskeyttää

Keskeyttää



Keskeytystyypit

Nämä luokitellaan kahteen päätyyppiin.

Laitteisto keskeytyy

Elektroninen signaali, joka on lähetetty ulkoiselta laitteelta tai laitteistolta kommunikoimaan prosessorin kanssa osoittamaan, että se vaatii välitöntä huomiota. Esimerkiksi näppäimistön lyönnit tai hiiren toiminto käynnistävät laitteiston keskeytykset, jolloin CPU lukee ja käsittelee sen. Joten se saapuu asynkronisesti ja mihin tahansa ajankohtaan suorittaessaan käskyä.

Laitteiden keskeytykset luokitellaan kahteen tyyppiin


  • Naamioitavat keskeytykset - Suorittimien on keskeytettävä maskirekisteri, joka sallii ja katkaisee laitteiston keskeytykset. Jokainen signaali on sijoitettu vähän maskirekisteriin. Jos tämä bitti on asetettu, keskeytys otetaan käyttöön ja poistetaan käytöstä, kun bittiä ei ole asetettu, tai päinvastoin. Signaaleja, jotka keskeyttävät prosessorit näiden peitteiden kautta, kutsutaan peitetyiksi keskeytyksiksi.
  • Ei-naamattavat keskeytykset (NMI) - NMI: t ovat ensisijaisen tärkeitä toimintoja, jotka on käsiteltävä välittömästi ja kaikissa tilanteissa, kuten valvontakellon ajastimesta muodostettu aikakatkaisusignaali.

Ohjelmisto keskeytyy

Suoritin itse pyytää ohjelmiston keskeytystä tiettyjen ohjeiden suorittamisen jälkeen tai jos tietyt ehdot täyttyvät. Nämä voivat olla erityisiä käskyjä, jotka käynnistävät keskeytyksen, kuten aliohjelmakutsut, ja ne voidaan laukaista yllättäen ohjelman suoritusvirheiden vuoksi, jotka tunnetaan poikkeuksina tai ansana.

Käynnistysmenetelmät

Yleensä nämä signaalit on suunniteltu laukaisemaan joko loogisen signaalitason tai signaalin reunan avulla. Nämä menetelmät ovat kahdenlaisia.

Tason laukaisema keskeytys

Tämän tyyppinen tulomoduuli kutsuu keskeytyksen, jos tämän palvelutaso väitetään. Jos keskeytyslähdettä käytetään edelleen, kun laiteohjelmiston keskeytyksen käsittelijä käsittelee sitä, tämä moduuli regeneroi ja käynnistää käsittelijän käynnistämään uudelleen. Tason laukaisemat tulot eivät ole hyviä, jos ne pysyvät voimassa pitempään.

Reunan laukaisema keskeytys

Reunan laukaisema keskeytystulomoduuli käynnistää keskeytyksen heti, kun se tunnistaa puolustavan reunan - putoavan tai nousevan reunan. Reuna huomataan, kun lähteen taso muuttuu. Tämän tyyppinen laukaisu edellyttää välitöntä toimintaa lähteen aktiivisuudesta riippumatta.

Tason reunan liipaisu

tason reunan liipaisu

Järjestelmän toteutus

Keskeytyksiä on sovellettava laitteistoon erillisenä komponenttina ohjauslinjojen kanssa tai integroitu osaksi muisti osajärjestelmät. Kun toteutus suoritetaan laitteistossa, se tarvitsee ohjelmoitavan keskeytyksen ohjaimen (PCI), jotta se voi muodostaa yhteyden suorittimen tulotapin ja keskeyttävän laitteen välille. PCI multipleksoi useita keskeytyslähteitä yhdelle tai kahdelle suorittimen linjalle. Kun se on toteutettu koskien muistiohjainta, järjestelmän muistiosoitekortti kartoitetaan suoraan keskeytysten kanssa.

Jaetut keskeytyspyynnöt (IRQ)

Reunan käynnistämä keskeytys, vetäminen ylös tai alasvetäminen vastus käytetään keskeytyslinjan ohjaamiseen. Tämä linja välittää jokaisen laitteen tuottaman pulssin. Jos eri laitteista generoidut keskeytyspulssit tapahtuvat lähellä ajoissa, CPU: n on kutsuttava pulssin takareuna välttämään keskeytyksiä, minkä jälkeen CPU varmistaa jokaisen laitteen tarkastamisen palvelupyyntöjen varalta. Hyvin käyttäytyvien teollisuusstandardien arkkitehtuurin (ISA) emolevyjen, joissa on ylösvetovastukset ja IRQ-linjat, on toimittava hyvin. Useat laitteet, jotka jakavat IRQ-linjan vanhemmissa järjestelmissä, joissa on huonosti suunniteltu ohjelmointirajapinta, vaikeuttavat keskeytysten käsittelyä. Toisaalta uusi järjestelmäarkkitehtuuri, kuten PCI, auttaa tarjoamaan huomattavaa helpotusta tähän ongelmaan.

Hybridi

Hybridi-tyyppisessä järjestelmän toteutuksessa on yhdistelmä sekä reuna- että tasolähtöistä signalointia. Laitteiston on etsittävä reunaa ja varmistettava myös, että jos signaali on aktiivinen tietyn ajan. Hybridityyppiä käytetään yleisesti ei-peitettävää keskeytystä (NMI) varten, mikä varmistaa, että väärät keskeytykset eivät vaikuta järjestelmään.

Viesti - Signaaloitu

Viestisignaloitu keskeytyspyyntö palvelua varten laitesignaaleilla lähettämällä viesti a viestintä kanava, kuten tietokone bussi . Nämä eivät käytä fyysistä keskeytyslinjaa. PCI Express toimii sarjaväylänä ja sitä käytetään yksinomaan viestisignaaleina.

Ovikello

Ovikellon keskeytystä käytetään yleisesti mekanismina ohjelmistojärjestelmässä ilmoittamaan tietokonelaitteistosta työn loppuun saattamiseksi. Laitteiston ja ohjelmiston keskinäisellä sopimuksella ohjelmisto sijoittaa tiedot tunnettuun muistipaikkaan ja soittaa ovikelloa ilmoittamaan laitteistolle, että tiedot ovat valmiita ja odottavat käsittelyä. Tietokonelaitteisto ymmärtää nyt tietojen paikkansapitävyyden ja käsittelee ne vastaavasti.

Moniprosessorinen IPI

Moniprosessorijärjestelmät, prosessorin keskeytyspyyntö lähetetään eri prosessorille prosessorien välisten keskeytysten (IPI) kautta

Tyypilliset käyttötavat / sovellukset

Nämä ovat tehokkaita tuloja, joita käytetään yleensä

  • Huoltolaitteiden ajastimet, käsittele näppäimistön vetoja ja hiiritoimintoja
  • Reagoi nopeasti ajankohtaisiin tai reaaliaikaisiin tapahtumiin
  • Tiedonsiirto oheislaitteisiin ja niistä
  • Vastaa tärkeisiin tehtäviin, kuten virrankatkaisusignaaleihin, loukkuihin ja vahtikoiran ajastimiin
  • Osoittaa suorittimen epänormaalit tapahtumat
  • Virran katkaisu ennakoi virran menetyksen, mikä mahdollistaa laitteen asianmukaisen sammuttamisen järjestelmään
  • Jaksottaiset keskeytykset absoluuttisen ajan seuraamiseksi

UKK

1). Miksi keskeytyksiä käytetään?

Näitä käytetään suorittimen huomion kiinnittämiseen joko laitteiston tai ohjelmiston pyytämiin palveluihin.

2). Mikä on NMI?

NMI on naamioimaton keskeytys, jota prosessori ei voi ohittaa tai poistaa käytöstä

3). Mikä on keskeytyskuittauslinjan tehtävä?

Suoritin lähettää laitteille signaalin, joka osoittaa, että se on valmis vastaanottamaan keskeytyksiä.

4). Kuvaile laitteiston keskeytystä. Antaa esimerkkejä

Se syntyy ulkoisesta laitteesta tai laitteistosta, kuten näppäimistön näppäimistä tai hiiren liikkeestä, joka kutsuu laitteistokatkokset

5). Kuvaile ohjelmiston keskeytystä.

Se määritellään erityiseksi ohjeeksi, joka kutsuu keskeytyksen, kuten aliohjelmakutsut. Ohjelmiston keskeytykset voivat laukaista yllättäen ohjelman suoritusvirheiden takia

6). Millä keskeytyksellä on korkein prioriteetti?

  • Reunaa ja tasoa ei peitetä
  • TRAP on tärkein prioriteetti

7). Anna joitain keskeytyskäyttöjä

  • Reagoi nopeasti ajankohtaisiin tai reaaliaikaisiin tapahtumiin
  • Tiedonsiirto oheislaitteisiin ja niistä
  • Vastaa tärkeisiin tehtäviin, kuten virrankatkaisusignaaleihin, loukkuihin ja vahtikoiran ajastimiin
  • Osoittaa suorittimen epänormaalit tapahtumat

8). Mikä on hybridityyppi järjestelmän toteuttamisesta?

Hybridi-tyyppisessä järjestelmän toteutuksessa on yhdistelmä sekä reuna- että tasolähtöistä signalointia. Laitteiston on etsittävä reunaa ja varmistettava myös, että jos signaali on aktiivinen tietyn ajan.

Tässä artikkelissa olemme ymmärtäneet keskeyttää ja miten niitä käytetään pyydettyjen palveluiden suorittamiseen. Keskustelimme myös tyyppeistä, järjestelmän toteutuksesta ja sen käytöstä.