一种中断方法、设备以及存储介质与流程
本申请涉及中断处理,特别是涉及一种中断方法、设备以及存储介质。
背景技术:
1、在现代嵌入式系统和计算机外设控制中,中断机制是实现硬件与软件异步通信的核心手段之一。随着视频采集、机器视觉、工业自动化等领域的发展,硬件设备产生的中断频率越来越高,且往往来自多个逻辑通道,如采集卡的控制通道、相机的控制通道与流通道等。这些通道可能共享同一个物理中断线,形成“单中断源多事件”的复杂场景。在此背景下,中断处理机制面临挑战。
2、高频中断下的事件丢失问题:当多个中断在极短时间内连续发生,而系统尚未完成前一次中断的处理时,后续中断可能被忽略或合并,导致事件遗漏,影响数据完整性与系统可靠性。
技术实现思路
1、本申请主要解决的技术问题是提供一种中断方法、设备以及存储介质,能够防止中断丢失。
2、为解决上述技术问题,本申请第一方面提供了一种中断方法,包括:检测到当前设备满足中断处理条件,唤醒目标中断处理线程,其中,所述中断处理条件包括所述当前设备产生中断请求;利用唤醒后的所述目标中断处理线程执行:获取与所述目标中断处理线程相关联的中断请求累计数量,以及获取所述目标中断处理线程的中断执行累计数量;响应于所述中断请求累计数量大于所述中断执行累计数量,执行待处理中断次数的中断处理,其中,所述待处理中断次数为所述中断请求累计数量和所述中断执行累计数量的差值,所述中断处理与所述目标中断处理线程相对应;响应于所述待处理中断次数的中断处理执行完成,将所述中断执行累计数量更新为所述中断请求累计数量。
3、在一实施例中,所述将所述中断执行累计数量更新为所述中断请求累计数量之后,还包括:检测是否存在结束信号;响应于存在所述结束信号,结束所述目标中断处理线程;和/或,响应于不存在所述结束信号,进入休眠状态。
4、在一实施例中,所述中断处理条件还包括所述目标中断处理线程的休眠时长达到预设的休眠阈值;所述方法还包括:响应于所述中断请求累计数量等于所述中断执行累计数量,进入休眠状态。
5、在一实施例中,所述目标中断处理线程位于中断处理线程层,所述中断处理线程层包括多个中断处理线程,所述多个中断处理线程相互独立,且与不同的中断事件相对应。
6、在一实施例中,所述检测到当前设备满足中断处理条件,唤醒目标中断处理线程,包括:利用中断服务例程层执行:检测到所述当前设备的中断请求,获取所述中断请求对应的中断标记;将所述中断标记存入中断标记区;生成中断请求处理信号,将所述中断请求处理信号存入任务队列;利用所述延迟过程调用层执行:响应于所述任务队列中存在所述中断请求处理信号,从所述中断标记区获取所述中断标记;生成与所述中断标记对应的唤醒信号,所述唤醒信号用于唤醒所述目标中断处理线程。
7、在一实施例中,所述检测到所述当前设备的中断请求,获取所述中断请求对应的中断标记,包括:获取所述当前设备请求系统分配的第一中断号数量、以及所述系统为所述当前设备分配的第二中断号数量;响应于所述第一中断号数量与所述第二中断号数量匹配,获取所述中断请求对应的中断号,以所述中断号作为所述中断标记;和/或,响应于所述第一中断号数量与所述第二中断号数量不匹配,获取所述中断请求对应的中断号;基于所述中断号,获取所述当前设备的中断标记位,以所述中断标记位作为所述中断标记。
8、在一实施例中,所述基于所述中断号,获取所述当前设备的中断标记位包括:基于所述中断号,从所述当前设备的基地址寄存器空间获取所述中断标记位。
9、在一实施例中,在所述第一中断号数量与所述第二中断号数量不匹配的情况下,所述将所述中断标记存入中断标记区之后,还包括:生成中断标记位清除指令,用于指示所述当前设备清除所述中断标记位表征的中断状态。
10、在一实施例中,所述响应于所述任务队列中存在所述中断请求处理信号,从所述中断标记区获取所述中断标记,包括:响应于所述第一中断号数量与所述第二中断号数量匹配,从所述中断标记区获取所述中断号;和/或,响应于所述第一中断号数量与所述第二中断号数量不匹配,从所述中断标记区获取所述中断标记位。
11、在一实施例中,所述生成与所述中断标记对应的唤醒信号,包括:依序获取所述中断标记中的目标位的位标记,响应于所述目标位的位标记表征存在中断状态,确定与所述目标位关联的中断处理线程作为所述目标中断处理线程,并为所述目标中断处理线程生成对应的唤醒信号;更新所述目标位的位标记,以表征不存在中断状态。
12、为解决上述技术问题,本申请第二方面提供了一种电子设备,包括耦合的存储器和处理器,所述存储器存储有程序指令,所述处理器用于执行所述程序指令以实现上述的中断方法。
13、为解决上述技术问题,本申请第三方面提供了一种计算机可读存储介质,用于存储程序指令,所述程序指令能够被执行以实现上述的中断方法。
14、上述方案,通过检测到当前设备满足中断处理条件,唤醒目标中断处理线程,唤醒后的目标中断处理线程执行:获取与目标中断处理线程相关联的中断请求累计数量,以及获取目标中断处理线程的中断执行累计数量,并响应于中断请求累计数量大于中断执行累计数量,执行待处理中断次数的中断处理,且待处理中断次数为所述中断请求累计数量和所述中断执行累计数量的差值,响应于待处理中断次数的中断处理执行完成,将中断执行累计数量更新为中断请求累计数量,实现目标中断处理线程侧的中断执行累计数量和当前设备侧的中断请求累计数量对齐,防止中断丢失。
15、进一步地,由于中断处理在目标中断处理线程处理,在存在多个中断处理线程的情况下,可以多线程并行处理,进而提高中断处理效率。
16、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本申请。
1.一种中断方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述中断执行累计数量更新为所述中断请求累计数量之后,还包括:
3.根据权利要求1所述的方法,其特征在于,所述中断处理条件还包括所述目标中断处理线程的休眠时长达到预设的休眠阈值;
4.根据权利要求1所述的方法,其特征在于,所述目标中断处理线程位于中断处理线程层,所述中断处理线程层包括多个中断处理线程,所述多个中断处理线程相互独立,且与不同的中断事件相对应。
5.根据权利要求1所述的方法,其特征在于,所述检测到当前设备满足中断处理条件,唤醒目标中断处理线程,包括:
6.根据权利要求5所述的方法,其特征在于,所述检测到所述当前设备的中断请求,获取所述中断请求对应的中断标记,包括:
7.根据权利要求6所述的方法,其特征在于,所述基于所述中断号,获取所述当前设备的中断标记位包括:
8.根据权利要求6所述的方法,其特征在于,所述响应于所述任务队列中存在所述中断请求处理信号,从所述中断标记区获取所述中断标记,包括:
9.根据权利要求5所述的方法,其特征在于,所述生成与所述中断标记对应的唤醒信号,包括:
10.一种电子设备,其特征在于,所述电子设备包括耦接的存储器和处理器,所述存储器存储有程序指令,所述处理器用于执行所述程序指令以实现如权利要求1-9任一项所述的中断方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序指令,所述程序指令能够被执行以实现如权利要求1-9任一项所述的中断方法。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com