任务处理装置制造方法及图纸

技术编号:19634809 阅读:23 留言:0更新日期:2018-12-01 15:34
本发明专利技术涉及一种任务处理装置,包括:任务控制电路,其管理多个处理器执行的多个任务的执行状态。一个或多个处理器在执行系统调用命令时,向任务控制电路发送系统调用信号。在接收到来自处理器中的第一处理器的第一系统调用信号时,任务控制电路通过以下操作来执行第一处理器的任务转换:通过参照处理器管理信息,确定多个任务中的在第一处理器中正在执行的第一任务,在处理器管理信息中,注册有处理器的处理器ID与每个处理器正在执行的任务的任务ID;主动选择待随后执行的第二任务;将第一任务的处理数据从第一处理器的处理寄存器保存至规定的存储区域;将第二任务的处理数据加载至第一处理器的处理寄存器;以及更新处理器管理信息。

Task processing device

The invention relates to a task processing device, comprising a task control circuit which manages the execution status of multiple tasks performed by multiple processors. When one or more processors execute system call commands, they send system call signals to task control circuits. When receiving the first system call signal from the first processor in the processor, the task control circuit performs the task conversion of the first processor by referring to the processor management information to determine the first task being performed in the first processor of a plurality of tasks, in the processor management information. Register the processor ID with the task ID of each processor; actively select the second task to be performed subsequently; save the processing data of the first task from the processing register of the first processor to the specified storage area; and load the processing data of the second task to the processing register of the first processor. Register; and update processor management information.

