1. 栈结构
设备栈(Device Stack)结构与内存中的栈类似,但是 device stack 中的 entry 由 device object 中的 AttachedDevice 值的连接。
如下图所示:
并且由每个 device 的 DeviceExtension.AttachedTo 值指向下一层的 device。从而形成双向的链结构。
2. 栈顶
由 IoGetAttachedDevice() 函数来得到当前栈顶 device:
PDEVICE_OBJECT IoGetAttachedDevice( IN PDEVICE_OBJECT DeviceObject ) { // // 直...
设备栈, 驱动开发阅读全文