zhenlongyang
驱动小牛
驱动小牛
  • 注册日期2004-10-28
  • 最后登录2010-07-26
  • 粉丝1
  • 关注0
  • 积分729分
  • 威望100点
  • 贡献值0点
  • 好评度66点
  • 原创分0分
  • 专家分0分
阅读:1274回复:1

高分请教:如何与Win2000系统共享IRQ0(系统时钟中断)?

楼主#
更多 发布于:2005-05-20 19:51
要如何才能在驱动程序中挂接一个IRQ 0(系统时钟中断,就是DOS下的那个INT 8)中断服务程序呢?
我发现一个奇怪的现象:在我的兼容机(操作系统:Win2000 Professional)上,开始时用WinDriver跟踪IRQ0中断时提示不能跟踪,好像是说该中断不能被共享,可是后来不知道为何又能跟踪了,但跟踪不到任何中断到来,不过在驱动程序中已经可以用HalGetInterruptVector()获取中断向量并链接到中断,而且也确实进入了中断服务程序(每秒18次调用),在这台兼容机上可以用HalGetInterruptVector获取任何IRQ号的中断向量!可是在另一台工控机上却死活不能使用该中断,用HalGetInterruptVector()获得的向量总是0(NULL)!我实在想不出这两台机器在软件配置上有何不同,它们的操作系统完全一样,同样都安装有SoftIce3.1和WinDriver6.23,真是晕!利用这个中断的硬件定时功能对我的ISA卡很重要,我不能使用内核Timer,因为它的IRQL达不到硬件中断级别,高手们请详细说明一下要如何才能安全稳定的共享IRQ0中断,如果问题解决将不惜百分相增,即便不能解决也希望高手多谈谈这方面的经验,我将不胜感激!多谢!多谢!

[编辑 -  5/22/05 by  zhenlongyang]
zhenlongyang
驱动小牛
驱动小牛
  • 注册日期2004-10-28
  • 最后登录2010-07-26
  • 粉丝1
  • 关注0
  • 积分729分
  • 威望100点
  • 贡献值0点
  • 好评度66点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-05-23 20:31
难道真的无人知道?高手们都去哪儿了?
游客

返回顶部