【技术实现步骤摘要】
任务处理装置本申请是申请日为2012年5月24日、申请号为201280072694.9、专利技术名称为“任务处理装置”的中国专利申请的分案申请。
本专利技术涉及一种OS(OperatingSystem,操作系统)的功能,尤其是涉及一种对应于多处理器的OS。
技术介绍
不仅是用于如个人计算机等通用设备的OS,就连如用于移动电话等的专用设备的OS中也逐渐需要高级功能。特别是能够用一个中央处理器(CPU)执行多个任务的OS(以下也将这种类型的OS称作“多任务OS”)正被配置在很多的电子设备中。多任务OS将CPU的处理时间分割为单位时间(时间段),并为多个任务顺序分配时间段。每个任务只有当从OS获得时间段时才能够使用CPU。在一个时间段中执行一个任务。由于对于用户而言时间段是非常短的时间,因此多个任务看似是同时执行的。根据这种处理方法,通过在任务A呈等待输入的状态因而暂时不需要用到CPU的处理能力时,通过将执行权交给其它任务B,能够有效利用CPU的处理能力。这里所说的执行权等同于CPU的使用权。多任务OS进行的执行权切换被称作“任务转换”。任务转换是在时间段已经届满或任务执行了规定命令时发生。当到达任务转换的执行时刻时,多任务OS将执行中的任务的上下文信息保存到TCB(TaskControlBlock:任务控制块)中。上下文信息是指任务执行时存储在CPU的寄存器中的数据或与任务执行状态有关的数据。TCB是指用于存储任务固有的信息而在存储器中预留的区域。多任务OS将执行中的任务的上下文信息保存到TCB中后,选择下一个分配执行权的任务,从TCB中读出上下文信息,并将该信息加载到CPU寄存器中。由此,各任务以时间段为单位逐步执行自身的处理。多任务OS具有能够高效地执行多个任务的优点,但是也具有新产生与上下文信息的保存/加载相对应的耗时的缺点。通常多任务OS的优点远远大于伴随任务转换的耗时。近年来,以嵌入式系统(EmbeddedSystem)为中心,正在普及严格要求在规定时间内结束处理的实时OS(以下称作“RTOS(Real-TimeOperatingSystem)”)。在这种时间要求严格的RTOS中,存在任务转换时的耗时大大影响系统整体性能的情况。本专利技术人开发出一种利用硬件逻辑来实现任务转换的任务控制装置(参照专利文献4、5)。另外,本专利技术人还成功实现了利用硬件逻辑来实现队列的管理与中断处理(参照专利文献6、7)。根据这些专利技术组,大大减少了伴随任务转换的耗时。[专利文献1]:日本特开平11-234302号公报[专利文献2]:日本特开平11-272480号公报[专利文献3]:日本特开2001-75820号公报[专利文献4]:日本特许4119945号公报[专利文献5]:日本特许4127848号公报[专利文献6]:日本特许4088335号公报[专利文献7]:日本特开2010-049700号公报[非专利文献1]森久直,坂卷佳寿美,重松宏志,“用于嵌入式控制系统的实时操作系统(OS)的硬件实现”(“組込み制御システム向けリアルタイムOSのハードウェア化(Hardwareimplementationofaread-timeoperatingsystemforembeddedcontrolsystem)”),东京都立产业技术研究所研究报告,日本,2005年8月4日(收稿),8,第55-58页。
技术实现思路
本专利技术要解决的技术问题但是,即使是多任务OS,只要CPU的数量为单个,也只是模拟同时执行多个任务。下面,将由单个CPU动作的系统称为“SP系统(Single-ProccessorSystem:单核处理系统)”,将对应于SP系统的RTOS称为“SPRTOS”。另外,正在推广真正通过多个CPU同时执行多个任务的方法。下面,将使多个CPU同时动作的系统称为“MP系统(Multi-ProcessorsSystem:多核处理系统)”。另外,将对应于MP系统的RTOS称为“MPRTOS”。在MP系统中,需要有多个CPU安全地共有数据的排他控制。根据请求,由于伴随排他控制的耗时(执行成本)变得过大,因此,处理能力没有提高至所期待的程度,甚至处理能力降至SP系统以下。本专利技术人考虑到如果也能将上述的任务控制电路的设计思想应用于MP系统,是否也能降低伴随排他控制的耗时。本专利技术是根据本专利技术人的上述着眼点而完成的,其目的在于提供一种用于更高效地在MP系统中执行和控制任务的技术,尤其是提供一种能降低伴随排他控制的耗时的技术。为解决技术问题的方法本专利技术的一个方面涉及一种任务处理装置。该任务处理装置与多个处理器连接,统一管理多个处理器执行的多个任务的执行状态。处理器在执行系统调用命令时,向任务控制电路发送系统调用信号。任务控制电路在从某个处理器A接收到系统调用信号时,通过参照处理器A的处理器ID与注册有该处理器A执行中的任务的任务ID的处理器管理信息,确定处理器A执行中的任务T1,在READY(预备)状态下主动地从待机中的任务选择作为下一个执行对象的任务T2,使任务T1的处理数据从处理器A的处理寄存器保存至规定的存储区域,使任务T2的处理数据加载至处理器A的处理寄存器而更新处理器管理信息,由此来执行处理器A的任务转换。采用本实施方式,将与作为任务执行主体的CPU等处理器不同硬件的任务控制电路作为MPRTOS来发挥功能。任务处理装置不是根据来自处理器或软件的指示来选择任务,而是通过自身内置的硬件逻辑来主动地选择任务。由于在处理器管理信息中注册有各处理器的任务的执行情况,因此任务控制电路能实时地监视各处理器的状态。此外,以上结构要素的任意组合以及通过方法、系统来表现本专利技术的实现方式,也可以作为本专利技术的有效方式专利技术效果采用本专利技术,能实现更高效地在MP系统中执行和控制任务。附图说明图1是任务的状态转移图。图2是普通RTOS的概念图。图3是执行软件RTOS的普通CPU的电路图。图4是本专利技术实施方式中的RTOS的概念图。图5是基本实施方式中的任务处理装置的电路图。图6是图5的CPU的电路图。图7是表示执行控制电路152使CPU时钟停止的构造的电路图。图8(a)是表示中断请求信号发生时各种信号之间的关系的时序图。图8(b)是表示执行系统调用时各种信号之间的关系的时序图。图9是用于说明流水线(pipeline)处理中CPU时钟停止时刻的示意图。图10是表示状态存储单元和任务切换电路之间的关系的电路图。图11是表示普通RTOS进行RUN-任务选择时所采用的任务就绪表的图。图12是执行选择电路的电路图。图13是表示普通RTOS进行信号量处理时所采用的等待信号量表(waitsemaphorelist)的图。图14是信号量选择电路的电路图。图15是任务切换电路的状态转移图。图16是图5的任务处理装置中未配置任务控制电路时的任务处理装置的电路图。图17是图5的任务处理装置中未配置保存电路时的任务处理装置的电路图。图18是虚拟队列实施方式中的任务处理装置的电路图。图19是虚拟队列实施方式中的任务控制电路的部分电路图。图20是队列控制电路的电路图。图21是表示虚拟队列和任务之间的关系的概念图。图22是与图21对应的状态寄存器的数据结构图。图23是向图21的虚拟队列顺序输入任务(E4本文档来自技高网
...

【技术保护点】
1.一种任务处理装置,其特征在于,所述任务处理装置包括:任务控制电路,所述任务控制电路管理多个处理器执行的多个任务的执行状态,其中,一个或多个所述处理器在执行系统调用命令时,向所述任务控制电路发送系统调用信号,其中,在接收到来自所述处理器中的第一处理器的第一系统调用信号时,所述任务控制电路通过以下操作来执行所述第一处理器的任务转换:通过参照处理器管理信息,确定所述任务中的在所述第一处理器中正在执行的第一任务,其中,在所述处理器管理信息中,注册有所述处理器的处理器ID与每个所述处理器正在执行的任务的任务ID;主动选择待随后执行的第二任务;将所述第一任务的处理数据从所述第一处理器的处理寄存器保存至规定的存储区域;将所述第二任务的处理数据加载至所述第一处理器的所述处理寄存器;以及更新所述处理器管理信息,其中,在执行所述第一任务期间发生所述第一处理器的中断事件,但所述第一任务的执行权没有转移时,所述任务控制电路执行响应于所述中断事件的处理,同时继续执行所述第一任务。

【技术特征摘要】
1.一种任务处理装置,其特征在于,所述任务处理装置包括:任务控制电路,所述任务控制电路管理多个处理器执行的多个任务的执行状态,其中,一个或多个所述处理器在执行系统调用命令时,向所述任务控制电路发送系统调用信号,其中,在接收到来自所述处理器中的第一处理器的第一系统调用信号时,所述任务控制电路通过以下操作来执行所述第一处理器的任务转换:通过参照处理器管理信息,确定所述任务中的在所述第一处理器中正在执行的第一任务,其中,在所述处理器管理信息中,注册有所述处理器的处理器ID与每个所述处理器正在执行的任务的任务ID;主动选择待随后执行的第二任务;将所述第一任务的处理数据从所述第一处理器的处理寄存器保存至规定的存储区域;将所述第二任务的处理数据加载至所述第一处理器的所述处理寄存器;以及更新所述处理器管理信息,其中,在执行所述第一任务期间发生所述第一处理器的中断事件,但所述第一任务的执行权没有转移时,所述任务控制电路执行响应于所述中断事件的处理,同时继续执行所述第一任务。2.一种任务处理装置,其特征在于,所述任务处理装置包括:任务控制电路,所述任务控制电路管理多个处理器执行的多个任务的执行状态,其中,一个或多个所述处理器在执行系统调用命令时,向所述任务控制电路发送系统调用信号,其中,在接收到来自所述处理器中的第一处理器的第一系统调用信号时,所述任务控制电路通过以下操作来执行所述第一处理器的任务转换:通过参照处理器管理信息,确定所述任务中的在所述第一处理器中正在执行的第一任务,其中,在所述处理器管理信息中,注册有所述处理器的处理器ID与每个所述处理器中正在执行的任务的任务ID;主动选择待随后执行的第二任务;将所述第一任务的处理数据从所述第一处理器的处理寄存器保存至规定的存储区域;将所述第二任务的处理数据加载至所述第一处理器的所述处理寄存器;以及更新所述处理器管理信息,其中,在所述第一处理器的所述任务转换结束之前由第二处理器发来第二系统调用信号时,所述任务控制电路保留所述第二系统调用信号,并且在所述第一处理器的所述任务转换之后,执行所述第二处理器的任务转换,以及其中,在执行所述第一任务期间发生所述第一处理器的中断事件,但所述第一任务的执行权没有转移时,所述任务控制电路执行响应于所述中断事件的处理,同时继续执行所述第一任务。3.根据权利要求1或2所述的任务处理装置,其特征在于,在响应于所述中断事件,将所述第一处理器中待执行的第三任务的执行状态从WAIT状态变更为READY状态时,所述任务控制电路允许继续执行所述第一任务。4.一种任务处理装置,其特征在于,所述任务处理装置包括:任务控制电路,所述任务控制电路管理多个处理器执行的多个任务的执行状态,以及多个状态寄存器,所述多个状态寄存器分别将任务与要执行所述任务的处理器的处理器ID相关联;其中,一个或多个所述处理器在执行系统调用命令时,向所述任务控制电路发送系统调用信号,其中,在接收到来自所述处理器中的第一处理器的第一系统调用信号时,所述任务控制电路通过以下操作来执行所述第一处理器的任务转换:通过参照处理器管理信息,确定所述任务中的在所述第一处理器中正在执行的第一任务,其中,在所述处理器管理信息中,注册有所述处理器的处理器ID与每个所述处理器正在执行的任务的任务ID;通过参照所述状态寄存器,从所述第一处理器待执行的任务中主动选择待随后执行的第二任务;将所述第一任务的处理数据从所述第一处理器的处理寄存器保存至规定的存储区域;将所述第二任...

【专利技术属性】
技术研发人员:丸山修孝
申请(专利权)人:瑞萨电子株式会社
类型:发明
国别省市:日本,JP

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

1