CN104169880B - 检测装置以及通知方法 - Google Patents
检测装置以及通知方法 Download PDFInfo
- Publication number
- CN104169880B CN104169880B CN201280071526.8A CN201280071526A CN104169880B CN 104169880 B CN104169880 B CN 104169880B CN 201280071526 A CN201280071526 A CN 201280071526A CN 104169880 B CN104169880 B CN 104169880B
- Authority
- CN
- China
- Prior art keywords
- processing
- driver
- sensor
- time
- execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
协同处理器(101-1)在每次各驱动程序的执行开始时将驱动程序的执行开始时刻储存至局部存储器(102-1)。协同处理器(101-1)在执行驱动程序(A)中进行CPU调用处理的情况下,对每个驱动程序(B)、驱动程序(C)计算执行开始时刻与当前时刻的差值。若以驱动程序(C)为例,则协同处理器(101-1)在针对驱动程序(C)计算出的差值上加上驱动程序(A)的CPU调用处理所需的处理时间(t2a)和驱动程序B的通常处理所需的处理时间(t1b)。协同处理器(101-1)判断针对驱动程序(C)的各个相加结果是否遵守各自的限制时间。判断为针对驱动程序(C)的相加结果不能够遵守限制时间,协同处理器(101-1)将驱动程序(C)的执行委托通知给其他协同处理器(101-2)。
Description
技术领域
本发明涉及检测装置、通知方法、以及通知程序。
背景技术
以往,公知有例如在多核处理器系统中,特定的处理器为了分散各处理器的负载,而预测各处理器的负载的技术(例如,参照下述专利文献1。)。
另外,以往,公知有例如在多核处理器系统中,根据处理器的运转率来进行负载分散的技术(例如,参照下述专利文献2。)。
另外,以往,公知有例如在多核处理器系统中,使用设备驱动程序的所有的处理器都安装该设备驱动程序,通过专用控制来决定哪个处理器执行该设备驱动程序的技术(例如,参照下述专利文献3。)。由此,各处理器通过始终等待驱动程序的执行请求,能够实现响应性能的提高。
专利文献1:日本特开2011-141782号公报
专利文献2:日本特开2002-49405号公报
专利文献3:日本特开2008-140191号公报
然而,虽然各处理器通过进行专用控制、负载分散,能够使驱动程序的执行持续,但在各处理器中存在由专用控制、负载分散的处理所引起的负载量增大的问题点。
发明内容
本发明的目的在于,为了消除上述的现有技术的问题点,而提供不进行专用控制、负载分散也能够使驱动程序的执行持续的检测装置、通知方法、以及通知程序。
为了解决上述的课题、实现目的,提出具有如下特征的检测装置、通知方法、以及通知程序,根据本发明的一个方面,多个处理器中依次反复执行相应于多个传感器中的各个传感器的处理的特定的处理器,在相应于上述各个传感器的处理的执行切换时,对存储与相应于上述各个传感器的处理对应的第一处理所需的处理时间、与相应于上述各个传感器的处理对应的第二处理所需的处理时间、以及与相应于上述各个传感器的处理对应的限制时间的存储部储存与相应于上述各个传感器的处理对应的执行开始时刻,在相应于上述各个传感器的处理中的执行中的处理进行上述第二处理的情况下,基于相应于上述各个传感器的处理的执行顺序,对与相应于上述各个传感器的处理中除去了上述执行中的处理的剩余处理对应的存储于上述存储部的执行开始时刻与上述执行中的处理进行上述第二处理的开始时刻的差值加上上述执行中的处理的上述第二处理所需的处理时间和上述剩余处理的上述第一处理所需的处理时间,判断与上述剩余处理对应地计算出的时间是否遵守存储于上述存储部的与上述剩余处理对应的限制时间,将判断为不遵守上述限制时间的处理的执行委托通知给上述多个处理器中的上述特定的处理器以外的其他处理器。
根据本发明的一个方面,起到不进行专用控制、负载分散也能够使驱动程序的执行持续的效果。
附图说明
图1是表示检测装置的硬件结构例的框图。
图2是表示轮询型的传感器和中断型的传感器的各限制例的说明图。
图3是表示协同处理器101的一动作例的说明图。
图4是表示接受了协同处理器101的执行委托的情况下的动作例的说明图。
图5是表示向备份协同处理器101通知执行指示的例子的说明图。
图6是表示备份协同处理器101的执行委托例的说明图。
图7是表示驱动程序的处理时间、限制时间、以及执行开始时刻的存储例的说明图。
图8是表示传感器的功能例的说明图。
图9是表示各调度程序的功能例的框图。
图10是表示调度程序121-i所进行的处理顺序的流程图(其1)。
图11是表示调度程序121-i所进行的处理顺序的流程图(其2)。
图12是表示调度程序121-i所进行的受理执行委托或者执行指示时的处理顺序的流程图。
图13是表示受理调度程序121-j所进行的执行委托时的处理顺序的流程图。
具体实施方式
以下参照附图,对本发明的检测装置、通知方法、以及通知程序的实施方式进行详细说明。这里,检测装置是具有多个传感器、以及执行与利用传感器检测出的数据相应的处理的协同处理器的传感器体系结构。检测装置利用协同处理器来检测由传感器检测出的检测数据的异常,或对检测数据进行解析。通知程序是由协同处理器来执行的调度程序。
(传感器体系结构的硬件结构例)
图1是表示检测装置的硬件结构例的框图。传感器体系结构100具有多个协同处理器101-1~101-n、多个备份协同处理器101-n+1~101-m、多个局部存储器102、多个传感器(传感器A、传感器B、传感器C…)、以及电源供给电路103。“n≥1”、“m≥n+1”。并且,传感器体系结构100具有CPU(Central Processing Unit:中央处理器)105、以及主存储器107。多个传感器、多个协同处理器101、以及多个局部存储器102通过传感器总线104连接。
这里,对协同处理器101、协同处理器101的个数以及备份协同处理器101进行说明。在本实施方式中,传感器体系结构100所具有的协 同处理器101和备份协同处理器101是指用于执行传感器的驱动程序的处理器,不执行其他的应用程序的处理。在传感器的驱动程序中只要遵守传感器的限制也可以忽略响应性能。所谓的传感器的限制是指,针对从产生传感器的驱动程序执行请求开始到实际执行驱动程序为止的时间的限制。
因此,多个协同处理器101-1~101-n不进行专用控制、负载分散,而进行驱动程序的执行。对各协同处理器101分配基于作为各传感器的驱动程序的第一处理的通常处理的处理时间而能够处理的驱动程序。而且,若执行中的驱动程序进行作为第二处理的CPU调用处理,则在不能遵守驱动程序的限制时间的情况下,协同处理器101向其他的协同处理器101通知不能够遵守限制时间的驱动程序的执行委托。具体而言,例如,协同处理器101通过IPC(Inter-Processor Communication:处理器间通信)来进行针对其他的协同处理器101的执行委托的通知。对于作为第一处理的通常处理和作为第二处理的CPU调用处理后述。由此,各协同处理器101能够减少专用控制、负载分散的负载量。
为了在最大负载的情况下遵守所有的传感器的限制,要准备充足数量的协同处理器101以及备份处理器101。所谓“最大负载”是指各传感器的驱动程序全部执行了CPU调用处理的情况。因此,在最大负载时以外,产生多余协同处理器101而消耗不必要的电力。因此,例如,由传感器体系结构100的设计者假定最小负载的情况而以遵守所有的传感器的限制的最少的协同处理器101数量均衡地配置运用开始时的驱动程序。所谓的“负载最少”是指,在所有的传感器的驱动程序的执行时,进行通常处理的情况。
这里,以假定全部的协同处理器101的个数是三个(m=3),传感器是八个(传感器A~传感器H),各传感器的驱动程序的负载最少的情况为例。如果以一个协同处理器101能够执行所有的传感器的驱动程序,则将所有的驱动程序分配给一个协同处理器101。然后,剩余的二个协同处理器101成为备份协同处理器101,关闭电源成为停止状态。在相同的条件下,如果以两个协同处理器101能够执行所有的传感器的驱动程序,则对两个协同处理器101各分配四个驱动程序。剩余的一个 协同处理器101作为备份协同处理器101而关闭电源成为停止状态。由此,传感器体系结构100能够减少电力消耗。接下来,例如,仅以起动中的协同处理器101中不能够遵守所有的驱动程序的限制的情况下,起动备份协同处理器101。
各协同处理器101执行调度程序121、和被分配的传感器的驱动程序。调度程序121控制被分配到协同处理器101的驱动程序的执行。调度程序121具有调度循环131,通过向调度循环131登录驱动程序的识别信息,驱动程序就被分配给协同处理器101。协同处理器101执行的调度程序121和备份协同处理器101执行的调度程序121不同,对其各自的详细内容后述。如上所述,备份协同处理器101在传感器体系结构100的起动时不从电源供给电路103供给电力,而成为停止状态。
电源供给电路103向各部供给电力。这里,例如,电源供给电路103能够根据来自协同处理器101或者备份协同处理器101的指示切断针对各部的电力的供给,或开始电力的供给。
多个传感器(传感器A、传感器B、传感器C…)根据各自的功能来检测数据。例如,作为传感器,列举出检测方位的方位计、检测体温或气温的温度传感器、检测湿度的湿度传感器、测量心率的心率计。
传感器的驱动程序是关于与传感器相应的处理的软件。例如,若是温度传感器,则传感器的驱动程序可以判断通过温度传感器检测出的温度是否是基准值以下。传感器体系结构100的设计者也可以预先分配传感器的驱动程序。例如,也可以在传感器体系结构100的电源接通时,各协同处理器101启动决定出的驱动程序。
各传感器的驱动程序具有通常处理和CPU调用处理。如上所述,通常处理是第一处理,CPU调用处理是第二处理。通常处理具有获取处理、解析处理、以及检测处理。这里,将各传感器的驱动程序所进行的CPU调用处理、CPU所进行的特定的处理称为应用处理。
获取处理从传感器的缓冲区获取由传感器检测出的数据。解析处理对获取到的数据进行解析。检测处理检测获取到的数据的变化。CPU调用处理在检测出数据的变化的情况下,进行与检测出的变化相应的处 理。若CPU105被CPU调用处理调用,则进行特定的处理。CPU调用处理也可以等待特定的处理的结束再结束。例如,若举出测量心率的传感器为例,则解析处理例如求出对象者的当前的心率。接下来,检测处理例如检测心率变化到阈值以上。而且,CPU调用处理在检测出心率是阈值以上的情况下,对CPU105通知心率是阈值以上。并且,CPU105例如也可以通知给医院的服务器,也可以进行发出警报的处理。
协同处理器101-1~协同处理器101-n和备份协同处理器101-(n+1)~备份协同处理器101-m分别具有局部存储器102-1~局部存储器102-m。各协同处理器101将局部存储器102作为工作区域来使用。
作为局部存储器102,例如,列举出RAM(Randam Access Memory:随机存储器)、ROM(Read Only Memory:只读存储器)。并且,局部存储器102存储被分配的驱动程序的执行代码、被分配的驱动程序的各自的通常处理所需的处理时间、CPU调用处理所需的处理时间、驱动程序的限制时间、以及驱动程序的执行开始时刻。关于各处理时间、限制时间、以及执行开始时刻的存储例,使用附图后述。所谓的执行代码,是汇编语言等协同处理器101、CPU105能够识别的信息。
CPU105、主存储器107、以及传感器总线104通过主总线108连接。并不限于此,例如,CPU105以及主存储器107、传感器总线104也可以经由I/F(InterFace:接口)连接。I/F通过通信线路与LAN(Local Area Network:局域网)、WAN(Wide Area Network:广域网)、互联网等网络连接,经由该网络与其他的装置连接。而且,I/F管理网络和内部的接口,控制来自外部装置的数据的输入输出。作为I/F,例如能够采用调制解调器、LAN适配器等。
CPU105在多个协同处理器101进行了CPU调用处理的情况下,执行基于该CPU调用处理的处理。例如,执行与温度传感器相应的处理的协同处理器101,在判断出温度是基准值以上的情况下,执行将是异常温度的情况通知给CPU105的处理。而且,CPU105在被协同处理器101通知了是异常温度的情况下,对利用者通知是异常温度的情况。例如,作为针对利用者的通知方法,可以是在显示器上显示错误,或蜂鸣器鸣响。或者,例如,在CPU105被协同处理器101通知了是异常温度 的情况下,也可以变更空调设备的温度设定。
主存储器107被作为CPU105的工作区域来使用。作为主存储器107,例如列举RAM。存储器106存储有CPU105所执行的OS(Operating System:操作系统)、应用程序。作为存储器106,例如,列举ROM、硬盘。存储器106例如也可以存储与传感器的驱动程序相关的程序。在多个协同处理器101的起动时,各协同处理器101从存储器106读出与被分配的驱动程序相关的程序即可。
这里,例如,各传感器能够大致分为以一定的间隔进行传感检测来将数据写入缓冲区的轮询型的传感器、和以规定的事件进行传感检测来将数据写入缓冲区的中断型的传感器这两种。使用图2对轮询型的传感器和中断型的传感器的各自的限制例进行说明。
图2是表示轮询型的传感器和中断型的传感器的各限制例的说明图。作为轮询型的传感器,例如,举出温度传感器。如图2的上侧所示,对于轮询型的传感器,协同处理器101以一定的间隔进行从传感器的缓冲区获取由传感器检测出的数据。一定的间隔根据传感器的处理能力而不同,所以按照每个传感器来确定。因此,在轮询型的传感器中,该一定的间隔为限制时间。
中断型的传感器例如列举按钮、鼠标。如图2的下侧所示,若中断型的传感器检测出事件的产生,则将中断信号输出给协同处理器101。然后,协同处理器101取出从中断信号的输出开始在规定时间以内存储在传感器的缓冲区的数据。所谓的规定时间根据传感器的功能而不同,所以按照每个传感器来确定。因此,在中断型的传感器中,该规定时间为限制。
以下,分配给协同处理器101的驱动程序是轮询型的传感器的驱动程序。对于中断型的传感器的驱动程序,例如,对协同处理器101固定分配,并省略使用了附图的详细的例子。
(协同处理器101的动作例)
各协同处理器101在因进行CPU调用处理,而不能够遵守驱动程序的限制时间的情况下,向其他的协同处理器101委托不能够遵守限制 的驱动程序的执行。这里,在图3~6中以n=2、m=3的情况为例进行说明。
图3是表示协同处理器101的一动作例的说明图。向协同处理器1011-1分配分别与传感器A、传感器B、传感器C对应的驱动程序A、驱动程序B、驱动程序C。将被分配的驱动程序A、驱动程序B、驱动程序C登录到调度循环131-1,通过调度程序121-1依次反复执行。向协同处理器101-2分配分别与传感器D、传感器E对应的驱动程序D、驱动程序E。将被分配的驱动程序D、驱动程序E登录到调度循环131-2,通过调度程序121-2依次反复执行。
在传感器体系结构100中,在执行传感器的驱动程序的所有的协同处理器101安装该驱动程序的情况下,若多个协同处理器101同时执行某个驱动程序,则存在通过该驱动程序的执行所得到的数据被破坏的可能性。因此,必须进行专用控制。在本实施方式中,协同处理器101-1以及协同处理器101-2安装被分配的传感器的驱动程序,不安装被分配给其他的协同处理器101的驱动程序。因此,也可以不进行专用控制。
各调度程序121-1以及调度程序121-2在切换驱动程序的执行时,获取切换时的时刻,对驱动程序的识别信息和该当前时刻建立关联并储存至各自的局部存储器102。时刻例如从各协同处理器101所具有的计时器中获取。
在图3中,调度程序121-1在执行驱动程序A时判断是否满足执行CPU调用处理的条件。在图3的例子中,“A'”表示驱动程序A的CPU调用处理。例如,如果是温度传感器的驱动程序,则若通过温度传感器检测出的温度为阈值以上或者阈值以下,则执行CPU调用处理。因此,调度程序121-1判断为温度传感器的驱动程序满足了执行CPU调用处理的条件。在满足了执行CPU调用处理的条件的情况下,调度程序121-1从局部存储器102-1获取驱动程序A的CPU调用处理所需的处理时间,驱动程序B、驱动程序C的各自的限制时间,驱动程序B、驱动程序C的通常处理所需的处理时间。并且,调度程序121-1从局部存储器102-1获取驱动程序B、驱动程序C的各自的执行开始时刻。并且,调度程序121-1获取当前时刻tc。当前时刻tc例如从各协同处理器101所具有的计时器中获取。
而且,调度程序121-1在执行中的驱动程序进行CPU调用处理的情况下,按照每个从分配的驱动程序中除去了执行中的驱动程序的剩余的驱动程序,计算存储在局部存储器102的执行开始时刻与当前时刻tc差值。执行中的驱动程序是驱动程序A,剩余的驱动程序是驱动程序B和驱动程序C。调度程序121-1对按照每个剩余的驱动程序计算出的差值加上执行中的处理的CPU调用处理所需的处理时间、和基于驱动程序的执行顺序在剩余的驱动程序的通常处理所需的处理时间。
具体而言,例如,调度程序121-1计算驱动程序B的执行开始时刻tsb和当前时刻tc的差值。这里,驱动程序A、驱动程序B、以及驱动程序C的执行顺序由调度循环131-1的登录顺序来决定。在图3的例子中,驱动程序B接着驱动程序A执行,所以调度程序121-1在计算出的差值上加上驱动程序A的CPU调用处理所需的处理时间t2a。由此,计算从存储在局部存储器102的驱动程序B的执行开始时刻tsb到下一次执行驱动程序B所需的时间teb。
具体而言,例如,调度程序121-1计算驱动程序C的执行开始时刻tsc与当前时刻tc的差值。这里,决定出驱动程序A、驱动程序B以及驱动程序C的执行顺序。在图3的例子中,驱动程序B接着驱动程序A执行,驱动程序C接着驱动程序B执行。因此,调度程序121-1在计算出的差上加上驱动程序A的CPU调用处理所需的处理时间t2a和驱动程序B的通常处理所需的处理时间t1b。由此,计算从存储在局部存储器102的驱动程序C的执行开始时刻tsc到下一次执行驱动程序C所需的时间tec。
接下来,调度程序121-1判断与剩余的驱动程序对应地计算出的时间是否遵守存储在局部存储器102的剩余的驱动程序的限制时间。具体而言,例如,调度程序121-1判断时间teb是否是驱动程序B的限制时间tpb以下。在时间teb是驱动程序B的限制时间tpb以下的情况下,调度程序121-1判断为时间teb遵守驱动程序B的限制时间tpb。具体而言,例如,调度程序121-1判断时间tec是否是驱动程序C的限制时间tpc以下。在时间tec是驱动程序C的限制时间tpc以下的情况下,调度程序121-1判断为时间tec遵守驱动程序C的限制时间tpc。这里,例如,判断为时间tec不遵守驱动程序C的限制时间tpc。
而且,调度程序121-1向起动中的其他的协同处理器101通知驱动程序C的执行委托。具体而言,例如,调度程序121-1通过IPC来进行针对其他的协同处理器101的执行委托的通知。这里,起动中的其他的协同处理器101是协同处理器101-2。例如,执行委托具有驱动程序C的执行开始时刻tsc、驱动程序C的限制时间tpc、以及驱动程序C的通常处理所需的处理时间t1c。
由此,传感器体系结构即使不进行专用控制、分散处理,也能够持续地执行传感器的驱动程序。
图4是表示受理了协同处理器101的执行委托的情况下的动作例的说明图。调度程序121-2从调度程序121-1受理驱动程序C的执行委托。
接下来,调度程序121-2计算成为执行委托的对象的驱动程序的通常处理所需的处理时间、和被分配的所有的驱动程序的通常处理所需的处理时间的合计值。具体而言,例如,合计值total是驱动程序D的通常处理所需的处理时间t1d、驱动程序E的通常处理所需的处理时间t1e、以及驱动程序C的通常处理所需的处理时间t1c的相加结果。
而且,调度程序121-2判断合计值total是否遵守成为执行委托的对象的驱动程序的限制时间以及被分配的各驱动程序的限制时间。具体而言,例如,调度程序121-2判断合计值total是否是成为执行委托的对象的驱动程序C的限制时间tpc以及被分配的驱动程序D、驱动程序E的各自的限制时间tpd、tpe以下。
在合计值total是限制时间tpc、tpd、tpe以下的情况下,调度程序121-2判断为合计值total遵守限制时间tpc以及限制时间tpd、tpe。另一方面,在限制时间tpc、限制时间tpd、以及限制时间tpe中任意一个限制时间都比合计值total小的情况下,调度程序121-2判断为不遵守限制时间tpc、tpd、tpe。
在判断为不能够遵守任意一个驱动程序的限制时间的情况下,调度程序121-2向作为执行委托的通知源的调度程序121-1通知不能执行。调度程序121-2在判断为能够遵守所有的驱动程序的限制时间的 情况下,向作为执行委托的通知源的调度程序121-1通知接受执行。具体而言,例如,调度程序121-2利用IPC来进行针对执行委托的通知源的不能执行或者接受执行的通知。
由此,传感器体系结构100能够不进行专用控制、负载分散而遵守所有的传感器的驱动程序的限制时间。因此,传感器体系结构100能够在运用中减少专用控制以及负载分散的处理的负载量。
另外,在图4的例子中,通过各驱动程序的通常处理所需的处理时间的合计值来判断是否遵守各驱动程序的限制时间。并不限于此,调度程序121-2也可以基于各驱动程序所储存的执行开始时刻tsd、tse、tsc来对每个驱动程序详细地预测下一次执行开始时刻。而且,也可以判断按照每个驱动程序储存的执行开始时刻和预测出的执行开始时刻的差值是否遵守限制时间。由此,传感器体系结构100能够提高是否能够遵守限制时间的判断的精度。
(备份协同处理器101)
如上所述,对于传感器体系结构100的设计者没有分配驱动程序的协同处理器101,将其作为备份协同处理器101而停止。由此,传感器体系结构100能够减少电力消耗。而且,在仅由起动中的协同处理器101不能够遵守所有的驱动程序的限制时间的情况下,起动备份协同处理器101,而向备份协同处理器101分配驱动程序。
图5是表示向备份协同处理器101通知执行指示的例子的说明图。调度程序121-1在从调度程序121-2受理了不能执行的情况下,使备份协同处理器101-3起动。具体而言,例如,调度程序121-1向电源供给电路103通知使其向备份协同处理器101-3供给电源的指示。而且,例如,若电源供给电路103受理该指示,则向备份协同处理器101-3供给电源。由此,备份协同处理器101-3起动。调度程序121-1向备份协同处理器101-3通知驱动程序C的执行指示。
例如,驱动程序C的执行指示具有驱动程序C的执行代码、驱动程序C的执行开始时刻tsc、驱动程序C的通常处理所需的处理时间t1c、驱动程序C的CPU调用处理所需的处理时间t2c、以及驱动程序C的 限制时间tpc。若起动后的备份协同处理器101-3所执行的调度程序121-3受理驱动程序C的执行指示,则执行驱动程序C。
因此,传感器体系结构100能够持续地执行传感器的驱动程序,能够提高可靠性。
图6是表示备份协同处理器101的执行委托例的说明图。调度程序121将按照一定时间分配的驱动程序C的执行委托通知给协同处理器101-1、协同处理器101-2。
如图3所示,判断受理了来自调度程序121-3的执行委托的调度程序121-1和调度程序121-2是否能够遵守被分配的驱动程序和受理了执行委托的驱动程序的各自的限制时间。在调度程序121-1或者调度程序121-2能够遵守被分配的驱动程序和受理了执行委托的驱动程序的各自的限制时间的情况下,向作为执行委托的通知源的备份协同处理器101-3通知接受执行。另一方面,在调度程序121-1或者调度程序121-2连被分配的驱动程序和受理了执行委托的驱动程序的任意一个的限制时间都不能够遵守的情况下,向作为执行委托的通知源的备份协同处理器101-3通知不能执行。例如,调度程序121-1或者调度程序121-2通过IPC来进行不能执行或者接受执行的通知。
若调度程序121-3从某一个协同处理器101受理了接受执行,则将驱动程序C的执行指示通知给作为接受执行的通知源的协同处理器101。调度程序121-3通过IPC来进行驱动程序C的执行指示的通知。而且,调度程序121-3使备份协同处理器101-3停止。
由此,传感器体系结构100在协同处理器101没有余力的情况下,为了遵守传感器的驱动程序的限制时间使备份协同处理器101动作。而且,若协同处理器101有余力则传感器体系结构100能够使备份协同处理器101停止。由此,传感器体系结构100能够使各驱动程序的执行持续地动作。因此,传感器体系结构100能够提高可靠性,并减少电力消耗。
(处理时间、限制时间、执行开始时刻的存储例)
接下来,对按照每个驱动程序存储的通常处理所需的处理时间、 CPU调用处理所需的限制时间、以及执行开始时刻的存储例进行说明。
图7是表示驱动程序的处理时间、限制时间、以及执行开始时刻的存储例的说明图。驱动程序表700按照每个协同处理器101存储在局部存储器102,存储有与被分配的驱动程序相关的驱动程序信息。在图7中,驱动程序表700-1记载有关于被分配到协同处理器101-1的驱动程序A、驱动程序B、驱动程序C的信息。驱动程序表700-2记载有关于被分配到协同处理器101-2的驱动程序D、驱动程序E的信息。
各驱动程序表700具有驱动程序ID、通常处理的处理时间、CPU调用处理的处理时间、限制时间、以及执行开始时刻的字段。驱动程序ID是成为多个协同处理器101的执行对象的驱动程序的标识符。在本实施方式中,使驱动程序的标识符和传感器的标识符相同。第一处理时间是各驱动程序的通常处理所需的处理时间。第二处理时间是各驱动程序的CPU调用处理所需的处理时间。
如上所述,限制时间是从按照每个传感器来确定的传感器的缓冲区中获取由传感器检测出的数据的一定的间隔。执行开始时刻是在驱动程序的执行开始时存储的时刻。执行开始时刻的字段每次被分配目的地的协同处理器101执行时被更新。
在驱动程序表700-1中,通过对各字段设定信息,来将驱动程序信息(例如,701-1、701-2、701-3)作为记录来存储。在驱动程序表700-2中,通过对各字段设定信息,来将驱动程序信息(例如,702-1、702-2)作为记录来存储。
对驱动程序表700赋予的“-编号”与局部存储器102的“-编号”相同,将各驱动程序表700存储至被赋予了相同编号的局部存储器102。
各调度程序121在对其他的协同处理器101进行执行指示的情况下,对成为执行指示的对象的驱动程序的驱动程序信息赋予执行指示并通知。而且,各协同处理器101在执行指示后,从自己的局部存储器102的驱动程序表700中删除成为该执行指示的对象的驱动程序的执行代码和驱动程序信息。因此,分配目的地的协同处理器101具有被分配的驱动程序的执行代码、驱动程序信息即可,所以无需专用控制。
(各传感器的功能例)
图8是表示传感器的功能例的说明图。例如,图8所示的传感器具有缓冲区801、控制部803、以及传感检测部802。例如,图8所示的传感器是传感器A~传感器E。例如,传感检测部802根据传感器x的功能来进行检测处理。例如,若通过检测处理检测出的数据被存储至缓冲区,则控制部803向各协同处理器101输出中断信号。在轮询型的传感器的情况下,控制部803也可以不输出中断信号。例如,在具有多个缓冲区801的情况下,控制部803也可以具有对存储通过传感检测部802检测出的数据的缓冲区进行切换的功能。
若以温度传感器为例,温度传感器的传感检测部例如检测温度。而且,温度传感器的传感检测部802例如将表示检测出的温度的模拟的数据转换为数字的数据再存储至缓冲区801。
(各调度程序的功能例)
图9是表示各调度程序的功能例的框图。根据协同处理器101、备份协同处理器101而调度程序的功能不同。不是备用的协同处理器101-i的调度程序121-i具有控制部901-i、判断部920-i、以及转移部903-i。在图3~6的例子中,i是1以及2。备份协同处理器101-j的调度程序121-j具有受理部951-j、控制部952-j、通知部953-j、以及停止部954-j。在图3~图6的例子中,j是3。
控制部901-i至转移部903-i的处理,例如在存储在局部存储器102-i或者存储器106等存储装置的调度程序121-i进行编码。协同处理器101-i从存储装置加载该调度程序121-i,通过执行对调度程序121-i编码的处理,来实现控制部901-i至转移部903-i的功能。
受理部951-j至停止部954-j的处理,例如在存储在局部存储器102-j或者存储器106等存储装置的调度程序121-j进行编码。协同处理器101-j从存储装置加载该调度程序121-j,通过执行对调度程序121-j编码的处理,来实现受理部951-j至停止部954-j的功能。
各功能部的处理结果例如存储至各个局部存储器102的作业区域。在以下的说明中,对各功能部赋予的“-编号”与对协同处理器101赋 予的编号对应,表示是各协同处理器101的调度程序的功能部。
例如,控制部901-i控制被分配的传感器的驱动程序的执行。具体而言,控制部901-i具有选择部911-i、储存部912-i、执行部913-i、以及检测部914-i。例如,选择部911-i在传感器体系结构100起动后,使预先分配的传感器的驱动程序全部进入调度循环131-i,从调度循环131-i中依次选择驱动程序。
例如,储存部912-i从存储在局部存储器102-i的驱动程序表700-i中检索与基于由选择部911-i选择出的驱动程序的识别信息选择出的驱动程序对应的驱动程序信息。例如,储存部912-i从协同处理器101-i所具有的计时器获取当前时刻。例如,储存部912-i将获取的当前时刻储存至被检索的驱动程序信息的执行开始时刻的字段。
而且,例如,执行部913-i开始执行选择出的驱动程序。例如,检测部914-i在执行选择出的驱动程序的通常处理中,检测是否满足特定的条件。所谓的特定的条件是执行CPU调用处理的条件,按照每个驱动程序来确定。
例如,判断部902-i在通过检测部914-i检测出满足特定的条件的情况下,判断即使执行执行中的驱动程序的CPU调用处理,是否也能够遵守登录到调度循环131-i的驱动程序的限制。具体而言,判断部902-i具有计算部921-i、以及判断部922-i。
例如,计算部921-i从驱动程序表700-i,按照每个登录到调度循环131-i的驱动程序中除去执行中的驱动程序的剩余的驱动程序来获取执行开始时刻。而且,例如,计算部921-i获取当前时刻。计算部921-i对每个剩余的驱动程序计算执行开始时刻与当前时刻的差值。
接下来,例如,计算部921-i从驱动程序表700-i获取剩余的驱动程序的通常处理所需的处理时间、以及执行中的驱动程序的CPU调用处理所需的处理时间。如上所述,将通常处理所需的处理时间登录到驱动程序表700-i的第一处理时间的字段,将CPU调用处理所需的处理时间登录到驱动程序表700-i的第二处理时间的字段。计算部921-i对剩余的驱动程序各自的差值加上获取到的执行中的驱动程序的 CPU调用处理所需的处理时间。而且,计算部921-i对剩余的驱动程序各自的加法结果基于登录到调度循环131-i的顺序加上剩余的驱动程序的通常处理所需的处理时间。由此,对每个剩余的驱动程序计算从最后执行剩余的驱动程序的执行开始时刻到预测为下一次执行的执行开始时刻的时间。
而且,判断部922-i判断按照每个剩余的驱动程序通过计算部921-i计算出的时间是否遵守存储在局部存储器102-i的剩余的驱动程序的限制时间。具体而言,例如,判断部922-i从驱动程序表700-i按照每个剩余的驱动程序获取剩余的驱动程序的限制时间。而且,例如,判断部922-i判断按照每个剩余的驱动程序通过计算部921-i计算出的时间是否是获取到的限制时间以下。在按照每个剩余的驱动程序计算出的时间是获取到的限制时间以下的情况下,判断部922-i判断为遵守限制时间。另一方面,在按照每个剩余的驱动程序计算出的时间不是获取到的限制时间以下的情况下,判断部922-i判断为不遵守限制时间。
转移部903-i将通过判断部922-i判断为不遵守限制时间的驱动程序的执行委托通知给多个协同处理器101中其他的协同处理器101。具体而言,例如,转移部903-i具有通知部931-i和受理部932-i。
例如,通知部931-i将该执行委托通知给协同处理器101。如上所述,例如,执行委托附加有成为委托对象的驱动程序的执行代码和驱动程序的驱动程序信息。而且,受理部932-i受理来自该协同处理器101的接受执行或者不能执行的通知。通知部931在由受理部932受理了接受执行的情况下,对接受执行的通知源的协同处理器101通知执行指示。
另一方面,通知部931-i在通过受理部932-i受理了不能执行的情况下,起动备份协同处理器101。在备份协同处理器101的起动后,通知部931-i将判断为不遵守限制时间的驱动程序的执行指示通知给备份协同处理器101。
成为执行指示的对象的驱动程序的执行代码以及驱动程序信息被储存在执行指示的通知目的地的局部存储器102,所以在驱动程序的转移结束后,通知部931-i将该驱动程序的执行代码以及驱动程序信息 从局部存储器700-i中删除。由此,各驱动程序的执行代码以及驱动程序信息被储存在协同处理器101与起动中的备份协同处理器101中的任意一个协同处理器101的局部存储器102。因此,即使在协同处理器101以及起动中的备份协同处理器间不进行专用控制,也能够使驱动程序的执行持续。并且,通知部931-i在驱动程序的转移结束后,从调度循环131-i中删除转移的驱动程序。
另外,受理部932-i受理来自其他的协同处理器101的执行委托。而且,判断部902-i在通过受理部932-i受理了来自其他的协同处理器101的执行委托的情况下,判断是否能够遵守成为执行委托的对象的驱动程序、和被分配的驱动程序的所有的限制。
具体而言,例如,计算部921-i计算成为执行委托的对象的驱动程序的通常处理所需的处理时间、与被分配的驱动程序的通常处理所需的处理时间的合计值。判断部902-i判断合计值是否是各驱动程序的限制时间以下。由此,判断是否能够遵守成为执行委托的对象的驱动程序和被分配的驱动程序的限制时间。
而且,在通过判断部902-i判断出遵守成为执行委托的对象的驱动程序和被分配的驱动程序的限制的情况下,通知部931-i对执行委托的通知源通知接受执行。另一方面,在通过判断部902-i判断出不遵守成为执行委托的对象的驱动程序和被分配的驱动程序的限制中任意一个限制的情况下,通知部931-i对执行委托的通知源通知不能执行。具体而言,通知部931-i通过IPC来进行通知。
接下来,对备份协同处理器101-j所执行的调度程序121-j的功能进行说明。协同处理器101-i起动备份协同处理器101-j。受理部951-j从协同处理器101-i受理执行指示。如上所述,例如,执行指示附加有成为委托对象的驱动程序的执行代码、和驱动程序的驱动程序信息。受理部951-j将受理的执行指示所包含的驱动程序信息以及执行代码储存至局部存储器102-j。
而且,若控制部952-j受理执行指示,则将成为执行指示的对象的驱动程序登录到调度循环131。控制部952-j依次反复执行调度循环131-j内的驱动程序。
具体而言,例如,控制部952-j具有选择部961-j、储存部962-j、以及执行部963-j。选择部961-j依次选择调度循环131-j内的驱动程序。若储存部962-j通过选择部961-j新选择驱动程序,则获取当前时刻。储存部962-j将获取的时刻储存至驱动程序表700的执行开始时刻的字段。执行部963-j执行选择出的驱动程序。
并且,通知部953-j在通过受理部951-j受理接受执行之前,每隔一定时间对不是备份协同处理器101的协同处理器101通知被分配的驱动程序的执行委托。关于一定时间,例如可以由传感器体系结构100的设计者设定,也可以是备份协同处理器101所具有的计时器的计时器中断的时间。
而且,若通知部953-j通过受理部951-j受理接受执行,则利用IPC对接受执行的通知源通知执行指示。停止部954-j在调度循环131为空的情况下,通过关闭电源来停止。具体而言,例如,停止部954-j也可以对电源供给电路103通知将向备份协同处理器101-j供给的电源设定为0[V]的指示。
(调度程序121-i所进行的处理顺序)
图10以及图11是表示调度程序121-i所进行的处理顺序的流程图。调度程序121-i由协同处理器101-i执行。通过传感器体系结构100的设计者预先向协同处理器101-i分配驱动程序。调度程序121-i进行初始化(步骤S1001)。接下来,调度程序121-i从调度循环131-i依次选择驱动程序(步骤S1002)。这里,将选择出的驱动程序称为选择驱动程序。
然后,调度程序121-i从计时器获取当前时刻(步骤S1003),对获取的当前时刻和选择驱动程序建立关联再输出至局部存储器102-i(步骤S1004)。调度程序121-i执行选择驱动程序(步骤S1005)。
接下来,调度程序121-i判断是否进行CPU调用处理(步骤S1006)。如上所述,若是温度传感器的驱动程序,则在判断为检测出的温度是阈值以上、小于阈值的情况下,判断为新进行CPU调用处理。这里,在步骤S1006中,若检测出满足了进行CPU调用处理的条件, 则判断为进行CPU调用处理。因此,在CPU调用处理执行中的情况下不会判断为进行CPU调用处理。
在未进行CPU调用处理的情况下(步骤S1006:否),调度程序121-i判断选择驱动程序的执行是否结束(步骤S1007)。在选择驱动程序的执行未结束的情况下(步骤S1007:否),返回步骤S1006。在选择驱动程序的执行结束了的情况下(步骤S1007:是),调度程序121-i将选择驱动程序登录到调度循环131的最后(步骤S1008),返回步骤S1002。
在步骤S1006中,在进行CPU调用处理的情况下(步骤S1006:是),移至步骤S1009。而且,调度程序121-i从局部存储器102-i获取调度循环131内的驱动程序的通常处理所需的处理时间、选择驱动程序的CPU调用处理所需的处理时间、以及各驱动程序的限制时间(步骤S1009)。
接下来,调度程序121-i对于调度循环131内的各个驱动程序,基于获取的信息,计算从存储的执行开始时刻到下一次执行开始时刻的时间(步骤S1010)。调度程序121-i判断是否能够遵守各驱动程序的限制(步骤S1011)。
在遵守各驱动程序的限制的情况下(步骤S1011:是),返回到步骤S1007。在不遵守各驱动程序的限制时间的情况下(步骤S1011:否),调度程序121-i将被判断为不能够遵守限制时间的驱动程序的执行委托通知给其他的协同处理器101(步骤S1012)。
调度程序121-i判断是否受理了响应(步骤S1013)。在未受理响应的情况下(步骤S1013:否),返回步骤S1013。在受理了响应的情况下(步骤S1013:是),调度程序121-i判断响应是否是接受执行通知(步骤S1014)。
在响应是接受执行通知的情况下(步骤S1014:是),调度程序121-i利用IPC向接受通知的通知源发送驱动程序(步骤S1015),并返回步骤S1007。在响应不是接受执行通知的情况下(步骤S1014:否),调度程序121-i起动备份协同处理器101-j(步骤S1016)。然后,调度 程序121-i利用IPC向备份协同处理器101-j发送驱动程序(步骤S1017),并返回步骤S1007。
(调度程序121-i所进行的处理顺序)
图12是表示受理调度程序121-i所进行的执行委托或者执行指示时的处理顺序的流程图。调度程序121-i判断是否受理了执行委托或者执行指示(步骤S1201)。在未受理执行委托以及执行指示的情况下(步骤S1201:否),返回步骤S1201。在受理了执行委托的情况下(步骤S1201:执行委托),调度程序121-i计算成为执行委托的对象的驱动程序的通常处理所需的处理时间、与被分配的驱动程序的通常处理所需的处理时间的合计值(步骤S1202)。
而且,调度程序121-i通过判断合计值是否是成为执行委托的对象的驱动程序的限制时间以及被分配的驱动程序的限制时间以下,来判断是否遵守限制(步骤S1203)。
在不遵守限制的情况下(步骤S1203:否),调度程序121-i将不能执行通知给执行委托的通知源(步骤S1204),返回步骤S1201。另一方面,在遵守限制的情况下(步骤S1203:是),调度程序121-i将接受执行通知给执行委托的通知源(步骤S1205),返回步骤S1201。
在接受了执行指示的情况下(步骤S1201:执行指示),调度程序121-i将成为执行指示的对象的驱动程序登录到调度循环131(步骤S1206),并返回步骤S1201。
(调度程序121-j所进行的处理顺序)
图13是表示受理调度程序121-j所进行的执行委托时的处理顺序的流程图。调度程序121-j由备份协同处理器101-j执行。通过传感器体系结构100的设计者未预先向备份协同处理器101-j分配驱动程序。首先,调度程序121-j判断是否受理了执行指示(步骤S1301)。在未受理执行指示的情况下(步骤S1301:否),移至步骤S1304。
在受理了执行指示的情况下(步骤S1301:是),调度程序121-j将成为执行指示的对象的驱动程序登录到调度循环131(步骤S1302)。 而且,调度程序121-j依次执行调度循环131内的驱动程序(步骤S1303)。
调度程序121-j判断是否经过了一定时间(步骤S1304)。在未经过一定时间的情况下(步骤S1304:否),返回步骤S1301。另一方面,在经过了一定时间的情况下(步骤S1304:是),调度程序121-j通知调度循环131内的驱动程序的执行委托(步骤S1305)。例如,在具有多个调度循环131内的驱动程序的情况下,调度程序121-j也可以从调度循环131内选择一个驱动程序,对选择出的驱动程序通知执行委托。
接下来,调度程序121-j判断是否受理了接受执行(步骤S1306)。在未受理接受执行的情况下(步骤S1306:否),返回到步骤S1304。另一方面,在受理了接受执行的情况下(步骤S1306:是),调度程序121-j利用IPC向接受通知的通知源发送驱动程序(步骤S1307)。例如,调度程序121-j也可以向接受执行的响应最快的协同处理器101发送驱动程序。
调度程序121-j判断调度循环131是否为空(步骤S1308)。在调度循环131为空的情况下(步骤S1308:是),调度程序121-j通过使电源供给电路103停止针对调度程序121-j的电源供给,而停止(步骤S1309)。另一方面,在调度循环131不为空的情况下(步骤S1308:否),返回步骤S1304。
如以上说明那样,协同处理器在如果各驱动程序进行通常处理则遵守限制,但如果一个驱动程序进行CPU调用处理则不遵守其他的驱动程序的限制的情况下,使其他的协同处理器来执行其他的驱动程序。由此,传感器体系结构即使不进行专用控制、分散处理,也能够持续地执行传感器的驱动程序。因此,传感器体系结构能够提高可靠性。
另外,准备在最大负载的情况下遵守所有的传感器的限制所需的足够数量的协同处理器。将运用开始时的驱动程序配置为由传感器体系结构的设计者假定驱动程序执行的负载最少的情况而遵守所有的传感器的限制的最少的协同处理器数。而且,在运用开始时没有分配的协同处理器作为备份协同处理器而停止。由此,检测装置通过使多余的协同处理器停止,能够减少电力消耗。
另外,协同处理器在仅由起动中的处理器不能够遵守所有的驱动程序的限制的情况下,起动备份协同处理器,来执行驱动程序。由此,能够遵守所有的驱动程序的限制。由此,传感器体系结构能够持续地执行传感器的驱动程序。因此,传感器体系结构能够提高可靠性。
另外,若协同处理器的能力有剩余,则备份协同处理器使协同处理器来执行被分配的驱动程序,停止自身备份协同处理器。由此,能够减少电力消耗。
此外,在本实施方式中说明的通知方法能够通过利用个人计算机、工作站等计算机来执行预先准备的程序来实现。本通知程序被记录于硬盘、软盘、CD-ROM、MO、DVD等计算机可读取的记录介质,通过利用计算机从记录介质中读出来执行。另外本通知程序也可以经由互联网等网络分配。
符号说明
100…传感器体系结构;101-1~101-n…协同处理器;101-(n+1)~101-m…备份协同处理器;A~E、x…传感器;912-i…储存部;921-i…计算部;922-i…判断部;931-i…通知部;953-j…通知部;954-j…停止部。
Claims (5)
1.一种检测装置,是具有多个处理器,所述多个处理器中的特定的处理器依次反复执行相应于多个传感器中的各个传感器的处理的检测装置,其特征在于,具有:
存储部,其能被所述特定的处理器访问,且存储与相应于所述各个传感器的处理对应的第一处理所需的处理时间、与相应于所述各个传感器的处理对应的第二处理所需的处理时间、以及与相应于所述各个传感器的处理对应的限制时间;
储存部,其通过所述特定的处理器,在相应于所述各个传感器的处理的执行切换时,将与相应于所述各个传感器的处理对应的执行开始时刻储存至所述存储部;
计算部,其在相应于所述各个传感器的处理中的执行中的处理进行所述第二处理的情况下,通过所述特定的处理器,基于相应于所述各个传感器的处理的执行顺序,对与相应于所述各个传感器的处理中除去了所述执行中的处理的剩余处理对应的存储于所述存储部的执行开始时刻与所述执行中的处理进行所述第二处理的开始时刻的差值,加上所述执行中的处理的所述第二处理所需的处理时间和所述剩余处理的所述第一处理所需的处理时间;
判断部,其通过所述特定的处理器,判断通过所述计算部与所述剩余处理对应地计算出的时间是否遵守存储于所述存储部的与所述剩余处理对应的限制时间;以及
通知部,其通过所述特定的处理器,将通过所述判断部判断出不遵守所述限制时间的处理的执行委托通知给所述多个处理器中的所述特定的处理器以外的其他处理器。
2.根据权利要求1所述的检测装置,其特征在于,
所述其他处理器在未被分配相应于所述多个传感器中的任意的传感器的处理的情况下,停止。
3.根据权利要求2所述的检测装置,其特征在于,
所述通知部在所述多个处理器中启动中的任意的处理器都不能够执行判断为不遵守所述限制时间的处理的情况下,通过所述特定的处理器,启动所述多个处理器中所述其他处理器,对启动后的所述其他处理器通知判断为不遵守所述限制时间的处理的执行指示。
4.根据权利要求3所述的检测装置,其特征在于,具有:
通知部,其在通过所述其他处理器,受理了所述执行委托后,在执行成为所述执行委托的对象的处理中,将成为所述执行委托的对象的处理的执行委托通知给所述特定的处理器;以及
停止部,其在所述特定的处理器接受了由所述通知部通知的执行委托的情况下,通过所述其他处理器,停止所述其他处理器。
5.一种通知方法,其特征在于,
多个处理器中,依次反复执行相应于多个传感器中的各个传感器的处理的特定的处理器执行如下处理:
在相应于所述各个传感器的处理的执行切换时,向存储与相应于所述各个传感器的处理对应的第一处理所需的处理时间、与相应于所述各个传感器的处理对应的第二处理所需的处理时间、以及与相应于所述各个传感器的处理对应的限制时间的存储部,储存与相应于所述各个传感器的处理对应的执行开始时刻,
在相应于所述各个传感器的处理中的执行中的处理进行所述第二处理的情况下,基于相应于所述各个传感器的处理的执行顺序,对与相应于所述各个传感器的处理中除去了所述执行中的处理的剩余处理对应的存储于所述存储部的执行开始时刻与所述执行中的处理进行所述第二处理的开始时刻的差值加上所述执行中的处理的所述第二处理所需的处理时间和所述剩余处理的所述第一处理所需的处理时间,
判断与所述剩余处理对应地计算出的时间是否遵守存储于所述存储部的与所述剩余处理对应的限制时间,
将判断为不遵守所述限制时间的处理的执行委托通知给所述多个处理器中的所述特定的处理器以外的其他处理器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2012/057064 WO2013140517A1 (ja) | 2012-03-19 | 2012-03-19 | 検出装置、通知方法、および通知プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104169880A CN104169880A (zh) | 2014-11-26 |
CN104169880B true CN104169880B (zh) | 2017-08-22 |
Family
ID=49222011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280071526.8A Expired - Fee Related CN104169880B (zh) | 2012-03-19 | 2012-03-19 | 检测装置以及通知方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9465646B2 (zh) |
JP (1) | JP5773064B2 (zh) |
CN (1) | CN104169880B (zh) |
WO (1) | WO2013140517A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6365224B2 (ja) * | 2014-10-21 | 2018-08-01 | 富士通株式会社 | センシング制御プログラム及び携帯端末装置 |
JP7163002B2 (ja) * | 2016-05-25 | 2022-10-31 | キヤノン株式会社 | プロセッサに接続されるデバイスから通知される復帰時間に応じてプロセッサの省電力のレベルを決定する情報処理装置及びプロセッサの省電力方法 |
JP6679201B1 (ja) * | 2019-02-05 | 2020-04-15 | 三菱電機株式会社 | 情報処理装置、情報処理システム、プログラム及び情報処理方法 |
JP7374588B2 (ja) * | 2019-02-06 | 2023-11-07 | キヤノン株式会社 | Pciデバイスに接続される省電力状態に移行可能なデバイスを備える電子機器およびその制御方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1920781A (zh) * | 2005-08-24 | 2007-02-28 | 松下电器产业株式会社 | 任务执行装置及方法 |
JP2011141782A (ja) * | 2010-01-08 | 2011-07-21 | Toyota Motor Corp | 情報処理装置、電子制御ユニット、タスク割り当て方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63223860A (ja) | 1987-03-12 | 1988-09-19 | Matsushita Electric Ind Co Ltd | 複数プロセツサ構成装置 |
JP3244982B2 (ja) * | 1995-01-30 | 2002-01-07 | 株式会社日立製作所 | 分散制御システム |
US6317774B1 (en) * | 1997-01-09 | 2001-11-13 | Microsoft Corporation | Providing predictable scheduling of programs using a repeating precomputed schedule |
US7165252B1 (en) * | 1999-06-21 | 2007-01-16 | Jia Xu | Method of scheduling executions of processes with various types of timing properties and constraints |
JP2002342098A (ja) | 2001-05-16 | 2002-11-29 | Mitsubishi Electric Corp | 管理装置、データ処理システム、管理方法及び管理方法をコンピュータに実行させるためのプログラム |
JP2002049405A (ja) | 2001-06-01 | 2002-02-15 | Hitachi Ltd | 分散制御装置、システム及びコントローラ |
US8209682B2 (en) * | 2006-07-26 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | System and method for controlling aggregate CPU usage by virtual machines and driver domains over a plurality of scheduling intervals |
JP2008140191A (ja) | 2006-12-01 | 2008-06-19 | Canon Inc | ファイルシステム |
US9189282B2 (en) * | 2009-04-21 | 2015-11-17 | Empire Technology Development Llc | Thread-to-core mapping based on thread deadline, thread demand, and hardware characteristics data collected by a performance counter |
CN103026340B (zh) | 2010-07-30 | 2016-05-04 | 富士通株式会社 | 多核处理器系统、分配程序、控制程序、分配方法以及控制方法 |
-
2012
- 2012-03-19 WO PCT/JP2012/057064 patent/WO2013140517A1/ja active Application Filing
- 2012-03-19 CN CN201280071526.8A patent/CN104169880B/zh not_active Expired - Fee Related
- 2012-03-19 JP JP2014505848A patent/JP5773064B2/ja not_active Expired - Fee Related
-
2014
- 2014-09-04 US US14/477,667 patent/US9465646B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1920781A (zh) * | 2005-08-24 | 2007-02-28 | 松下电器产业株式会社 | 任务执行装置及方法 |
JP2011141782A (ja) * | 2010-01-08 | 2011-07-21 | Toyota Motor Corp | 情報処理装置、電子制御ユニット、タスク割り当て方法 |
Also Published As
Publication number | Publication date |
---|---|
US20140380333A1 (en) | 2014-12-25 |
JP5773064B2 (ja) | 2015-09-02 |
CN104169880A (zh) | 2014-11-26 |
WO2013140517A1 (ja) | 2013-09-26 |
JPWO2013140517A1 (ja) | 2015-08-03 |
US9465646B2 (en) | 2016-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102959510B (zh) | 用于计算机功率和资源消耗建模的方法和系统 | |
CN102257469B (zh) | 存储系统及用于控制存储系统的方法 | |
JP3501385B2 (ja) | ジョブ実行順序決定方法 | |
CN102184125B (zh) | 异构多核环境下基于程序行为在线分析的负载均衡方法 | |
CN101313284B (zh) | 用于提供对处理器状态转换进行检测的方法和装置 | |
CN104335175B (zh) | 基于系统性能度量在系统节点之间标识和迁移线程的方法和系统 | |
CN104169880B (zh) | 检测装置以及通知方法 | |
Chen et al. | Performance and power modeling in a multi-programmed multi-core environment | |
JP5983728B2 (ja) | 仮想マシン管理装置及び仮想マシン管理方法 | |
CN103955398B (zh) | 一种基于处理器性能监控的虚拟机共生调度方法 | |
Saez et al. | PMCTrack: Delivering performance monitoring counter support to the OS scheduler | |
Basireddy et al. | AdaMD: Adaptive mapping and DVFS for energy-efficient heterogeneous multicores | |
Da Costa et al. | Multi-facet approach to reduce energy consumption in clouds and grids: the green-net framework | |
TW201001291A (en) | Method and apparatus for moving threads in a shared processor partitioning environment | |
CN104391678B (zh) | 服务器及其方法、系统及其方法 | |
Qian et al. | Jade: Reducing energy consumption of android app | |
CN106662909A (zh) | 操作系统中的启发式处理器电力管理 | |
Sharifi et al. | PROMETHEUS: A proactive method for thermal management of heterogeneous MPSoCs | |
Qian et al. | An energy-saving task scheduler for mobile devices | |
da Silva et al. | Characterizing, modeling, and accurately simulating power and energy consumption of i/o-intensive scientific workflows | |
Li et al. | An adaptive cpu-gpu governing framework for mobile games on big. little architectures | |
CN113157043B (zh) | 基于强化学习的异构多核处理器动态电压调节方法及系统 | |
WO2012085781A1 (en) | System and method for deploying multiple clinical decision support models | |
CN106649067B (zh) | 一种性能和能耗预测方法及装置 | |
CN104111722B (zh) | 利用跟踪数据的电源管理的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170822 Termination date: 20180319 |