Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az eszközillesztőknek küldött kérések többsége I/O-kéréscsomagokban (IRP-kben) van csomagolva. Az operációsrendszer-összetevők vagy illesztőprogramok IRP-t küldenek egy illesztőprogramnak az IoCallDriver meghívásával, amelynek két paramétere van: egy mutató egy DEVICE_OBJECT és egy mutató egy IRP-hez. A DEVICE_OBJECT egy társított DRIVER_OBJECT mutatóval rendelkezik. Amikor egy összetevő meghívja az IoCallDrivert, azt mondjuk, hogy az összetevő elküldi az IRP-t az eszközobjektumnak , vagy elküldi az IRP-t az eszközobjektumhoz társított illesztőprogramnak. Néha azt a kifejezést használjuk, amely átadja az IRP-t , vagy továbbítja az IRP-t ahelyett , hogy elküldi az IRP-t.
Az IRP-t általában több illesztőprogram dolgozza fel, amelyek stack-ként vannak elrendezve. A veremben lévő minden illesztőprogram egy eszközobjektumhoz van társítva. További információ: Eszközcsomópontok és eszközveremek. Amikor egy eszközverem feldolgoz egy IRP-t , az IRP-t általában először az eszközverem legfelső eszközobjektumára küldi el a rendszer. Ha például a diagramon látható eszközverem feldolgoz egy IRP-t , az IRP először az eszközverem tetején lévő szűrőeszköz-objektumra (Filter DO) kerül.
IRP átadása az eszközveremben
Tegyük fel, hogy az I/O-kezelő egy IRP-t küld a diagram szűrő do-jának. A szűrő DO-hoz társított illesztőprogram, AfterThought.sysfeldolgozza az IRP-t, majd átadja azt a funkcionális eszközobjektumnak (FDO), amely az eszköz verem következő alsó objektuma. Amikor egy illesztőprogram átad egy IRP-t az eszközverem következő alsó eszközobjektumának, azt mondjuk, hogy az illesztőprogram átadja az IRP-t az eszközveremen.
Egyes I/O kéréscsomagok az eszköz veremén végighaladva a fizikai eszközobjektumhoz (PDO) lesznek átadva. Más IRP-k soha nem érik el a PDO-t, mert azokat a PDO felett lévő egyik illesztőprogram teljesíti.
Az IRP-k önállóak
Az IRP-struktúra abban az értelemben önálló, hogy minden olyan információt tartalmaz, amelyet az illesztőprogramnak egy I/O-kérés kezeléséhez kell kezelnie. Az IRP-struktúra egyes részei olyan információkat tárolnak, amelyek a veremszerkezetben részt vevő összes illesztőprogramra jellemzőek. Az IRP más részei olyan információkat tárolnak, amelyek a verem egy adott illesztőprogramjára vonatkoznak.