[发明专利]核间中断执行方法、处理方法及装置、设备和存储介质有效
申请号: | 202210064672.3 | 申请日: | 2022-01-20 |
公开(公告)号: | CN114416317B | 公开(公告)日: | 2022-12-02 |
发明(设计)人: | 先凤新 | 申请(专利权)人: | 科东(广州)软件科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/30;G06F9/54 |
代理公司: | 北京华夏正合知识产权代理事务所(普通合伙) 11017 | 代理人: | 韩登营 |
地址: | 510530 广东省广州市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 中断 执行 方法 处理 装置 设备 存储 介质 | ||
本申请实施例涉及计算机技术领域,且涉及一种核间中断执行方法、处理方法及装置、设备和存储介质。其中,核间中断执行方法的具体实现方案为:从接收到的中断信号中获取硬件中断号,所述硬件中断号是预先分配的用于输入输出中断的中断号;确定与所述硬件中断号关联的用于描述中断信息的结构体;执行所述结构体中用于中断处理的成员函数,所述成员函数被预先设置为核间中断处理函数。本申请实施例将中断处理系统中原分配用于输入输出中断的中断处理资源实际用于核间中断,在不修改内核代码的情况下,即可实现核间中断功能。尤其在第三方不开源内核开发的场景下,增强了核间通信功能的开发便利性。
技术领域
本发明涉及计算机技术领域,尤其涉及核间中断执行方法、处理方法及装置、设备和存储介质。
背景技术
现有多核操作系统的非对称多处理(Asymmetric Multi-Processing,AMP)架构下,共享内存核间通信的实现方式一般分为轮询方式和中断方式。轮询方式即接收方启动一个进程,利用该进程一直查询共享内存是否有数据。在有数据的情况下,立即进行数据处理。中断方式即发送方通过核间中断信号通知接收方,然后接收方在中断处理函数里唤醒处理进程。
上述轮询方式的实时性取决于轮询频率。如果轮询频率太高,会浪费中央处理器(central processing unit,CPU)大量资源。因此,通常以中断方式实现核间通信。在中断方式中,需要通过修改操作系统内核代码实现对核间中断的处理。这种方式需要重新编译内核,在第三方不开源内核开发的场景下,无法实现该功能。
发明内容
鉴于现有技术的以上问题,本申请实施例提供一种核间中断执行方法、处理方法及装置、设备和存储介质,将中断处理系统中原分配用于输入输出中断的中断处理资源实际用于核间中断,在不修改内核代码的情况下,即可实现核间中断功能。尤其在第三方不开源内核开发的场景下,增强了核间通信功能的开发便利性。
为达到上述目的,本申请第一方面提供了一种核间中断执行方法,包括:
从接收到的中断信号中获取硬件中断号,所述硬件中断号是预先分配的用于输入输出中断的中断号;
确定与所述硬件中断号关联的用于描述中断信息的结构体;
执行所述结构体中用于中断处理的成员函数,所述成员函数被预先设置为核间中断处理函数。
作为第一方面的一种可能的实现方式,确定与所述硬件中断号关联的用于描述中断信息的结构体,包括:
将所述硬件中断号作为中断描述符表的偏移量,根据所述偏移量在所述中断描述符表中确定所述硬件中断号对应的描述符项;
获取所述描述符项对应的用于描述中断信息的结构体。
作为第一方面的一种可能的实现方式,执行所述结构体中用于中断处理的成员函数,包括:
执行所述描述符项指向的通用中断处理程序;
在所述通用中断处理程序中调用所述结构体中用于中断处理的成员函数。
本申请第二方面提供了一种核间中断处理方法,包括:
第一分配步骤,用于:在多核操作系统的中断处理系统中分配用于描述中断信息的结构体;
第二分配步骤,用于:在所述中断处理系统的中断域中分配用于输入输出中断的硬件中断号;
关联步骤,用于:将所述硬件中断号与所述结构体进行关联;
设置步骤,用于:将所述结构体中用于中断处理的成员函数设置为核间中断处理函数。
作为第二方面的一种可能的实现方式,在所述中断处理系统的中断域中分配用于输入输出中断的硬件中断号,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于科东(广州)软件科技有限公司,未经科东(广州)软件科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210064672.3/2.html,转载请声明来源钻瓜专利网。