CN101002176A - 实时处理软件控制装置及方法 - Google Patents
实时处理软件控制装置及方法 Download PDFInfo
- Publication number
- CN101002176A CN101002176A CNA2005800247770A CN200580024777A CN101002176A CN 101002176 A CN101002176 A CN 101002176A CN A2005800247770 A CNA2005800247770 A CN A2005800247770A CN 200580024777 A CN200580024777 A CN 200580024777A CN 101002176 A CN101002176 A CN 101002176A
- Authority
- CN
- China
- Prior art keywords
- state
- real
- relative importance
- task
- importance value
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 51
- 238000012546 transfer Methods 0.000 claims description 38
- 230000007704 transition Effects 0.000 abstract description 41
- 238000013461 design Methods 0.000 abstract description 26
- 238000011144 upstream manufacturing Methods 0.000 abstract description 5
- 238000003825 pressing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
提供了一种实时处理软件控制装置及方法,能够根据各状态的实时处理必要性来相对记述状态优先度,并在判明具体的执行时刻前的上游设计工序中,能够执行考虑到实时性的状态转移和任务优先度的设计。针对控制对象设备的获取状态([1]311)~状态([6]316)中的每一个,设定表示该状态中的处理是否有必要执行实时处理的实时性标志(F1)~(F6)、以及由紧前状态和当前状态确定的优先度等级(P1)~(P6),任务优先度管理部(104)伴随着控制对象设备的状态转移,基于实时性标志和优先度等级而使任务的优先度发生变化。
Description
技术领域
本发明涉及以设备安装为目的的实时处理软件控制装置以及控制方法。
背景技术
作为已有的以设备安装为目的的由实时处理软件执行的控制方法,包括例如像专利文献1所记载的任务执行控制方法那样,基于预先确定的任务实行时刻来改变任务的优先度以执行任务调度的方法。
下面,将就已有的任务执行控制方法来执行说明。
图5是用于说明已有的任务执行控制方法的图。
在图5中,A表示任务的执行环境。执行环境A由硬件层A1、操作系统(OS)层A2、以及在OS层A2上执行操作的应用层A3构成。
硬件层A1具有中央运算装置(CPU)506、存储器507、图形设备508等硬件资源。
应用层A3内包含多个伴随着应用组的执行而被执行的任务。在图5中,例示了任务A509、任务B510以及任务C511作为应用层A3内的任务。其中,任务A具有在规定周期内重复执行的性质,也是任务A~C中优先度最高的任务。任务B是使用任务A和任务B的共享资源(以下称为“信号机(セマフオ:semaphor)”)而执行的任务,具有对执行任务处理所需的所述共用资源的占有时间长度被固定的性质。任务B的优先度是任务A~C中最低的。任务C不与任务A、B共享资源,其优先度是任务A~C中第二高的。
任务执行控制装置500作为OS层A2内所包含的内核的一部分,执行与任务调度有关的处理。即,该任务执行控制装置500具有:调度部501,用于控制任务A509、任务B510、以及任务C511的执行顺序;管理部502,执行用于避免伴随着任务共享资源的排他控制、任务分配等而引起的优先度的逆转的处理;以及,用于计算宽余时间的宽余时间计算部503,所述宽余时间是调度部501为了进行任务执行顺序控制而参照的时间信息。这里,所谓宽余时间,表示从任务C511释放共享资源起到开始执行任务A509为止的时间空余,它是利用以下计算式(1)计算出的:
宽余时间=任务A的执行开始预定时刻-任务B的共享资源释放时刻(1)
所述管理部502具有:信号机管理部504,用于执行与任务共享资源的排他控制有关的处理;以及,优先度管理部505,用于与任务的分配相关联地调整任务的优先度。
接下来,将就操作进行说明。
若任务B510向信号机管理部504发出信号机获得请求,则宽余时间计算部503根据来自信号机管理部504的指示计算出宽余时间。
信号机管理部504在上述宽余时间为负值的情况下,不认为任务B510占用所述共享资源,并将该意思通知给调度部501。调度部501将任务B510设为待机状态,等待任务A509的处理结束后,执行任务B510的处理。另一方面,信号机管理部504在上述宽余时间为正值的情况下,认为任务B510占用所述共享资源,并将该意思通知给调度部501。调度部501接受相关通知,并将任务B510设定为操作状态。
接着,在任务B510的操作过程中,在调度部501接收到来自任务C511的执行开始请求时,优先度管理部505从信号机管理部504得到有关所述宽余时间的信息。之后,设置将该宽余时间设定为作为初始值的容许时间,并将附加了该容许时间的优先度切换指示发送给调度部501。
调度部501一旦接收到所述优先度切换指示,则将自任务C511开始执行起所经过的时间作为分配处理时间来执行测量,并一边执行检测一边等待任务C511的结束,以使所述分配处理时间不超过所述容许时间。调度部501在任务C511于所述容许时间的范围内结束其处理的情况下,将任务B510设为操作状态。另一方面,调度部501在任务C511的处理持续到变为所述容许时间的情况下,根据所述优先度切换指示,将任务B510的优先度提高到与任务A509相同的等级。由此,在因任务C511而产生了分配处理的情况下,由于在该分配处理时间达到宽余时间长度的时刻,任务B510的优先度上升为与任务A509相同的优先度,所以使避免任务B510的处理受任务C511的分配的影响而被延迟的“优先度逆转现象”成为可能。
专利文献1:特开2003-131892号公报
发明内容
发明要解决的问题
如上所述,在利用以往的实时处理软件所执行的控制方法中,由于基于预先确定的任务执行时刻来改变任务的优先度,以执行任务调度,所以在设计实时处理软件时,需要在控制对象设备的设计阶段预先确定各任务的执行时刻。
但是,在到达决定设计细节的设计最终阶段之前,确定任务执行时刻的具体值非常困难。在以设备规格为基础的前期工序设计阶段,其设计内容中不包含任务执行时刻。为此,以往的实时处理软件控制方法难以进行对用于执行实时处理的软件的充分设计。
本发明是为了解决上述问题而作出的,其目的在于提供一种实时处理软件控制装置以及方法,通过使是否有必要执行实时处理的信息与设备的基于设备规格的状态转移相对应,并伴随着设备的状态转移而自动地变更任务的优先度,使从事先的设计阶段开始考虑实时性的软件设计成为可能,从而可灵活地变更程序执行时的任务优先度。
解决问题的手段
根据本发明方案1的发明是一种实时处理软件控制方法,该方法基于按每个任务设定的优先度来进行与具有多种操作状态的设备的每个状态相对应的任务的执行控制,其特征在于,所述方法包括:优先度更新步骤,每当所述设备的状态发生转移时,更新与所述设备的转移后操作状态相对应的任务的优先度。
根据本发明方案2的发明是:在方案1所述的实时处理软件控制方法中,在所述优先度更新步骤中,基于为所述设备的多种操作状态中的每一种状态而设定的优先度等级值来更新所述优先度。
根据本发明方案3的发明是,在方案2的实时处理软件控制方法中,所述优先度等级值是由所述设备即将转移之前的状态和转移后的状态确定的值。
根据本发明方案4的发明是,在方案1的实时处理软件控制方法中,所述优先度更新步骤包含:判定步骤,每当所述设备的状态发生转移时,判定与所述设备的转移后操作状态相对应的任务的实时处理必要性,仅在通过所述判定步骤判断为实时处理是必要的时候,更新针对与所述设备的转移后操作状态相对应的任务而设定的优先度。
根据本申请方案5的发明是,在方案4所述的实时处理软件控制方法中,所述判定步骤为基于为所述设备的多种操作状态中的每一种而设定的、表示实时处理的必要性的实时性标志,来判断与所述设备的转移后状态相对应的任务的实时处理必要性的步骤。
根据本申请方案6的发明是一种实时处理软件控制装置,用于基于按每个任务设定的优先度来进行与具有多种操作状态的设备的每种状态对应的任务的执行控制,该实时处理软件控制装置具有任务优先度管理部,用于更新针对与所述设备的转移后操作状态相对应的任务而设定的优先度。
根据本申请方案7的发明是,在方案6所述的实时处理软件控制装置中,包括:优先度等级表存储部,用于存储针对所述设备的多种操作状态中的每一种而设定的、使所述设备的即将转移之前的状态和所述优先度的变更参数值相对应的优先度等级表,其中,所述任务优先度管理部在每当所述设备的状态发生转移时,参照所述优先度等级表存储部,针对转移后的状态,从设定的所述优先度等级表中读出与所述设备即将转移之前的状态相对应的所述变更参数值,并基于该读出的变更参数值,变更与所述设备的转移后操作状态相对应的任务的优先度。
根据本申请方案8的发明是,在方案6或7所述的实时处理软件控制装置中,包括:用于存储实时性标志的实时性标志保持部,其中所述实时性标志表示与所述设备的多种操作状态分别对应的任务的实时处理必要性,其中,所述任务优先度管理部每当所述设备的状态发生转移时,从所述实时性标志保持部中读出与所述设备的转移后状态相对应的实时性标志,判断与该状态相对应的任务的实时处理必要性,仅在判断为实时处理是必要的时更新与所述设备的转移后状态相对应的任务的优先度。
发明效果
根据本申请方案1的发明提供了一种实时处理软件控制方法,它基于按每个任务设定的优先度来进行与具有多个操作状态的设备的每个状态相对应的任务的执行控制。由于每当所述设备的状态发生转移时,都更新针对与所述设备的转移后操作状态相对应的任务而设定的优先度,因此,使从事先的设计阶段开始就考虑到实时性的软件设计成为可能,可以灵活地变更程序执行时的任务优先度。
根据本申请方案2的发明,由于在方案1所述的实时处理软件控制方法中,所述优先度更新步骤基于为所述设备的多个操作状态中的每一个状态而设定的优先度等级值来更新所述优先度,因此,能够使任务的优先度随着状态转移而动态且自动地发生变化,由此,从具有多个操作状态的设备的上游设计阶段开始,使执行任务时的优先度设计与状态转移设计相协调且可基于实际的操作状态来执行。由于预先记述了每次状态转移的优先度,因此,没有必要进行设备设计的后期工序中的任务优先度设计。
根据本申请方案3的发明,由于在方案2所述的实时处理软件控制方法中,利用所述设备即将转移之前的状态以及转移后的状态来确定所述优先度等级值,因此,能够相对地描述每个状态的优先度,由此,能够在判明被控制设备的具体任务执行时刻前的上游设计工序中执行考虑到实时性的状态转移和任务优先度的设计。
根据本申请方案4的发明,由于在方案1所述的实时处理软件控制方法中,所述优先度更新步骤包含:判定步骤,每当所述设备的状态发生转移时,判断与所述设备的转移后操作状态相对应的任务的实时处理必要性,仅在通过所述判定步骤判断为实时处理是必要的时候,更新与所述设备的转移后操作状态相对应的任务的优先度。因此,能够避免对没有必要执行实时处理的任务进行优先度更新。
根据本申请方案5的发明,由于在方案4所述的实时处理软件控制方法中,所述判定步骤基于为所述设备的多种操作状态中的每一种而设定的、表示实时处理的必要性的实时性标志,来判断与所述设备的转移后状态相对应的任务的实时处理必要性,因此,判断任务的实时处理必要性变得简单。
根据本申请方案6的发明,提供了一种实时处理软件控制装置,它基于按每个任务设定的优先度来进行与具有多种操作状态的设备的每个状态相对应的任务的执行控制。由于具有用于每当所述设备的状态发生转移时,变更针对与所述设备的转移后操作状态相对应的任务设定的优先度的任务优先度管理部,因此,使从事先的设计阶段开始就考虑到实时性的软件设计成为可能,从而能够灵活地变更程序执行时的任务优先度。
根据本申请方案7的发明,由于在方案6所述的实时处理软件控制装置中具有优先度等级表存储部,用于存储针对所述设备的多种操作状态中的每一种而设定的、使所述设备的即将转移之前的状态和所述优先度的变更参数值相对应的优先度等级表,并且所述任务优先度管理部在每当所述设备的状态发生转移时,参照所述优先度等级表存储部,针对转移后的状态,从设定的所述优先度等级表中读出与所述设备即将转移之前的状态相对应的所述变更参数值,并基于该读出的变更参数值,变更与所述设备的转移后操作状态相对应的任务的优先度,因此,能够使任务的优先度随着状态转移而动态且自动地发生变化,由此,从具有多个操作状态的设备的上游设计阶段开始,使任务执行时的优先度设计与状态转移设计相一致,且可基于实际的操作状态来执行。由于预先记述了每次状态转移的优先度,因此,没有必要在设备设计的后期工序中执行任务优先度设计。
根据本申请方案8的发明,由于在方案6或方案7所述的实时处理软件控制装置中包括:用于存储实时性标志的实时性标志保持部,其中所述实时性标志表示与所述设备的多种操作状态分别对应的任务的实时处理必要性,并且所述任务优先度管理部每当所述设备的状态发生转移时,从所述实时性标志保持部中读出与所述设备的转移后状态相对应的实时性标志,判断与该状态相对应的任务的实时处理必要性,仅在判断为实时处理是必要的时更新与所述设备的转移后状态相对应的任务的优先度,因此,能够通过简单的判断来避免对没有必要执行实时处理的任务更新其优先度。
附图说明
图1图示了根据本发明实施方式1的实时处理软件控制装置的结构。
图2是用于说明实施方式1的优先度等级表的图,图示了优先度等级表的内部结构。
图3(a)是说明根据本发明实施方式1的实时处理软件控制装置的简要操作的模式图。
图3(b)是用于说明实施方式1的优先度等级表的图,图示了优先度等级表的具体内部结构。
图4是用于说明实施方式1的实时处理软件控制装置的操作的流程图。
图5是说明已有的任务执行控制方法的模式图。
符号说明
101状态转移执行部
102实时性标志保持部
103优先度等级表存储部
104任务优先度管理部
105状态转移管理部
106任务优先度更新部
201紧前状态索引(index)部
202优先度等级值保持部
F(1)-F(5)实时性标志
Pk(1)、Pk(2)、Pk(n)优先度等级值
T(k)优先度等级表
Tp(n)任务优先度
Ts(n)任务
X(1)-X(n)紧前状态索引值
具体实施方式
以下,将就本发明的实施方式进行说明。
(实施方式1)
本实施方式1的软件控制装置是基于为每个任务设定的优先度,来进行与具有多个操作状态的设备的各状态相对应的任务的执行控制。在根据本发明的软件控制装置中,每当被控制对象设备的状态发生转移,针对与转移后的操作状态相对应的任务来更新所设定的优先度。
图1是表示根据本发明实施方式1的实时处理软件控制装置的结构的概略图。
在图1中,实时处理软件控制装置100具有状态转移执行部101、实时性标志保持部102、优先度等级表存储部103、以及任务优先度管理部104。
状态转移执行部101执行与具有多个操作状态的设备的各状态相对应的任务Ts(1)-T(n)。这里,具有多个操作状态的设备例如是录像机和DVD播放器等AV设备。该设备的多个操作状态是停止状态、播放状态、录像状态、快放状态等。以下,将被控制设备的状态表示为状态[1]、状态[2]、......、状态[n](n是整数)。向与设备的状态[1]~状态[n]相对应的任务Ts(1)~Ts(n)分配任务优先度Tp(1)~Tp(n),所述任务优先度表示各任务与其他任务相比是否有必要按某种程度优先执行操作。
实时性标志保持部102存储用于表示在被控制设备处于状态[i](i=1~n)时是否有必要执行实时处理的实时性标志F(i)。实时性标志F(i)是按各状态(1)~状态(n)分别设定的,在实时性标志保持部102内存储有与设备的状态(1)~状态(n)相对应的实时性标志F(1)~F(n)。
优先度等级表存储部103是为设备的每个设备状态(1)~状态(n)设定的对应表,其中存储了使设备状态即将转移之前的状态与优先度等级值相对应的优先度等级表T(1)~T(n),其中,所述优先度等级值是用于变更任务Ts(1)~Ts(n)的任务优先度Tp(1)~Tp(n)的参数值。即,在优先度等级表存储部103内存储有分别与设备的状态(1)~状态(n)对应的优先度等级表T(1)~T(n)。
这里,将就优先度等级表T(i)的细节进行说明。
图2表示优先度等级表T(i)内部的详细结构。
优先度等级表T(i)由紧前状态索引部201、与紧前状态相对应的优先度等级值保持部202构成,它是按照设备的操作状态[i]而设定的。
在优先度等级表T(i)的紧前状态索引部201内所表示的值是表示处于即将转移到被控制设备的当前状态[k]之前的操作状态[1]、[2]、......、[n]的索引值X(1)、X(2)、......、X(n)。优先度等级表T(i)的优先度等级值保持部202的值是从处于紧前的状态[1]、[2]、......、[n]转移到当前状态[k]时的各个单个优先度等级值Pk(1)、Pk(2)、......、Pk(n)。这些紧前状态索引部201中的紧前状态索引值X(n)与优先度等级值保持部202中的优先度等级值Pk(n)作为一组来处理。
接下来,每当设备的操作状态发生转移时,图1中的任务优先度管理部104就更新与当前状态[k]相对应的任务Ts(k)的任务优先度Tp(k)。任务优先度管理部104如图1所示,具有状态转移管理部105、以及任务优先度更新部106。状态转移管理部105监视被控制设备的当前状态[k]以及紧前的操作状态,从实时性标志存储部102读出与当前状态[k]相对应的实时性标志F(k),并判断实时处理的必要性。状态转移管理部105访问优先度等级表存储部103,并从与当前状态[k]相对应的优先度等级表T(k)中读出当前状态、以及与紧前状态相对应的优先度等级值Pk(k)。
任务优先度更新部106基于从状态转移管理部105输出的优先度等级值Pk(k),对与当前状态[k]相对应的任务Ts(k)的任务优先度Tp(k)执行更新。
如上所述构成的实时处理软件控制装置100能够利用由硬件层、实时OS层以及应用层构成的分层结构来实现,其中,硬件层由CPU和存储器等构成,而应用层是在实时OS层上执行操作的。状态转移执行部101实现为应用层的一部分,任务优先度管理部104实现为实时OS层的一部分,而优先度等级表存储部103以及实时性标志保持部102通过分配一部分硬件层的存储器而实现。
图3(a)图示了被控制设备为DVD播放器的情况下的操作状态的转移例子概要地图示了任务优先度管理部104对DVD播放器的停止状态[1]311、播放状态[2]312、快放状态[3]313、暂停状态[4]314、反向播放状态[5]315、以及慢放状态[6]316的工作转移进行管理的方式。
图3(b)图示了DVD播放器为播放状态情况下的优先度等级表的具体内部结构的一个例子。
图4表示设备的操作状态从某个状态转移到下一个状态时更新任务优先度Tp(n)的处理。
接下来,使用图1到图4来说明本实施方式1的操作。
现在,被控制设备为DVD播放器,其操作状态通过由使用者的按钮操作等而进行的各种指令输入发生转移。例如,通过按下图中未示出的设置在控制器上的播放键(按钮),如图3(a)所示,从停止状态[1]转移到播放状态[2]。此时,作为转移条件,例如在开启父母锁定的情况下,仅在解除了该锁定的情况下才能转移到播放状态。同样,通过按下快放键而从播放状态[2]转移到执行高速播放的快放状态[3],通过按下暂停键而转移到重复播放同一指令的暂停状态[4],通过按下反向播放按钮而转移到执行与常规播放相反的反向播放的反向播放状态[5],通过按下慢放键而转移到以慢于常规播放的速度来执行播放的慢放状态[6]。通过按下播放键,从这些快放状态[3]、暂停状态[4]、反向播放状态[5]、慢放状态[6]转移到播放状态[2]。另外,在播放状态[2]、快放状态[3]、暂停状态[4]、反向播放状态[5]、慢放状态[6]下,通过按下停止键而分别转移到停止状态[1]。
这里,DVD播放器的状态转移的各状态与其是否有必要执行实时处理、各状态下的优先度等级值能够按矢量表示为(状态、实时处理的必要性、优先度等级值)。
根据这种表示法,如图3(b)所示,在将当前状态设为播放状态的情况下,其紧前状态为停止、播放、快放、暂停、反向播放、慢放中的任何一种状态时的情况能够分别表述如下:
(停止,否,+10)
(播放,要,0)
(快放,要,+5)
(暂停,否,+8)
(反向播放,要,+4)
(慢放,要,+5)
若设备的状态发生转移,则首先,状态转移管理部105判断转移后的状态,并从实时性标志保持部102获取到与当前状态[k]相对应的实时性标志F(k)(步骤S401)。接着,状态转移管理部105使用取得的实时性标志F(k),来判定当前状态[k]是否是有必要执行实时处理的状态(步骤S402)。
作为该判断的结果,在判断为是有必要进行实时处理的状态时,状态转移管理部105从优先度等级表存储部103中取得与当前状态[k]相对应的优先度等级表T(k)中的优先度等级值Pk(i)(步骤S403)。该优先度等级表T(k)的优先度等级值Pk(i)是依转移前的状态处于状态[1]~[n]中的哪一种状态而不同的值。根据转移前的设备状态,所取得的优先度等级值Pk(i)成为不同的值。
之后,状态转移管理部105将在步骤S403中取得的优先度等级值Pk(i)输出到任务优先度更新部106。
任务优先度更新部106在与当前状态[k]相对应的任务Ts(k)所持有的优先度Tp(k)上,加上从状态转移管理部105输出的优先度等级值Pk(i),从而更新为新的任务优先度(步骤S404)。进而,任务优先度更新部106将在步骤S404中求出的新的任务优先度设定为当前任务的任务优先度Tp(k)(步骤S405)。
这里,优先度等级表T(k)内所保持的优先度等级值Pk(i),在与即将变为当前状态之前的状态相比,当前状态有必要更优先地执行实时处理的情况下为正值,而在虽然有必要执行实时处理但与紧前状态相比,实时处理的优先度较低的情况下取负值。另外,在当前状态与紧前状态相比更强烈地需要实时处理的情况下,优先度等级值Pk(i)取绝对值大的正值。相反,在当前状态下,当与紧前状态相比只需要较弱的实时处理时,优先度等级值Pk(i)取绝对值大的负值。
如上所述,一旦利用步骤S401~S405的处理来设定与新状态相适应的任务的优先度,则然后CPU等运算部(图中未示)实际上执行当前状态[k]下所必需的处理(步骤S406)。
之后,每当设备状态发生转移,就执行与上述步骤S401~S406相同的处理,使任务优先度随着状态转移而动态且自动地改变。
以下,作为根据本实施方式1的实时处理软件控制装置100的具体操作,以DVD播放器从停止状态转移到播放状态的情况为例进行说明。
如上所述,对于停止状态[1]311~慢放状态[6]316中的每一状态,分别对应与各状态相对应的实时性标志F(1)~F(6)、以及优先度等级表T(1)~T(6)。尽管图中未示,但停止状态[1]311~慢放状态[6]316中的每一个都保持有在各状态下应执行的设备控制程序、表示是否由于成为状态变化触发的信号输入而应转移到下面某个状态的转移目的地信息和转移条件等信息。
状态转移管理部105监视这种操作状态的状态转移,获取与当前状态对应的实时性标志。
现在,通过在停止状态下操作播放键,使DVD播放器的操作状态从停止状态[1]311转移到播放状态[2]312的情况下,任务优先度管理部104内的状态转移管理部105从实时性标志保持部102中读出与作为当前状态的播放状态[2]312相对应的实时性标志F(2),并作为与作为当前状态的播放状态(状态[2])相对应的实时性标志F(2)而取得“要(实时处理)”(步骤S401)。
状态转移管理部105判断播放状态[2]312的实时处理必要性(步骤S402)。状态转移管理部105由于取得了“要(实时处理)”作为实时性标志F(2),因此判断为针对播放状态[2]312设定的标志表示了实时处理的必要性,访问优先度等级表存储部103,并从存储在优先度等级表存储部103内的多个优先度等级表中访问与播放状态[2]312相对应的优先度等级表T(2)。
状态转移管理部105从优先度等级表T(2)中,读出“+10”作为与来自作为紧前状态的停止状态[1]311的转移X(1)相对应的优先度等级值Pk(2)(步骤S403),并将该读出的优先度等级值输出到任务优先度更新部106。
任务优先度更新部106对与当前状态相对应的任务的任务优先度执行更新。例如,在与播放状态[2]312对应的任务Ts(2)的任务优先度Tp(2)上加上从状态转移管理部105输出的优先度等级值“+10”,并将任务Ts(2)的任务优先度Tp(2)的值传送给任务优先度更新部106。任务优先度更新部106通过将该优先度等级值Pk(2)的值“+10”作为增加值而加到任务Ts(2)的任务优先度Tp(2)上来更新任务优先度(步骤S404、S405)。其结果是:任务Ts(2)的任务优先度上升,与状态转移前的状态相比,容易优先地执行。
由此,伴随着DVD播放器的状态转移,与播放状态[2]312对应的任务Ts(2)的任务优先度Tp(2)被动态且自动地更新。状态转移执行部101根据该动态且自动变更的任务优先度,开始执行与任务相对应的操作状态内的程序的操作(步骤S406)。
这样,在本实施方式1中,针对控制对象设备的每一个取得状态,设定表示该状态中的处理是否有必要执行实时处理的实时性标志F(i)、以及由紧前状态和当前状态所确定的优先度等级值Pk(i),并随着控制对象设备的状态转移,基于实时性标志F(i)和优先度等级值Pk(i)来改变任务的优先度,因此,能够根据各状态的实时处理必要性来相对地记述状态的优先度,其结果是得到了以下效果:能够在判明详细的执行时刻前的上游设计工序中,执行考虑到实时性的状态转移、以及任务优先度的设计。
在上述实施方式1中,将优先度等级值Pk(i)设定为由紧前操作状态和当前状态[k]所确定的相对值,但是,也可以将优先度等级值Pk(i)设定为仅由当前操作状态确定的绝对值。
另外,在上述实施方式1中,将使任务优先度发生变化的任务设定为发生了状态转移的自任务,但是,使任务优先度发生变化的任务也可以是发生了状态转移的自任务以外的1个或多个其他任务。
产业上的可利用性
本发明作为诸如录像机、DVD播放器等之类的具有多个操作状态的、必须使任务的优先度针对每一个状态而发生变化的设备的安装软件控制方法是有用的。
Claims (8)
1.一种实时处理软件控制方法,该方法基于按每个任务设定的优先度来进行与具有多种操作状态的设备的每个状态相对应的任务的执行控制,其特征在于,所述方法包括:
优先度更新步骤,每当所述设备的状态发生转移时,更新与所述设备的转移后操作状态相对应的任务的优先度。
2.如权利要求1所述的实时处理软件控制方法,其特征在于,在所述优先度更新步骤中,基于为所述设备的多种操作状态中的每一种状态而设定的优先度等级值来更新所述优先度。
3.如权利要求2所述的实时处理软件控制方法,其特征在于,所述优先度等级值是由所述设备即将转移之前的状态和转移后的状态确定的值。
4.如权利要求1所述的实时处理软件控制方法,其特征在于:
所述优先度更新步骤包含:判定步骤,每当所述设备的状态发生转移时,判断与所述设备的转移后操作状态相对应的任务的实时处理必要性,
仅在通过所述判定步骤判断为实时处理是必要的时候,更新与所述设备的转移后操作状态相对应的任务的优先度。
5.如权利要求4所述的实时处理软件控制方法,其特征在于,在所述判定步骤中,基于为所述设备的多种操作状态中的每一种而设置的、表示实时处理的必要性的实时性标志,来判断与所述设备的转移后状态相对应的任务的实时处理必要性。
6.一种实时处理软件控制装置,该装置基于按每个任务设定的优先度来进行与具有多种操作状态的设备的每个状态相对应的任务的执行控制,其特征在于,该实时处理软件控制装置包括:任务优先度管理部,用于每当所述设备的状态发生转移时,变更与所述设备的转移后操作状态相对应的任务的优先度。
7.如权利要求6所述的实时处理软件控制装置,其特征在于,
包括:优先度等级表存储部,用于存储针对所述设备的多种操作状态中的每一种而设置的、使所述设备的即将转移之前的状态和所述优先度的变更参数值相对应的优先度等级表,
其中,所述任务优先度管理部在每当所述设备的状态发生转移时,参照所述优先度等级表存储部,针对转移后的状态,从设定的所述优先度等级表中读出与所述设备即将转移之前的状态相对应的所述变更参数值,并基于该读出的变更参数值,变更与所述设备的转移后操作状态相对应的任务的优先度。
8.如权利要求6或7所述的实时处理软件控制装置,其特征在于,
包括:用于存储实时性标志的实时性标志保持部,其中所述实时性标志表示与所述设备的多种操作状态分别对应的任务的实时处理必要性,
其中,所述任务优先度管理部每当所述设备的状态发生转移时,从所述实时性标志保持部中读出与所述设备的转移后状态相对应的实时性标志,判断与该状态相对应的任务的实时处理必要性,仅在判断为实时处理是必要的时更新与所述设备的转移后状态相对应的任务的优先度。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004216343 | 2004-07-23 | ||
JP216343/2004 | 2004-07-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101002176A true CN101002176A (zh) | 2007-07-18 |
Family
ID=35785368
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005800247770A Pending CN101002176A (zh) | 2004-07-23 | 2005-07-22 | 实时处理软件控制装置及方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20080295104A1 (zh) |
CN (1) | CN101002176A (zh) |
WO (1) | WO2006009261A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021844A (zh) * | 2015-03-30 | 2016-10-12 | 国际商业机器公司 | 用于在案例管理的运行时强制执行任务的方法和系统 |
CN109871275A (zh) * | 2017-12-01 | 2019-06-11 | 晨星半导体股份有限公司 | 多处理器系统及其处理器管理方法 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4742901B2 (ja) * | 2006-02-17 | 2011-08-10 | 株式会社ニコン | 電子カメラ |
JP4944518B2 (ja) * | 2006-05-26 | 2012-06-06 | 富士通セミコンダクター株式会社 | タスク遷移図表示方法及び表示装置 |
JP2010160713A (ja) * | 2009-01-09 | 2010-07-22 | Yokogawa Electric Corp | フィールド制御装置およびフィールド制御方法 |
US8495044B2 (en) * | 2009-09-02 | 2013-07-23 | Microsoft Corporation | File system node updates |
EP2369477B1 (en) * | 2010-02-22 | 2017-10-11 | Telefonaktiebolaget LM Ericsson (publ) | Technique for providing task priority related information intended for task scheduling in a system |
JP5949421B2 (ja) * | 2012-10-11 | 2016-07-06 | 富士通株式会社 | 情報処理装置、実行優先度変更方法およびプログラム |
GB201221063D0 (en) | 2012-11-23 | 2013-01-09 | 3M Innovative Properties Co | Metered dose dispensing valve |
TWI639955B (zh) * | 2017-11-06 | 2018-11-01 | 晨星半導體股份有限公司 | 多處理器系統及其處理器管理方法 |
KR102491068B1 (ko) * | 2017-11-17 | 2023-01-19 | 에스케이하이닉스 주식회사 | 메모리 장치에 대한 태스크들을 스케줄링하는 반도체 장치 및 이를 포함하는 시스템 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0417034A (ja) * | 1990-05-10 | 1992-01-21 | Matsushita Electric Ind Co Ltd | タスクスケジューリング装置 |
US5887191A (en) * | 1996-11-26 | 1999-03-23 | International Business Machines Corporation | System and method for bounding response time jitter for high priority commands in a multimedia datastreaming system |
-
2005
- 2005-07-22 WO PCT/JP2005/013514 patent/WO2006009261A1/ja active Application Filing
- 2005-07-22 US US11/658,175 patent/US20080295104A1/en not_active Abandoned
- 2005-07-22 CN CNA2005800247770A patent/CN101002176A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021844A (zh) * | 2015-03-30 | 2016-10-12 | 国际商业机器公司 | 用于在案例管理的运行时强制执行任务的方法和系统 |
CN109871275A (zh) * | 2017-12-01 | 2019-06-11 | 晨星半导体股份有限公司 | 多处理器系统及其处理器管理方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2006009261A1 (ja) | 2006-01-26 |
US20080295104A1 (en) | 2008-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101002176A (zh) | 实时处理软件控制装置及方法 | |
US8943252B2 (en) | Latency sensitive software interrupt and thread scheduling | |
US4989133A (en) | System for executing, scheduling, and selectively linking time dependent processes based upon scheduling time thereof | |
US4758948A (en) | Microcomputer | |
US7971205B2 (en) | Handling of user mode thread using no context switch attribute to designate near interrupt disabled priority status | |
US8365180B2 (en) | Information terminal, computer resource managing method, and virtual machine execution switching method | |
CN102902573B (zh) | 一种基于共享资源的任务的处理方法及装置 | |
CN102890643B (zh) | 基于应用效果即时反馈的显卡虚拟化下的资源调度系统 | |
JP2009282807A (ja) | メッセージ紐付け処理装置、方法及びプログラム | |
US7203868B1 (en) | Dynamic monitoring of resources using snapshots of system states | |
EP1405175A2 (en) | Multiprocessor system and method for operating a multiprocessor system | |
US20010034751A1 (en) | Real-time OS simulator | |
JP2003288237A (ja) | 制御装置における実行時間測定装置及び実行時間測定方法 | |
JP2011198346A (ja) | スケジューリング方法,スケジューリングプログラム,スケジューリング装置 | |
US20060184819A1 (en) | Cluster computer middleware, cluster computer simulator, cluster computer application, and application development supporting method | |
KR20060053929A (ko) | 정보 처리 장치, 정보 처리 방법 및 프로그램 | |
CN104104645A (zh) | 一种跨平台资源管理方法和系统 | |
US9405864B2 (en) | Method for a design evaluation of a system | |
US20020052726A1 (en) | Performance simulation apparatus, performance simulation method, and recording medium containing performance simulation program | |
JP5542643B2 (ja) | シミュレーション装置及びシミュレーションプログラム | |
US5377353A (en) | Method for managing common data stored in a memory accessible by a plurality of programs | |
EP2645255B1 (en) | Program generating device, program generating program, and program generating method | |
CN116578416A (zh) | 一种基于gpu虚拟化的信号级仿真加速方法 | |
CN1890641B (zh) | 任务管理系统和任务管理方法 | |
WO2001090889A3 (en) | Instruction dependency scoreboard with a hierarchical structure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |