概念问题:中断与事件有什么联系与区别?

chenxianchu 2006-05-05 05:55:06
在学VB.NET的时候碰到事件的引发与处理,这和单片机中的中断响应与中断服务很类似。比如说VB.NET网络通讯程序,收到了数据,然后引发一个事件,接着进行相应的事件处理;这和单片机中数据到来引发中断,在中断服程序中进行处理,似乎一模一样,是不是可以说事件其实就是一种中断来得?高手不惜赐教!
...全文
1159 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
foyuan 2006-05-09
  • 打赏
  • 举报
回复
学习!
chenxianchu 2006-05-09
  • 打赏
  • 举报
回复
谢谢各位指教,明天结贴。希望还有高手加入讨论!
xxuu503 2006-05-08
  • 打赏
  • 举报
回复
回头看了看书:中断分为软中断和硬件中断




PS:其实不管如何理解,都是那么一回事儿
xxuu503 2006-05-08
  • 打赏
  • 举报
回复
AlphaGroup(AlphaGroup) ( ) 信誉:100 2006-05-08 13:50:00 得分: 0


中断一般指陷阱和中断子程序
INT3是一种陷阱
INT21的很多都是子程序
事件其实的实质是windows的消息机制变来的
在.NET内部事件是由windows的消息引发的


------------------------

补充的很对

那些是DOS中断,是基于DOS的软中断

在NT及以上,就没有DOS中断了,而是windows在模拟DOS中断
GHOST_FOX 2006-05-08
  • 打赏
  • 举报
回复
事件是用中断技术实现的
jedliu 2006-05-08
  • 打赏
  • 举报
回复
中断处理程序的定义就是设置中断屏蔽,使硬件只能响应比当前级别高的中断事件,而不响应其他事件。对事件处理结束后,转向进程调度程序。由进程调度程序去选择一个可以运行的进程。
AlphaGroup 2006-05-08
  • 打赏
  • 举报
回复
中断一般指陷阱和中断子程序
INT3是一种陷阱
INT21的很多都是子程序
事件其实的实质是windows的消息机制变来的
在.NET内部事件是由windows的消息引发的
jedliu 2006-05-08
  • 打赏
  • 举报
回复
偶对单片机不是很了解,所以很难说有什么联系。
所以就操作系统的中断系统说下。

首先中断装置发现中断事件后,首先把出现的中断事件存放到程序状态字寄存器中的中断码位置,然后把程序状态字寄存器中的“当前PSW”作为“旧PSW”存放到预先约定好的主存固定单元中保护起来,再把已经确定好的操作系统处理程序的“新PSW”送到程序状态字寄存器,成为“当前PSW”,这一过程称“交换PSW”。中断装置通过交换PSW使被中断进程让出处理器,且使处理器按照中断处理程序的“新PSW”控制执行。于是中断处理程序就占用了处理器,它先从保存好的旧PSW中取出中断码,分析发生的具体事件,从而可完成对中断事件的处理。

所以,事件是系统所有操作的一个处理程序,中断就是为了处理其他的事件!
xxuu503 2006-05-08
  • 打赏
  • 举报
回复
xxuu503(我爱郭芙蓉!):
你也看武林外传吧,呵呵
你的意思是事件引发时,调用API,然后调用BIOS中断服务例程(ISR),引发中断,向CPU申请资源,形成中断服务线程(IST),然后执行事件服务,是不是这样的过程?我自己乱猜的,不知道真正的过程是不是这样。请大家赐教。


-------------------------------------

恩,就是这样子

我喜欢看武林外传

最喜欢郭芙蓉
chenxianchu 2006-05-08
  • 打赏
  • 举报
回复
我想问的是,他们之间的联系。谢谢大家
sz_lgp 2006-05-08
  • 打赏
  • 举报
回复
"中断"基于硬件而言,事件是基于软件而言,“中断”就是事件没做完而被迫停止,事件就是任务,要做的工作。“中断”常由事件引起,只要优先级事件(任务)到来时才被迫放一放手中的事件,必须“中断”。
linyasa007 2006-05-08
  • 打赏
  • 举报
回复
楼上说的很清楚了!
中断是硬件方面!

事件是操作系统方面!
Ivony 2006-05-08
  • 打赏
  • 举报
回复
并采取相应的操作。
Ivony 2006-05-08
  • 打赏
  • 举报
回复
中断和事件只是形式上一样,但根本就不是一个概念。

为什么会出现中断,是因为CPU是单线程的,在同一时间CPU只能处理一件事情,一件事情处理完了才能处理另一件事情,但是如果CPU正在处理一件事情的时候,发生了一个非常重要必须要CPU去处理的“事件”,这个时候CPU就必须“中断”手上的工作,先处理那件事情,完了再接着干活儿。

事件更多的是一个通知的概念,当一件事情发生了,与之相关的对象都能知道有这么一回事。
chenxianchu 2006-05-08
  • 打赏
  • 举报
回复
xxuu503(我爱郭芙蓉!):
你也看武林外传吧,呵呵
你的意思是事件引发时,调用API,然后调用BIOS中断服务例程(ISR),引发中断,向CPU申请资源,形成中断服务线程(IST),然后执行事件服务,是不是这样的过程?我自己乱猜的,不知道真正的过程是不是这样。请大家赐教。
xxuu503 2006-05-05
  • 打赏
  • 举报
回复
中断基于硬件的

事件基于操作系统或者框架



事件----系统API----Bios中断

是这么一个从高到低的过程
copico 2006-05-05
  • 打赏
  • 举报
回复
是的
中断就是引发事件

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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