阅读:2499回复:3
如何从PCI设备直接读写硬盘?
我的设备是这样工作的:PCI设备DMA到Memory,然后在CPU控制下
将内存块数据写入硬盘。这种方式已经实现了,但是工作效率不高, 由于该设备应用场合是高速连续大数据量传输,我希望将工作方式改到 PCI设备直接写入硬盘的方式。 即:不经过CPU主控,不经过Memory倒数据,由PCI设备直接写数据到 硬盘,请问 1。采用这种改进方式后PCI传输效率会提高多少?Pci利用率可否达到60%以上 2。PCI设备如何寻址到硬盘。 请各位大侠不吝赐教,如能提供资料将不胜感激 mail to : fwang800@hotmail.com -- |
|
沙发#
发布于:2002-07-03 10:19
你的直接写入硬盘是什么意思?难道是不经过文件系统直接定位逻辑扇区?
如果要经过文件系统,你应该加大缓冲区,改进你的算法。 |
|
板凳#
发布于:2002-07-03 12:40
请问,加大buffer是什么意思阿
另外,我是要绕过文件系统,直接对硬盘物理读写。当然了,如果 不影响速度的话,挂一个filter在文件系统中,专门处理PCI卡的 数据也是非常理想的。 |
|
地板#
发布于:2002-07-26 10:48
关键看你的PCI设备的数据输出速率是多少了,以及数据传输是均匀的,还是间隔的。
最好调用直接读写物理磁盘的函数 如果实在要直接连接pci设备与硬盘,最好在PCI卡上做个硬盘控制器,再挂个硬盘自己来操作。 [编辑 - 7/26/02 by jiangrf] |
|
|