Különbség a megszakítás és a lekérdezés között az operációs rendszerben

Szerző: Laura McKinney
A Teremtés Dátuma: 2 Április 2021
Frissítés Dátuma: 6 Lehet 2024
Anonim
Különbség a megszakítás és a lekérdezés között az operációs rendszerben - Technológia
Különbség a megszakítás és a lekérdezés között az operációs rendszerben - Technológia

Tartalom


Számos külső eszközt csatlakoztatunk a CPU-hoz, például egér, billentyűzet, szkenner, er stb. Ezekre az eszközökre is CPU-figyelmet kell fordítani. Tegyük fel, hogy a CPU el van foglalva egy PDF-fájl megjelenítésével, és rákattint az asztalon lévő ablakos médialejátszó ikonra. Bár a CPU-nak fogalma sincs, mikor fordulhat elő ilyen esemény, de reagálnia kell az I / O eszközök ilyen bemeneteire. Megszakítás és lekérdezés az eszközök által generált események kezelésének két módja, amelyek bármikor bekövetkezhetnek, miközben a CPU elfoglalt egy másik folyamat végrehajtásában.

A lekérdezés és a megszakítás hagyja, hogy a CPU leállítsa azt, amit jelenleg csinál, és válaszoljon a fontosabb feladatra. A lekérdezés és a megszakítás sok szempontból különböznek egymástól. De a lekérdezést és a megszakítást megkülönböztető alapvető pont az, hogy a szavazás A CPU rendszeresen ellenőrzi az I / O eszközöket, hogy szüksége van - e CPU szolgáltatásra, míg a interrupt, az I / O eszköz megszakítja a CPU-t, és elmondja a CPU-nak, hogy CPU-szolgáltatásra van szüksége. Az alábbiakban összehasonlítási táblázatban tárgyaltam néhány megszakítást a Polrupt és a Polling között, kérjük, nézzen meg.


  1. Összehasonlító táblázat
  2. Meghatározás
  3. Főbb különbségek
  4. Következtetés

Összehasonlító táblázat

Az összehasonlítás alapjaMegszakításSzavazás
AlapvetőAz eszköz értesíti a CPU-t, hogy a processzor figyelmét igényli.A CPU folyamatosan ellenőrzi az eszköz állapotát, hogy szüksége van-e a processzor figyelmére.
GépezetA megszakítás egy hardver mechanizmus.A lekérdezés egy protokoll.
SzervizMegszakító kezelő szolgáltatja az eszközt.A processzor kiszolgálja az eszközt.
JelzésA kérés megszakítása sor azt jelzi, hogy az eszköznek javítást igényel.A készenléti bit jelzi, hogy az eszköznek javítást igényel.
CPUA CPU csak akkor zavar, ha egy eszköz szervizelésre szorul, ami megtakarítja a CPU ciklusait.A CPU-nak meg kell várnia, és ellenőriznie kell, hogy szükséges-e egy olyan szerviz, amely sok CPU-ciklust elpazarol.
EseményMegszakítás bármikor megtörténhet.A CPU rendszeres időközönként lekérdezi az eszközöket.
HatékonyságA megszakítás nem lesz hatékony, ha az eszközök folyamatosan megszakítják a CPU-t.
A lekérdezés nem lesz hatékony, ha a CPU ritkán találja meg a készüléket üzemkész állapotban.
PéldaHagyja, hogy a csengő csengessen, majd nyissa ki az ajtót, hogy ellenőrizze, ki jött.Folyamatosan nyissa ki az ajtót, és ellenőrizze, hogy van-e bárki.


A megszakítás meghatározása

A megszakítás a hardver mechanizmus amely lehetővé teszi a CPU-nak, hogy észlelje, hogy egy eszköznek szüksége van figyelmére. A CPU-nak van vezetéke megszakítás-kérés sor amelyet a CPU ellenőrzi minden egyes utasítás végrehajtása után. Amikor a CPU megszakítási jelet érzékel a megszakítás-kérés vonalon, a CPU leállítja a jelenleg végrehajtó feladatát, és az I / O eszköz általi megszakításra válaszolva adja át a vezérlőt a félbeszakítja a kezelőt. A megszakító kezelő az eszköz javításával megoldja a megszakítást.

Bár a CPU nem ismeri, hogy mikor fordulhat elő megszakítás, mivel ez bármikor megtörténhet, de a megszakításra mindenkor reagálnia kell.

Amikor a megszakító kezelője befejezi a megszakítás végrehajtását, akkor a CPU folytatódik annak a feladatnak a végrehajtása, amelyet megállt, hogy válaszoljon a megszakításra. Szoftver, hardver, használó, valamilyen hiba a programbanstb. megszakítást is generálhat. Megszakítja a CPU kezelésének jellegét többfeladatos, azaz a felhasználó egyszerre több különböző feladatot is végrehajthat.

