阅读:1301回复:8
请帮助我理解中断
通常,在设备管理中看到的中断号, 比如主硬盘通道是14,副硬盘通道是15, 键盘是1这个中断号在 irql中是怎么对应的???
中断矢量是什么东西?? 派什么用的???? 中断的的边缘触发和水平触发对于驱动会有什么样的影响???? 低层中断捕捉函数捕捉到的数据,会流经高层驱动的完成例程而返回给用户态应用程序吗???? 如过是这样, 我应该在什么IRP上设置完成例程来过滤这些低层中断函数捕捉到的数据???? 问题比较多, 请高手们一一指点了.. [编辑 - 2/22/03 by drank] [编辑 - 2/28/03 by drank] [编辑 - 2/28/03 by drank] |
|
沙发#
发布于:2003-02-25 11:18
???????
|
|
板凳#
发布于:2003-02-25 13:15
在设备管理中看到的中断号是硬件中断号,它与CPU的中断矢量编号差8。硬件中断号0-7加8,8-15加???,记不得了。
中断矢量就是中断后的程序入口地址。 中断的的边缘触发类似单次触发,电平触发类似永久触发。 低层中断捕捉函数捕捉到的数据,会流经高层驱动的完成例程而返回给用户态应用程序吗???? 一般不这么做。因为中断占用时间越短越好,所以一般的做法是把数据放在指定的地点,然后异步通知应用程序。 |
|
地板#
发布于:2003-02-25 13:15
全你看看微机原理吧。
这里是讨论驱动的,不是教学的。 |
|
|
地下室#
发布于:2003-02-25 13:58
谢谢X_ray的解答
----低层中断捕捉函数捕捉到的数据,会流经高层驱动的完成例程而返回给用户态应用程序吗???? 一般不这么做。因为中断占用时间越短越好,所以一般的做法是把数据放在指定的地点,然后异步通知应用程序。---- 键盘驱动是这样工作的吗? 在这中工作方式下, 我怎样能控制键盘输入的数据呢? 对于: 设备管理中看到的中断号与irql的对应关系,谁再来清楚的解释一下啊??? |
|
5楼#
发布于:2003-02-26 14:58
???
|
|
6楼#
发布于:2003-02-26 19:39
通常,在设备管理中看到的中断号, 比如主硬盘通道是14,副硬盘通道是15, 键盘是1这个中断号在 irql中是怎么对应的??? 硬件的都在DIRQL上。 边缘(edge)的不能共享,水平(level)的可以。ISA的是边缘,PCI的是水平。 |
|
7楼#
发布于:2003-02-26 19:57
学习
|
|
8楼#
发布于:2003-02-27 08:58
谈一点自己对软件中断的迷惑
软件中断应该是由软件产生的..... 什么样的软件能产生软中断?? 应用程序好象不行,驱动程序应该可以的,内核态的服务应该也可以的,BIOS是不是也可以呢??? 如果BIOS可以的话,它将中断谁??? 软件的中断号是由谁来指定的?? |
|