版块
论坛
喜欢
话题
应用
搜索
登录
注册
libin2309的个人空间
访问量
1
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=41192
大家看看我的代码有错误码?为什么偶尔蓝屏??
下面是我用DS写的ISA卡的NT式的驱动的部分程序,运行在WIN2000上,中断方式获得数据,具体工作原理是:在驱动的初始化例程(DDK里就是驱动入口点例程),驱动分配一个非分页内存Buf用来在中断延迟例程里存放从端口读到的数据,驱动程序通过一个DeviceIoCtl把该内存影射...
全文
回复
(
15
)
2004-02-25 16:40
来自版块 -
ABC初学者
◆
◆
表情
告诉我的粉丝
提 交
libin2309
:
我刚才打印了申请到的Buf地址,是f9f84aa8,softice 显示的信息这次没有内存溢出。但在关机的时候,弹出错误: Break Due to KeBugCheckEx(Unhandled kernel modle exception) Error=c2(BAD POO...
(2004-02-27 20:36)
回复
arthurtu
:
申请内存成功了就可以打印了,一次足矣
(2004-02-27 19:08)
回复
libin2309
:
把Buf的地址打印看看是不是和riverMonitor显示underrun的地址一样 既然shutdown了无所谓释放内存了 在中断延迟里读端口之前加上这个: t<<"Buf address is:"<<(ULONG)Buf...
(2004-02-27 14:12)
回复
arthurtu
:
把Buf的地址打印看看是不是和riverMonitor显示underrun的地址一样 既然shutdown了无所谓释放内存了
(2004-02-27 13:47)
回复
libin2309
:
我也帮你顶顶,说不定会有人旁观者清。 但凡驱动引起的蓝屏,99%都是因为在驱动中访问了不存在的内存地址所致。 我也是这么认为的,但我的程序里中断例程和中断延迟调用里,对自己用NEW操作符在堆里分配的非分页内存Buf的操作,从语法上说没产生越界,那什么地方访问了不存在的内...
(2004-02-27 09:28)
回复
changjt
:
我也帮你顶顶,说不定会有人旁观者清。 但凡驱动引起的蓝屏,99%都是因为在驱动中访问了不存在的内存地址所致。
(2004-02-27 08:29)
回复
libin2309
:
顶!
(2004-02-26 15:22)
回复
libin2309
:
我也不明白,只是把我的体会说一下 像我的pci也是那样子的,你可以试试看 你能详细说说的你的PCI的驱动,在用SOFTICE调试的时候出现的是什么样的错误吗?? 写出它的错误提示。 谢谢!
(2004-02-25 19:53)
回复
libin2309
:
我做PCI也是遇到和你一样的问题 就是判断了中断是不是自己的硬件产生的后才没再出现 我认为PCI 的中断资源是共享的,也就是同一个中断号可能被多个设备使用,但在一个时间点上只能被一个设备使用,所以需要判断是哪个设备发来的中断。 ISA的中断是独占的,我修改了主板的...
(2004-02-25 19:52)
回复
xxiezhen
:
我也不明白,只是把我的体会说一下 像我的pci也是那样子的,你可以试试看
(2004-02-25 19:48)
回复
1
2
下一页 »
libin2309
加关注
写私信
0
关注
0
粉丝
796
帖子
返回顶部