Ha egynél több megszakítást küld a CPU-nak, a megszakítókezelő segít a feldolgozásra váró megszakítások kezelésében. Amint a megszakító kezelő kap váltott a megszakítás vételével fontossági sorrendbe a CPU általi feldolgozást váró megszakítások, és egy a sorban áll szervizelni.

A szavazás meghatározása

Mint láttuk a megszakításokban, az I / O eszköz bemenete bármikor megérkezhet, kérve a CPU-t, hogy dolgozza fel. A szavazás a jegyzőkönyv amely értesíti a CPU-t, hogy egy eszköznek figyelmére van szüksége. A megszakításokkal ellentétben, amikor az eszköz azt mondja a CPU-nak, hogy szüksége van CPU-feldolgozásra, a lekérdezésben a CPU megtartja kérve az I / O eszköz, hogy szüksége van-e CPU-feldolgozásra.

A CPU folyamatosan tesztelje az összes csatlakoztatott eszközt annak megállapítása érdekében, hogy valamelyik eszköznek szüksége van-e CPU-figyelésre. Minden eszköz van egy parancs kész bit, amely jelzi az eszköz állapotát, azaz hogy van-e valamilyen parancs, amelyet a CPU végrehajthat, vagy sem. Ha a parancs bit be van állítva 1, akkor van valamilyen parancs, amelyet másként végre kell hajtani, ha a bit van 0, akkor nincs parancs. CPU van egy elfoglalt bit ez jelzi a CPU állapotát, függetlenül attól, hogy foglalt-e vagy sem. Ha a foglalt bit be van állítva 1, akkor elfoglalt valamelyik eszköz parancsának végrehajtása, máshol az 0.

A lekérdezés algoritmusa

  • Ha egy eszköz rendelkezik valamilyen paranccsal, amelyet a CPU hajt végre, akkor folyamatosan ellenőrzi a CPU foglalt bitjét, amíg meg nem vált (0).
  • Amint a foglalt bit világossá válik, az eszköz beállítja az írási bitet a parancsnyilvántartásba, és bájtot ír ki az adatkimeneti regiszterbe.
  • Most az eszköz beállítja (1) a parancskész bit.
  • Amikor a CPU megvizsgálja az eszközök parancskész bitjét, és megtalálja beállítva (1), akkor beállítja (1) a foglalt bitjét.
  • A CPU ezután elolvassa az eszköz parancssorát és végrehajtja az eszköz parancsát.
  • A parancs végrehajtása után a CPU törli (0) az eszköz parancs-kész bitjét, hiba bitjét, jelezve az eszköz parancsának sikeres végrehajtását, majd törli (0) a foglalt bitjét is annak jelzésére, hogy a CPU szabadon végrehajtható egy másik eszköz parancsát.
  1. Megszakításkor az eszköz értesíti a CPU-t, hogy javításra szorul, míg a lekérdezés során a CPU többször ellenőrzi, hogy az eszköznek szüksége van-e karbantartásra.
  2. A megszakítás a hardver gépezet mivel a CPU-nak van vezetéke, megszakítás-kérés sor melyik jel történt a megszakításnál. Másrészt a szavazás a jegyzőkönyv amely folyamatosan ellenőrzi a vezérlő bitek értesíteni, hogy egy eszköz végrehajthat valamit.
  3. Megszakító kezelő kezeli az eszközök által generált megszakításokat. Másrészt a szavazás során, CPU javítja a készüléket, amikor szükség van rá.
  4. A megszakításokat a megszakítás-kérés sor. Azonban, Command-ready bit jelzi, hogy az eszköznek javítást igényel.
  5. Megszakítások esetén a CPU csak akkor zavar, ha bármely eszköz megszakítja. Másrészt, a lekérdezés során a CPU sok CPU-ciklust pazarol azáltal, hogy minden eszköz parancs-kész bitjét többször ellenőrzi.
  6. Megszakítás történhet a következő helyen: bármilyen pillanatban az idő míg a CPU folyamatosan lekérdezi az eszközt a rendszeres időközönként.
  7. A lekérdezés nem lesz hatékony, ha a CPU folyamatosan lekérdezi az eszközt, és ritkán talál olyan készüléket, amely készen áll a szervizelésre. Másrészt a megszakítások nem hatékonyak, amikor az eszközök folyamatosan megszakítják a CPU feldolgozását.

Következtetés:

A lekérdezés és a megszakítás egyaránt hatékonyan bejárja az I / O eszközöket. De a fentiekben tárgyalt bizonyos körülmények között hatástalanná válhatnak.