【求助】内核态导致的PagerFault

linmusen212 2017-06-05 02:08:32
环境说明:
1. 该进程被PCI设备的中断程序调用,运行在内核态,大概2ms调度一次。
2. 该进程中创建了两个共享内存(SEC_NOCACHE|SEC_COMMIT|PAGE_READWRITE),而且已经VirtualLock。
3. 该进程和几个运行在用户态的进程都在读写这两个共享内存。
4. 操作系统Windows XP Professional SP3,双核四线程CPU


正常运行几个小时后,内核态进程会因Page Fault崩溃,崩溃时CPU寄存器信息如下:

EIP:00000000 (固定不变)
EAX:F766DF67 (固定不变)
EBX:00000008 (固定不变)
ECX:00000014 (固定不变)
EDX:00000014 (固定不变)

EBP:89A0DE74 (A0D这三位数字有时会变,其他固定)
ESP:89A0DE6C (A0D这三位数字有时会变,其他固定)

EDI:00000000
ESI:00000024

此问题困扰很久,有没有什么思路?
...全文
518 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zwfgdlc 2017-06-06
  • 打赏
  • 举报
回复
可以的话,在虚拟机里调试下驱动,用windbg一直连接调试,看下什么问题
  • 打赏
  • 举报
回复
1.把DUMP文件发上来。 2.你可以试试windows 2003 的环境 利用WRK源码自己编译一份 然后加载 利用调试观察出错位置。
linmusen212 2017-06-05
  • 打赏
  • 举报
回复
引用 2 楼 zhao4zhong1 的回复:
使用驱动精灵软件升级能升级的驱动?
感谢回复,这个驱动是自己开发的,验证是没有问题的,已经确定是该内核进程自身问题。
赵4老师 2017-06-05
  • 打赏
  • 举报
回复
使用驱动精灵软件升级能升级的驱动?
赵4老师 2017-06-05
  • 打赏
  • 举报
回复
Windows驱动开发 http://www.osronline.com/

2,640

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 硬件/系统
社区管理员
  • 硬件/系统社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