| 
			 
					阅读:1426回复:4
				 
				IRP结构中Flags域,用来做什么用,如果是IRP_MJ_READ,是不是就是说数据用的是之间IO传输!
					请教一下:
 
							IRP结构中Flags域,用来做什么用?如果是IRP_MJ_READ,是不是就是说读取数据用的是直接IO传输!  | 
	|
					
						
						
						
						
  | 
	
| 
			 沙发# 
								发布于:2005-01-22 11:26				
			请教一下: 这个位要根据你具体硬件的要求进行设置的。(一般在AddDevice例程中完成) 可以设置成为你想要的设备数据传输方式。 可以是DIRECT IO 或者是 BUFFER IO 还可以可编程IO三种传输方式。 一般都用前两种!  | 
	|
					
						
  | 
	
| 
			 板凳# 
								发布于:2005-01-22 11:30				
			请教一下: 不好意思。。。。。。。看错题目了 呵呵 刚说的是DEVICEOBLECT 中的Flags IRP中的这个位是ULONG类型,包含一些对驱动程序只读的标志。但这些标志与WDM驱动程序无关。如果但是写驱动,你不用考虑它的!  | 
	|
					
						
  | 
	
| 
			 地板# 
								发布于:2005-01-22 12:32				
			
					非常感谢您的回答,想继续问一下。
 
							如果你说的deviceobject中的flags可以标记用那个传输方式。 1。直接I/O 2。内存映射 3。DMA 这3种的区别,是什么。 如果3种都选择,驱动怎么来判断什么时候用那种传输方式。? 既然实际传输的时候只能用一种方式,为什么要3种都选择呢?难道3种能同时工作??  | 
	|
					
						
  | 
	
| 
			 地下室# 
								发布于:2005-01-22 16:36				
			非常感谢您的回答,想继续问一下。 是有三种方式供你选择。 但你只能选其中 的一种!! 还有。。。 你说的那三种方式不对的。。 我二楼不是跟你说清楚了, 这三种传输方式是:DIRECT IO 或者是 BUFFER IO 还可以可编程IO三种传输方式。 建议自己找本书看看。。。 里面都有介绍的。。。  | 
	|
					
						
  |