阅读:1502回复:0
怎么锁定用户 Buffer 到物理内存?
我在文件系统里截获 Write 动作,从 Irp 里得到有效的 UserBuffer ,长度为 4177 字节(Irp->MdlAddress为 NULL) 。 但我只能访问其 0~4095 字节内容,也就是一页的内容。后面的访问就蓝屏,在 WinDbg 里看到该内存也只有 到 4095 有效,后面都是问号。
我用 IoAllocateMdl 分配mdl, 再 MmProbeAndLockPages 会失败。抛了异常。 我确定当前IRQL 是 PASSIVE_LEVEL, 访问方式是 UserMode。 请问各位高手,我该如何访问完整用户 buffer ? |
|