IRP详解(2)----传输类型
来源:互联网 发布:linux c sleep 头文件 编辑:程序博客网 时间:2024/05/29 04:43
看完上篇的IRP请求类型,我们在来看看IRP是如何在上层和底层间实现数据传输的,微软支持以下三种数据传输机制:
1:Buffered I/O传输
I/O管理器发起Buffered I/O请求时,该IRP将会创建一个内部缓冲区,当该请求是写操作时,I/O管理器将用户空间要写入的缓冲区内容复制到该内部缓冲区中,相反,读操作时,将内部缓冲区的内容复制给用户空间缓冲区。
2:Direct I/O传输
I/O管理器发起Buffered I/O请求时,该IRP将会包含一个地址,该地址表示的是一个由MDL方式描述的缓冲区。
3:即非Buffered I/O也非Direct I/O传输
I/O控制代码中指定为METHOD_NEITHER即表示这个传输方式。该IRP包含一个指向用户模式下的缓冲区的指针。
值得注意的是,UMDF针对这种传输只提供部分支持,而KMDF则没有限制。
- IRP详解(2)----传输类型
- IRP详解(1)----请求类型
- IRP IO_STACK_LOCATION详解
- IRP详解(3)----UMDF下处理流程
- IRP
- irp
- IRP
- IRP
- IRP
- IRP
- IRP
- HTTP详解(五):HTTP POST方法传输多种类型的数据
- 内核开发irp详解运行机制详解[学习]
- IRP数据的传输方式,对应彭荣
- IRP(I/O Request Package)详解
- IRP(I/O Request Package)详解
- 驱动程序中有关IRP介绍(IRP Major Function Codes)
- 利用IoBuildDeviceIoControlRequest构造irp获得存储设备总线类型源代码
- 文件锁和Python多进程的使用
- Compass-指南针(主要用到RotateAnimation和SensorEventListener)
- java.io.IOException: Attempted read on closed stream
- 对apk包进行odex优化的目的
- POJ 1523(求割点)
- IRP详解(2)----传输类型
- 105方时尚黑白简约风------芳满庭毕业照
- poj 1113 wall 简单的凸包
- Java通过Samba服务操作Linux共享文件
- 断开SVN连接
- 最近在写的赫夫曼树、B树、二项堆等都会用到堆排序,所以把最大堆排序和最小堆排序一次性先给大家看看
- android touch事件处理
- 尚管学习第三天笔记
- Ubuntu Google输入法(基于ibus)安装