trent
驱动老牛
驱动老牛
  • 注册日期2002-03-01
  • 最后登录2014-09-18
  • 粉丝0
  • 关注0
  • 积分61分
  • 威望185点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:1022回复:10

熟悉OS的请看

楼主#
更多 发布于:2002-12-19 11:28
当外来数据到来时,触发了IO中断,IO处理器接收完以后,OS怎么知道由谁来处理这个数据?
我不仅要金子,我还要点石成金的手指!
Sunbeam
驱动小牛
驱动小牛
  • 注册日期2001-10-29
  • 最后登录2010-01-29
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望12点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-12-19 11:35
把挂在同一个中断的所有中断例程形成一个链,逐个调用中,如果中断例程返回TRUE,表示已经处理了,不再找下一个中断例程。
堂堂正正做人,明明白白做事
trent
驱动老牛
驱动老牛
  • 注册日期2002-03-01
  • 最后登录2014-09-18
  • 粉丝0
  • 关注0
  • 积分61分
  • 威望185点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-12-19 11:42
我指的是中断已经返回了,哪个进程谁来处理?
我不仅要金子,我还要点石成金的手指!
Sunbeam
驱动小牛
驱动小牛
  • 注册日期2001-10-29
  • 最后登录2010-01-29
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望12点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-12-20 14:01
“中断已经返回了”是指中断例程已经执行完了吗?
在WIN2K下是执行一个DPC来通知等待进程,通知的方式很多种了。
堂堂正正做人,明明白白做事
浮萍
驱动太牛
驱动太牛
  • 注册日期2002-11-08
  • 最后登录2008-05-31
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-12-20 18:04
不会,
帮你顶一下!! :)
trent
驱动老牛
驱动老牛
  • 注册日期2002-03-01
  • 最后登录2014-09-18
  • 粉丝0
  • 关注0
  • 积分61分
  • 威望185点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-12-20 18:12
3q3q,不过就是知道我也取不到这个进程,sigh,去当前进程总是取到Idle进程,ft死了 :D
我不仅要金子,我还要点石成金的手指!
浮萍
驱动太牛
驱动太牛
  • 注册日期2002-11-08
  • 最后登录2008-05-31
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-12-20 18:17
一个人玩,
好无聊!! :(
trent
驱动老牛
驱动老牛
  • 注册日期2002-03-01
  • 最后登录2014-09-18
  • 粉丝0
  • 关注0
  • 积分61分
  • 威望185点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-12-20 18:26
一个人玩,
好无聊!! :(

理你一下 :D :D :D
我不仅要金子,我还要点石成金的手指!
浮萍
驱动太牛
驱动太牛
  • 注册日期2002-11-08
  • 最后登录2008-05-31
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-12-20 18:33
[quote]一个人玩,
好无聊!! :(

理你一下 :D :D :D [/quote]谢谢!!! ;) :P
ice_fire333
驱动老牛
驱动老牛
  • 注册日期2002-10-08
  • 最后登录2007-08-13
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2002-12-20 18:35
你是不是想问,当中断例程执行完以后,由谁再处理这个I/O请求?
而中断例程执行完以后,不一定接下来执行的是处理这个I/O请求,通常情况下继续执行被中断的线程。而中断例程执行最后,通常会派发一个DPC。
赵客缦胡缨,吴钩霜雪明。银鞍照白马,飒沓如流星。   十步杀一人,千里不留行。事了拂衣去,深藏身与名。   闲过信陵饮,脱剑膝前横。将炙啖朱亥,持觞劝侯嬴。   三杯吐然诺,五岳倒为轻。眼花耳热后,意气素霓生。   救赵挥金槌,邯郸先震惊。千秋二壮士,煊赫大梁城。   纵死侠骨香,不惭世上英。谁能书阁下。白首太玄经。
trent
驱动老牛
驱动老牛
  • 注册日期2002-03-01
  • 最后登录2014-09-18
  • 粉丝0
  • 关注0
  • 积分61分
  • 威望185点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2002-12-20 18:49
你是不是想问,当中断例程执行完以后,由谁再处理这个I/O请求?
而中断例程执行完以后,不一定接下来执行的是处理这个I/O请求,通常情况下继续执行被中断的线程。而中断例程执行最后,通常会派发一个DPC。

正常是这样的,但是比如网络中来了一个数据包,发给a进程的,当接收到这个包时触发了IO中断,当中断完成数据接受以后,由谁来处理,可能这时侯被中断的是Idle进程(很经常是)。不可能再执行Idle把
我不仅要金子,我还要点石成金的手指!
游客

返回顶部