阅读:937回复:0
问一个VxD运行时的问题,谢谢1
小弟初学VxD,前几天写了个VxD程序测试了下一块数据采集卡,该数据采集卡采用内存映射方式,其中bar0x9018000---0x901ffff地址段对应卡上的32k的rom,我的程序是这样的,先得到该卡的内存地址,有一个函数将其转换为对应的线性地址,然后用一个指针指向该地址,然后对其进行读写,写的时候我是对指针指向的地址空间写一个字节的常数,将该操作放入一个循环中,循环达32k或32m的寻址。发现速度和原先想的不一样,在一次连续写32K空间时,系统没有出现死机现象,但是速度较慢,但是在一次连续写32M的时候,只要一运行就死机。这是问题之一,第2个问题是,在测试读数据时,我是这样做的,声明一个char型的变量,将每次读到的数据都写入该变量中。不知道这样做法是否可行,反正在一次连续读32K数据的时候不会出现死机现象,但是速度比写同样的内存空间要慢几倍,这是问题之二,第3个问题是,只要我的VxD程序执行时,鼠标等一切程序都不能动了,是不是VxD的执行占用了全部的物理资源了???是不是所有的VxD的执行都是这样,要是不是,应该如何解决呢????
|
|
|