| 
					阅读:1798回复:9
				 驱动程序中能进行文件读写操作吗?
					我想将硬盘上的一个大文件大约2G,通过PCI接口传到板卡上,但由于数据量过大需要一部分一部分的传。比如说,我传512k之后,给板卡一个中断,它先处理这512k,处理过之后,板卡给我生成一个中断,我再传512k给它。
 问题是,在驱动程序中,我该怎么每次从文件中读512k数据呢?驱动程序中能执行文件操作吗?该怎么做? | |
| 沙发#发布于:2003-12-02 18:08 我想将硬盘上的一个大文件大约2G,通过PCI接口传到板卡上,但由于数据量过大需要一部分一部分的传。比如说,我传512k之后,给板卡一个中断,它先处理这512k,处理过之后,板卡给我生成一个中断,我再传512k给它。 驱动程序中操作文件可以使用: ZwCreateFile ZwReadFile ZwWriteFile | |
| 
 | 
| 板凳#发布于:2003-12-02 23:18 
					没错!
 如果用DDK,如楼上所说。 如果用DW,类KFile就可以 | |
| 地板#发布于:2003-12-03 09:10 
					感谢两位,我试试先。
 还有一个问题,我在中断处理程序中不停的读文件是不是不太合适啊?这样中断处理时间过长了。 那上面我说的那种通过终端与板卡通信的情况,我该怎么做呢? | |
| 地下室#发布于:2003-12-03 12:22 感谢两位,我试试先。 中断处理时间不应过长,费时的工作一般是放到DPC中处理的。 | |
| 
 | 
| 5楼#发布于:2003-12-03 12:57 
					由于文件操作只能工作在低于ISR两个级别的优先级上,所以你在中断中是无法进行普通的文件读写操作,在DPC中也不可以,因为DPC在ISR的下以级。
 解决方法是使用系统线程操作文件,利用事件或旗语来通知。通知实现到是可以在DPC中进行。^o^ | |
| 6楼#发布于:2003-12-03 13:01 
					读512K的控制使用KFile方法可以控制,和在C下读二进制相类似。				 | |
| 7楼#发布于:2003-12-04 08:19 
					我想问 PCI 板卡怎样可以发中断给主板哪一条信号线它要调动?
 然后在驱动程序中怎样把这个中断接过来? | |
| 8楼#发布于:2003-12-04 12:35 
					这样的问题就不要问了,还是自己看看例子和资料吧。
 还有看看基础的东西,有好处 | |
| 9楼#发布于:2003-12-12 12:22 
					肯定可以拉,不然大家都不用写驱动了				 | |
 
							
 
				