多核处理器系统、控制程序以及控制方法技术方案

技术编号:8082118 阅读:166 留言:0更新日期:2012-12-14 14:49
管理程序(112)监控处理器间通信,当检测到软件中断请求时,判断检测到的软件中断请求的软件中断处理程序是否是优先级高的处理。管理程序(112)在判断为软件中断处理程序是优先级高的处理时,(5)使从属CPU(102)产生伪硬件中断请求。从属OS(122)(6)使执行中的任务B退避到就绪队列(142)的前端,(7)优先于任务B而执行软件中断处理程序。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及控制中断处理的执行的。
技术介绍
以往,CPU (Central Processing Unit)的中断请求能够大致分为硬件中断请求和软件中断请求的2类。硬件中断请求是从CPU的周边设备对CPU产生的中断请求。具体而言,例如为,在移动电话的动画再生过程中,利用者使用触摸面板通过触摸操作进行了快进操作的情况下,从触摸面板向CPU发出的硬件中断请求。软件中断请求是由于执行中的程序而产生的中断请求。通过硬件中断请求,在该CPU上运行的OS使执行中的任务退避,立即执行该硬件中断请求的硬件中断处理程序(中断处理)。另外,还存在硬件中断处理程序调出软件中断 的情况。另外,在多核处理器系统中,在对主CPU产生硬件中断请求的情况下,主CPU使软件中断请求产生。此时存在接受软件中断请求的任务被分配给从属CPU的情況。在该任务被分配给从属CPU的情况下,使用处理器间中断通信,使从属CPU执行软件中断请求的软件中断处理程序(中断处理)。非专利文献I :高橋浩和、小田逸郎、山幡為佐著“ Linuxカーネル解読室2. 6”ソフ卜バンククリヱイテイブ株式会社出版2006年11月30日p. 62-63然而,当通过处理器间中断通信而产生软件中断请求时,软件中断请求的软件中断处理程序通过在就绪队列排队而等待执行。由于在就绪队列中按等待顺序执行处理,所以存在当在就绪队列上登记多个任务时,软件中断处理程序的执行开始变缓这样的问题点。S卩,软件中断处理程序从被调出到被开始执行为止,与硬件中断处理程序从被调出到被行开执始为止相比,存在延迟这样的问题点,并存在中断的响应较迟这样的问题点。
技术实现思路
本专利技术的目的在于,提供一种由于消除上述的以往技术的问题点,所以能够使优先级高的中断的响应时间高速化的。根据本实施方式的ー观点,提供ー种多核处理器系统,其具备使针对多核处理器中的一个内核的软件中断请求的中断处理进行等待,利用上述一个内核按等待顺序执行等待中的处理的第一执行单元;使针对上述一个内核的硬件中断请求的中断处理优先于利用上述ー个内核执行中的处理而执行的第二执行单元;请求并判断上述软件中断请求是否是特定的软件中断请求的判断単元;通过上述请求判断単元判断为上述软件中断请求是上述特定的软件中断请求的情况下,不通过上述第一执行单元使上述软件中断请求的中断处理进行等待,而通过上述第二执行单元使上述软件中断请求的中断处理优先执行的执行控制单元。根据本,起到能够使优先级高的中断的响应时间高速化这样的效果。附图说明图I是表示动画再生过程中的ー个例子的说明图。图2是表示产生了硬件中断请求的例子的说明图。图3是表示立即执行查找处理的例子的说明图。图4是表示多核处理器系统的硬件的框图。图5是表不实施例I的用例表的一个例子的说明图。图6是表示多核处理器系统的框图。 图7是表示实施例I的说明图。图8是表示实施例I的多核处理器系统的控制处理顺序的流程图(其I)。图9是表示实施例I的多核处理器系统的控制处理顺序的流程图(其2)。图10是表示实施例2的用例表的一个例子的说明图。图11是表示在实施例2中可中断的任务为执行状态的说明图。图12是表示在实施例2中不可中断的任务为执行状态的说明图(其I)。图13是表示在实施例2中不可中断的任务为执行状态的说明图(其2)。图14是表示实施例2的多核处理器系统的控制处理顺序的流程图。具体实施例方式以下參照附图,详细说明的优选的实施方式。其中,在本实施方式的多核处理器系统中,多核处理器是指安装有多个内核的处理器。只要是安装了多个内核的处理器即可,可以是安装了多个内核的単一处理器,也可以是并联单核处理器的处理器组。其中,在本实施方式中,为了简化说明,以并联单核处理器的处理器组为例进行说明。图I是表示动画再生过程中的一个例子的说明图。在图I中,例举了多核处理器系统100为手机的情况。在主CPUlOl中播放器处理为执行中,GUI(Graphic User Interface 图形用户接ロ)处理被登记在就绪队列141中。另ー方面,在从属CPU102中动画解码处理为执行中。在此,就绪队列141 (或者就绪队列142)如公知那样是指用于管理能够执行状态的任务的数据结构。通过提取登记在就绪队列141 (或者就绪队列142)中的任务的上下文信息,能够执行任务。上下文信息是表示将程序的内部状态、程序配置在存储器上的何处的信息。图2是表示产生了硬件中断请求的例子的说明图。在图2中,由于利用者对动画进行快进,所以从I / O (Input / Output)设备103 (在图2中为液晶面板)产生硬件中断请求。当主CPUlOl检测到该硬件中断请求时,主0S121使播放器处理退避到就绪队列142,而执行作为硬件中断处理程序的触摸面板驱动程序。接着,若要使主0S121从触摸面板驱动程序,基于软件中断请求来执行查找处理,则主0S121确定作为中断对象的动画解码处理被分配给了哪个CPU。在此,确定为动画解码处理被分配给从属CPU102。由于主0S121将动画解码处理分配给从属CPU102,所以主CPUlOl通过处理器间中断通信来将调出查找处理的软件中断请求向从属CPU102通知。管理程序112监控处理器间通信,检测该软件中断请求。管理程序112若检测到该软件中断请求,则判断该软件中断请求的软件中断处理程序、即查找处理是否是优先级高的处理。此外,管理程序112基于查找处理的优先级,判断是否是特定的软件中断请求。在此,管理程序112判断为查找处理是优先级高的处理。然后管理程序112使从属CPU102产生伪硬件中断请求。具体地说,将与预定的查找处理对应的寄存器值设定到从属CPU102内的与硬件中断相关的寄存器中。图3表示立即执行查找处理的例子的说明图。若在从属CPU102内的与硬件中断相关的寄存器中设定了值,从属CPU102则确定与该设定的值对应的地址。然后,在从属CPU102上运行的从属0S122使执行中的动画解码处理退避在就绪队列142的前端,通过跳 转到该确定的地址来执行查找处理。由此,能够立即执行查找处理,能够提高与优先级高的处理相关的响应性。此外,如果查找处理是优先级低的处理,则与以往同样,从属0S122将该查找处理积存在就绪队列142中使其进行等待。(多核处理器系统100的硬件)图4是表示多核处理器系统100的硬件的框图。在图4中,多核处理器系统100具有主CPU101、从属CPU102、共享存储器104、I / O设备103。另外,各部通过总线105连接。虽然在图I中例举了多核处理器系统100为手机,但不局限于此,还可以例举多核处理器系统100为手机、电子书阅读设备等便携式信息終端、个人计算机。主CPUlOl和从属CPU102分别具有内核、寄存器和高速缓冲存储器。在各CPU的寄存器中具有与硬件中断相关的寄存器(以下,为“硬件中断寄存器”)。若硬件中断寄存器被设定值,则基于该设定的值来确定与中断处理相关的地址,CPU能够通过跳转到该地址而立即执行该中断处理。各CPU中具有中断向量表,在该中断向量表中记述有寄存器的值和中断处理的地址的对应关系。在硬件中断请求中,在硬件中断寄存器中设定与该硬件中断请求对应的值。各CPU若在该CPU所具有的硬件中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:山内宏真山下浩一郎铃木贵久栗原康志
申请(专利权)人:富士通株式会社
类型:
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1