[发明专利]一种多核系统的核间交互方法有效
申请号: | 201611154079.9 | 申请日: | 2016-12-14 |
公开(公告)号: | CN108228524B | 公开(公告)日: | 2021-07-16 |
发明(设计)人: | 虞保忠;李运喜;徐晓光;时磊;何翔;郝继锋 | 申请(专利权)人: | 中国航空工业集团公司西安航空计算技术研究所 |
主分类号: | G06F15/163 | 分类号: | G06F15/163;G06F9/48 |
代理公司: | 中国航空专利中心 11008 | 代理人: | 杜永保 |
地址: | 710000 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多核 系统 交互 方法 | ||
本发明属于计算机系统软件专业技术领域,涉及多核操作系统的核间交互方法。本发明为每个处理器核提供专用交互通道,其他处理器核将数据投递到专用通道中与该处理器核进行交互,而该处理器核摘取通道中的数据并处理,完成交互。该方法具有唯一性、实时性和高并行特点特性。针对目前的共享内存核间交互技术,本发明提高了核间交互并行性和实时性。通过一个空闲链表管理所有的空闲处理器核间交互数据块;源处理器核在发起处理器核间交互时从空闲链表中获取一个核间交互数据块;源处理器核根据核间交互需要设置交互数据并将核间交互数据块投递到目的处理器核对应的专用交互通道中。目的处理器核从专用交互通道中摘取核间交互数据并处理,处理结束后释放核间交互数据块。
技术领域
本发明属于计算机系统软件专业技术领域,涉及多核操作系统的核间交互方法。
背景技术
目前多核操作系统的核间交互技术通常是通过共享内存方式实现。系统维护一段共享内存空间,该空间属于临界资源,系统采用自旋锁保护该临界资源。当一个处理器核试图与其他某个处理器核或某些处理器核交互时,称它为源处理器核,而被交互处理器核称为目的处理器核。源处理器核必须先获取自旋锁,然后将数据投递到共享内存中,之后再通过中断控制器或处理器发送中断给交互处理器核,并等待目的处理器核的处理结果;目的处理器核响应中断后,在中断处理程序中提取共享内存中的数据并处理,处理完成后再将结果反馈给源处理器核;源处理器核接收到反馈结果后释放自旋锁,这样就完成一次处理器核间交互。当前这种多个处理器核共享一段空间的交互方法存在以下缺点,首先是并行性问题,由于该共享空间属于临界资源,在处理核核间交互时,源处理器核需要获取自旋锁,并且等待目的处理器核处理完成后才能释放自旋锁,因此同一时刻只能存在一个处理器核间交互;其次是实时性问题,目的处理器核在中断中处理交互数据,当处理数据时间较长时,延长了系统中断处理时间。
发明内容
本发明的目的:
为了解决目前多核操作系统的处理器核交互技术的低并行和低实时性问题,本发明提出了一种多核系统的核间交互方法。该方法通过为每个处理器核建立专用通道,核间交互通过该专用通道传递数据,并且在中断处理例程外进行数据处理,提高处理核间交互的并行性和实时性。
本发明的技术方案:
本发明的技术方案包括定义处理器核间交互数据结构、定义处理器核间交互通道结构、处理器核间交互通道维护、处理器核间交互过程。
处理器核间交互数据结构是核间交互的基本描述结构,该数据结构包含一个双向链表结构、源处理器核号、目的处理器核号、数据处理函数指针、被处理数据及大小、处理器核间交互同步标识、处理器核间交互完成标识。双向链表结构用于将多个处理器核间交互链接在一块,形成一个链表;源处理器核号用于标识由哪个处理器核发起处理器核间交互;目的处理器核号用于标识由哪个处理器核处理该核间交互;数据处理函数指针是由源处理器核设置的数据处理函数,用于处理处理器核间交互数据;被处理数据及大小指定的核间交互需要处理的数据;处理器核间交互同步标识用于标识目的处理器核反馈处理结果的时机,包括处理前、处理中、处理后及不需要反馈;处理器核间交互完成标识用于标识目的处理器核是否完成处理。
处理器核间交互通道结构是一个双向链表,它将处理器核间交互结构链接成一个双向链表,并通过多核操作系统提供的自旋锁结构保护该链表。
处理器核间交互通道维护包括为每个处理器核建立专用通道,源处理器核在发起处理器核间交互时,将核间交互数据投递到目的处理器核所属的专用通道;目的处理器核在处理交互数据时,只处理属于自己的那个专用通道中的交互数据。
处理器核间交互过程是源处理器核组织核间交互数据、将核间交互数据投递到目的处理器核的交互通道中、向目的处理器核触发核间中断、等待目的处理器核反馈、目的处理器核响应中断、在中断退出时处理专用通道中的交互数据并反馈给源处理器核。
本发明的具体实施方法如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空工业集团公司西安航空计算技术研究所,未经中国航空工业集团公司西安航空计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611154079.9/2.html,转载请声明来源钻瓜专利网。