CN101299197B - 一种增删任务的方法和单元 - Google Patents

一种增删任务的方法和单元 Download PDF

Info

Publication number
CN101299197B
CN101299197B CN200810115891XA CN200810115891A CN101299197B CN 101299197 B CN101299197 B CN 101299197B CN 200810115891X A CN200810115891X A CN 200810115891XA CN 200810115891 A CN200810115891 A CN 200810115891A CN 101299197 B CN101299197 B CN 101299197B
Authority
CN
China
Prior art keywords
task
program
chained list
interim
state
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
Application number
CN200810115891XA
Other languages
English (en)
Other versions
CN101299197A (zh
Inventor
冯备战
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuxi Vimicro Corp
Original Assignee
Wuxi Vimicro Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuxi Vimicro Corp filed Critical Wuxi Vimicro Corp
Priority to CN200810115891XA priority Critical patent/CN101299197B/zh
Publication of CN101299197A publication Critical patent/CN101299197A/zh
Application granted granted Critical
Publication of CN101299197B publication Critical patent/CN101299197B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种增删任务的方法和单元,方法包括:在任务链表中添加任务“维护临时Task链表”;当添加任务Task时,如果任务已进入Task运行,则将该Task添加到临时Task链表里,将该Task的状态置为未定状态;当删除Task时,如果任务已进入Task运行,则将该Task从Task链表移动到临时Task链表里,将该Task的状态置为删除状态;当系统运行任务“维护临时Task链表”时,检测临时Task链表,将其中状态是未定状态的Task移动到Task链表里,将其状态置为就绪状态;将临时Task链表中状态是删除状态的Task从临时Task链表里删除。本发明能避免重复增删任务的情况。

Description

一种增删任务的方法和单元
技术领域
本发明涉及计算机领域,尤其涉及一种增删任务的方法和单元。
背景技术
任务调度机制是实时操作系统的一个重要机制。各个需要运行的任务Task组成一任务链表,当进行任务调度时,调度算法首先实现优先级调度。系统按照优先级从高到低的顺序从就绪任务链表数组中寻找优先级最高的任务,据此实现优先级调度。若此优先级下只有一个就绪任务,则此就绪任务进入运行态;若此优先级下有多个就绪任务,则需采用轮换调度算法实现多任务轮流执行。
下面是一个常见的任务链表结构:
typedef structtag_TSysTaskLink{
intstatus;//Task的状态;
PFTaskFunc PInit;//在Task被添加时运行的程序,比如该Task的初始化;
PFTaskFunc PRun;//在Task里真正运行的程序,当各Task进行切换后,都是运行每个Task的PRun程序;
PFTaskFunc PFinalize;//当Task被删除时,将运行该程序,比如释放该task占用的资源;
structtag_TSysTaskLink*next;//指向后一个Task的Task指针;
struct tag_TSysTaskLink*previous;//指向前一个Task的Task指针;
}TSysTaskLink,*PTSysTaskLink;
任务运行起来后,当需要添加Task时,除了要将Task加入链表以外,还需要运行该Task的初始化程序;而当删除Task时,除了要将Task从链表中删除外,还要进行释放该Task占用的资源等步骤。由于运行初始化程序和释放资源需要一定时间,如果在初始化或释放过程中由于硬件产生中断,则初始化或释放会被打断;在中断里添加或删除Task时,有可能系统的中断连续来多次,造成添加Task或删除Task的嵌套执行,导致同一个Task被多次添加或删除,从而使程序报错,造成系统崩溃。
发明内容
本发明要解决的技术问题是提供一种增删任务的方法和单元,能够避免增删任务的过程中被打断,并且避免重复增删任务的情况。
为了解决上述问题,本发明提供了一种增删任务的方法,包括:
在任务链表中添加不能被中断的任务“维护临时Task链表”;
当添加任务Task时,如果任务已进入Task运行,则将该Task添加到临时Task链表里,将该Task的状态置为未定状态“TASK_PENDING”;
当删除Task时,如果任务已进入Task运行,则将该Task从Task链表移动到临时Task链表里,将该Task的状态置为删除状态“TASK_DELETE”;
当系统运行任务“维护临时Task链表”时,检测临时Task链表,将其中状态是未定状态的Task移动到Task链表里,将其状态置为就绪状态;将临时Task链表中状态是删除状态的Task从临时Task链表里删除。
进一步的,所述的方法还包括:
如果移动到Task链表的Task存在PInit程序则运行其PInit程序;如果从临时Task链表里删除的Task存在PFinalize程序则运行其PFinalize程序;
当满足以下各条件时本次“维护临时Task链表”任务结束:
临时Task链表中各Task都已被检测过;
未定状态“TASK_PENDING”的Task都已移动到Task链表,删除状态“TASK_DELETE”的Task都已从临时Task链表里删除;
移动到Task链表的Task中,存在PInit程序的Task的PInit程序已运行完毕;从临时Task链表里删除的Task中,存在PFinalize程序的Task的PFinalize程序已运行完毕;
所述PInit程序是在Task被添加时运行的程序;所述PFinalize程序是当Task被删除时将运行的程序。
进一步的,所述的方法还包括:
将未定状态的Task从临时Task链表移动到Task链表前,先判断该Task的PRUN是否为空,如果不为空则将该Task移动到Task链表;如果为空则判断该Task是否存在PInit程序,存在则运行其PInit程序后将其从临时Task链表删除,否则直接从临时Task链表删除;
所述PInit程序是在Task被添加时运行的程序;所述PRUN程序是在Task里运行的程序。
进一步的,所述的方法还包括:
将任务“维护临时Task链表”的优先级设置为次高。
进一步的,所述的方法还包括,如果系统未进入Task的运行,则:
当添加Task时直接将Task添加进Task链表,将该Task的状态置为就绪状态,如果该Task存在PInit程序则运行其PInit程序;
当删除Task时将Task直接从Task链表中删除,如果该Task存在PFinalize程序则运行其PFinalize程序;
所述PInit程序是在Task被添加时运行的程序;所述PFinalize程序是当Task被删除时将运行的程序。
本发明还提供了一种增删任务的单元,包括:存储模块、任务运行模块、任务添加模块和任务删除模块;
所述存储模块用于保存Task链表和临时Task链表;所述Task链表中包括不能被中断的任务“维护临时Task链表”;
所述任务添加模块用于当添加Task时,判断任务运行模块是否已进入Task运行,如果是则将该Task添加到临时Task链表里,将该Task的状态置为未定状态;
所述任务删除模块用于当删除Task时,判断任务运行模块是否已进入Task运行,如果是则将该Task从Task链表移动到临时Task链表里,将该Task的状态置为删除状态;
所述任务运行模块用于根据Task链表的次序切换任务,对于状态为就绪状态的Task,执行其PRun;当运行任务“维护临时Task链表”时,检测临时Task链表,将其中状态是未定状态的Task移动到Task链表里,将该Task的状态置为就绪状态;将临时Task链表中状态是删除状态的Task从临时Task链表里删除;
所述PRUN程序是在Task里运行的程序。
进一步的,所述任务运行模块还用于当移动到Task链表的Task存在PInit程序时运行其PInit程序;当从临时Task链表里删除的Task存在PFinalize程序时运行其PFinalize程序;
所述任务运行模块还用于当判断以下各条件都满足时,结束本次的“维护临时Task链表”任务:
临时Task链表中各Task都已被检测过;
未定状态“TASK_PENDING”的Task都已移动到Task链表,删除状态“TASK_DELETE”的Task都已从临时Task链表里删除;
移动到Task链表的Task中,存在PInit程序的Task的PInit程序已运行完毕;从临时Task链表里删除的Task中,存在PFinalize程序的Task的PFinalize程序已运行完毕;
所述PInit程序是在Task被添加时运行的程序;所述PFinalize程序是当Task被删除时将运行的程序。
进一步的,所述任务运行模块将未定状态“TASK_PENDING”的Task从临时Task链表移动到Task链表前,先判断该Task的PRUN是否为空,如果不为空则将该Task移动到Task链表;如果为空则判断该Task是否存在PInit程序,存在则运行其PInit程序后将其从临时Task链表删除,否则直接从临时Task链表删除;
所述PInit程序是在Task被添加时运行的程序;所述PRUN程序是在Task里运行的程序。
进一步的,将任务“维护临时Task链表”的优先级设置为次高。
进一步的,所述任务添加模块还用于当添加Task时,如果判断系统未进入Task的运行,则直接将Task添加进Task链表,将该Task的状态置为就绪状态“TASK_READY”,如果该Task存在PInit程序则运行其PInit程序;
所述任务删除模块还用于当删除Task时,如果判断系统未进入Task的运行,则将Task直接从Task链表中删除,如果该Task存在PFinalize程序则运行其PFinalize程序;
所述PInit程序是在Task被添加时运行的程序;所述PFinalize程序是当Task被删除时将运行的程序。
本发明的技术方案将任务运行时的增删任务分两步完成,其中比较耗时的第二步在特定任务运行时来完成,因此解决了在多任务情况下,添加删除Task时受限制的情况,并且解决了系统由于中断的频繁产生造成添加或删除Task导致的系统错误。本发明的优化方案提出为特定任务设置优先级,因此可以控制增删任务第二步的完成时机,更加灵活。
附图说明
图1为本发明提供的增删任务的单元的具体实施框图;
图2为本发明应用实例一的流程图;
图3为本发明应用实例二的流程图。
具体实施方式
下面将结合附图及实施例对本发明的技术方案进行更详细的说明。
本发明的核心思想是:增加一临时Task链表,并在系统中增加一个任务“维护临时Task链表”,该任务不可以被中断;从而使Task可以在中断里或在Task里进行动态添加和删除,避免了增删任务的过程中被打断,并且避免重复增删任务的情况。
在本发明中,任务有如下三种状态:
TASK_READY=0//就绪状态,当系统检测到该Task是就绪状态时,将运行该Task的PRun;
TASK_PENDING=1//未定状态,是Task没有被添加到“Task链表”,在“临时Task链表”里的状态;
TASK_DELETE=2//删除状态。
本发明提供的增删任务的方法包括:
在任务链表中添加任务“维护临时Task链表”;
当添加Task时,如果任务已进入Task运行,则将该Task添加到临时Task链表里,将该Task的状态置为未定状态“TASK_PENDING”;
当删除Task时,如果任务已进入Task运行,则将该Task从Task链表移动到临时Task链表里,将该Task的状态置为删除状态“TASK_DELETE”;
当系统运行任务“维护临时Task链表”时,检测临时Task链表,将其中状态是未定状态“TASK_PENDING”的Task移动到Task链表里,将其状态置为就绪状态“TASK_READY”;将临时Task链表中状态是删除状态“TASK_DELETE”的Task从临时Task链表里删除。
本方法还包括:如果移动到Task链表的Task存在PInit程序则运行其PInit程序;如果从临时Task链表里删除的Task存在PFinalize程序则运行其PFinalize程序。
其中,将Task从临时Task链表移动到Task链表时,可以是先将该Task添加到Task链表,然后将其从临时Task链表中删除,再运行该Task的Pinit程序;也可以是先将该Task添加到Task链表,然后运行该Task的Pinit程序,再将其从临时Task链表中删除。
其中,将未定状态“TASK_PENDING”的Task从临时Task链表移动到Task链表前,先判断该Task的PRUN是否为空,如果不为空则将该Task移动到Task链表;如果为空则判断该Task是否存在PInit程序,存在则运行其PInit程序后将其从临时Task链表删除,否则直接从临时Task链表删除。
本方法还包括:当满足以下各条件时本次“维护临时Task链表”任务结束:
临时Task链表中各Task都已被检测过;
未定状态“TASK_PENDING”的Task都已移动到Task链表,删除状态“TASK_DELETE”的Task都已从临时Task链表里删除;
移动到Task链表的Task中,存在PInit程序的Task的PInit程序已运行完毕;从临时Task链表里删除的Task中,存在PFinalize程序的Task的PFinalize程序已运行完毕。
本方法还可以包括:根据任务“维护临时Task链表”在Task链表里所有任务中的重要性设置其优先级;通常可以将其优先级设置为次高;实际应用中,如果系统中除了最高优先级的Task外,还有Task比“维护临时Task链表”重要或需要先运行,则可以将“维护临时Task链表”的优先级调低;如果系统中“维护临时Task链表”是最重要或需要最先运行的,则将其优先级调为最高;也就是说,可以灵活配置“维护临时Task链表”的优先级以满足不同系统的需求。
本方法还可以包括,如果系统未进入Task的运行,则:
当添加Task时直接将Task添加进Task链表,将该Task的状态置为就绪状态“TASK_READY”,如果该Task存在PInit程序则运行其PInit程序;
当删除Task时将Task直接从Task链表中删除,如果该Task存在PFinalize程序则运行其PFinalize程序。
其中,将Task添加到Task链表前,先判断该Task的PRUN是否为空,如果不为空则将该Task添加到Task链表;如果为空则不添加。
本方法还可以包括:系统根据Task链表的次序切换,当切换到每个具体的Task运行时,先检测该Task的状态,当Task的状态是“TASK_READY”时,该Task的PRun就被运行;否则不运行该Task的PRun程序。
所述PInit程序是在Task被添加时运行的程序;所述PFinalize程序是当Task被删除时将运行的程序;所述PRUN程序是在Task里运行的程序。
本发明提供的增删任务的单元如图1所示,包括:存储模块、任务运行模块、任务添加模块和任务删除模块;
所述存储模块用于保存Task链表和临时Task链表;所述Task链表中包括任务“维护临时Task链表”;
所述任务添加模块用于当添加Task时,判断任务运行模块是否已进入Task运行,如果是则将该Task添加到临时Task链表里,将该Task的状态置为“TASK_PENDING”;
所述任务删除模块用于当删除Task时,判断任务运行模块是否已进入Task运行,如果是则将该Task从Task链表移动到临时Task链表里,将该Task的状态置为“TASK_DELETE”;
所述任务运行模块用于根据Task链表的次序切换任务,对于状态为“TASK_READY”的Task,执行其PRun;当运行任务“维护临时Task链表”时,检测临时Task链表,将其中状态是“TASK_PENDING”的Task移动到Task链表里,将该Task的状态置为“TASK_READY”;将临时Task链表中状态是“TASK_DELETE”的Task从临时Task链表里删除。
所述任务添加模块、任务删除模块判断任务运行模块是否已进入Task运行可以但不限于是指:增删任务的单元还包括状态寄存器,包括表示“运行”和“未运行”的值;初始值为表示“未运行”的值;当任务运行模块进入Task运行时将该寄存器置为表示“运行”的值,结束Task运行时将该寄存器置为表示“未运行”的值。当然也可以用其它方式来判断任务运行模块是否已进入Task运行,比如发送询问信息给任务运行模块,任务运行模块返回指示是否已进入Task运行的反馈信息;再比如任务运行模块进入/结束Task运行时主动通知任务添加模块、任务删除模块等。
所述任务运行模块还用于:当移动到Task链表的Task存在PInit程序时运行其PInit程序;当从临时Task链表里删除的Task存在PFinalize程序时运行其PFinalize程序。
其中,所述任务运行模块将Task从临时Task链表移动到Task链表时,可以是先将该Task添加到Task链表,然后将其从临时Task链表中删除,再运行该Task的Pinit程序;也可以是先将该Task添加到Task链表,然后运行该Task的Pinit程序,再将其从临时Task链表中删除。
其中,所述任务运行模块将未定状态“TASK_PENDING”的Task从临时Task链表移动到Task链表前,先判断该Task的PRUN是否为空,如果不为空则将该Task移动到Task链表;如果为空则判断该Task是否存在PInit程序,存在则运行其PInit程序后将其从临时Task链表删除,否则直接从临时Task链表删除。
所述任务运行模块还用于当判断以下各条件都满足时,结束本次的“维护临时Task链表”任务:
临时Task链表中各Task都已被检测过;
未定状态“TASK_PENDING”的Task都已移动到Task链表,删除状态“TASK_DELETE”的Task都已从临时Task链表里删除;
移动到Task链表的Task中,存在PInit程序的Task的PInit程序已运行完毕;从临时Task链表里删除的Task中,存在PFinalize程序的Task的PFinalize程序已运行完毕。
其中,根据任务“维护临时Task链表”在Task链表里所有任务中的重要性设置其优先级;通常可以将其优先级设置为次高;实际应用中,如果系统中除了最高优先级的Task外,还有Task比“维护临时Task链表”重要或需要先运行,则可以将“维护临时Task链表”的优先级调低;如果系统中“维护临时Task链表”是最重要或需要最先运行的,则将其优先级调为最高;也就是说,可以灵活配置“维护临时Task链表”的优先级以满足不同系统的需求。
所述任务添加模块还用于当添加Task时,如果判断系统未进入Task的运行,则直接将Task添加进Task链表,将该Task的状态置为就绪状态“TASK_READY”,如果该Task存在PInit程序则运行其PInit程序;
所述任务删除模块还用于当删除Task时,如果判断系统未进入Task的运行,则将Task直接从Task链表中删除,如果该Task存在PFinalize程序则运行其PFinalize程序。
其中,所述任务添加模块将Task添加到Task链表前,先判断该Task的PRUN是否为空,如果不为空则将该Task添加到Task链表;如果为空则不添加。
下面用两个应用实例进一步说明本发明。
应用实例一为添加任务的整个流程,如图2所示,包括:
201、首先判断系统是否已进入Task的运行,如果是则进行步骤202,否则进行步骤204;
202、将要添加的Task添加进临时Task链表,将其状态置为未定状态;
203、当任务“维护临时Task链表”运行时,找到临时Task链表中状态为未定状态的任务;
204、判断该任务的PRUN程序是否为空,如果为空则进行步骤206,如果不为空则进行步骤205;
205、将Task添加进Task链表,将其状态置为就绪状态;
206、判断添加进Task链表的Task的PInit程序是否为空,如果为空则进行步骤208,否则进行步骤207;
207、运行PInit程序;
如果Task原先在临时Task链表中,则从步骤203后到步骤208前的任一步从临时删除Task链表中删除该Task;
208、Task添加完成。
应用实例二为删除任务的流程,如图3所示,包括:
301、首先判断系统是否已进入Task的运行,如果是则进行步骤302,否则进行步骤304;
302、将要删除的Task移动到临时Task链表,将其状态置为删除状态;
303、当任务“维护临时Task链表”运行时,找到临时Task链表中状态为删除状态的任务;
304、将Task从Task链表中删除;
305、判断删除的Task的PFinalize程序是否为空,如果为空则进行步骤307,否则进行步骤306;
306、运行PFinalize程序;
步骤304可以在步骤305、306后进行,也可以并行;
307、Task删除完成。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明的权利要求的保护范围。

Claims (10)

1.一种增删任务的方法,包括:
在任务链表中添加不能被中断的任务“维护临时Task链表”;
当添加任务Task时,如果任务已进入Task运行,则将该Task添加到临时Task链表里,将该Task的状态置为未定状态“TASK PENDING”;
当删除Task时,如果任务已进入Task运行,则将该Task从Task链表移动到临时Task链表里,将该Task的状态置为删除状态“TASK DELETE”;
当系统运行任务“维护临时Task链表”时,检测临时Task链表,将其中状态是未定状态的Task移动到Task链表里,将其状态置为就绪状态;将临时Task链表中状态是删除状态的Task从临时Task链表里删除。
2.如权利要求1所述的方法,其特征在于,还包括:
如果移动到Task链表的Task存在PInit程序则运行其PInit程序;如果从临时Task链表里删除的Task存在PFinalize程序则运行其PFinalize程序;
当满足以下各条件时本次“维护临时Task链表”任务结束:
临时Task链表中各Task都已被检测过;
未定状态“TASK PENDING”的Task都已移动到Task链表,删除状态“TASK DELETE”的Task都已从临时Task链表里删除;
移动到Task链表的Task中,存在PInit程序的Task的PInit程序已运行完毕;从临时Task链表里删除的Task中,存在PFinalize程序的Task的PFinalize程序已运行完毕;
所述PInit程序是在Task被添加时运行的程序;所述PFinalize程序是当Task被删除时将运行的程序。
3.如权利要求1所述的方法,其特征在于,还包括:
将未定状态的Task从临时Task链表移动到Task链表前,先判断该Task的PRUN是否为空,如果不为空则将该Task移动到Task链表;如果为空则判断该Task是否存在PInit程序,存在则运行其PInit程序后将其从临时Task链表删除,否则直接从临时Task链表删除;
所述PInit程序是在Task被添加时运行的程序;所述PRUN程序是在Task里运行的程序。
4.如权利要求1到3中任一项所述的方法,其特征在于,还包括:
将任务“维护临时Task链表”的优先级设置为次高。
5.如权利要求1到3中任一项所述的方法,其特征在于,还包括,如果系统未进入Task的运行,则:
当添加Task时直接将Task添加进Task链表,将该Task的状态置为就绪状态,如果该Task存在PInit程序则运行其PInit程序;
当删除Task时将Task直接从Task链表中删除,如果该Task存在PFinalize程序则运行其PFinalize程序;
所述PInit程序是在Task被添加时运行的程序;所述PFinalize程序是当Task被删除时将运行的程序。
6.一种增删任务的单元,其特征在于,包括:存储模块、任务运行模块、任务添加模块和任务删除模块;
所述存储模块用于保存Task链表和临时Task链表;所述Task链表中包括不能被中断的任务“维护临时Task链表”;
所述任务添加模块用于当添加Task时,判断任务运行模块是否已进入Task运行,如果是则将该Task添加到临时Task链表里,将该Task的状态置为未定状态;
所述任务删除模决用于当删除Task时,判断任务运行模块是否已进入Task运行,如果是则将该Task从Task链表移动到临时Task链表里,将该Task的状态置为删除状态;
所述任务运行模块用于根据Task链表的次序切换任务,对于状态为就绪状态的Task,执行其PRun;当运行任务“维护临时Task链表”时,检测临时Task链表,将其中状态是未定状态的Task移动到Task链表里,将该Task的状态置为就绪状态;将临时Task链表中状态是删除状态的Task从临时Task链表里删除;
所述PRUN程序是在Task里运行的程序。
7.如权利要求6所述的单元,其特征在于:
所述任务运行模块还用于当移动到Task链表的Task存在PInit程序时运行其PInit程序;当从临时Task链表里删除的Task存在PFinalize程序时运行其PFinalize程序;
所述任务运行模块还用于当判断以下各条件都满足时,结束本次的“维护临时Task链表”任务:
临时Task链表中各Task都已被检测过;
未定状态“TASK PENDING”的Task都已移动到Task链表,删除状态“TASK DELETE”的Task都已从临时Task链表里删除;
移动到Task链表的Task中,存在PInit程序的Task的PInit程序已运行完毕;从临时Task链表里删除的Task中,存在PFinalize程序的Task的PFinalize程序已运行完毕;
所述PInit程序是在Task被添加时运行的程序;所述PFinalize程序是当Task被删除时将运行的程序。
8.如权利要求6所述的单元,其特征在于:
所述任务运行模块将未定状态“TASK PENDING”的Task从临时Task链表移动到Task链表前,先判断该Task的PRUN是否为空,如果不为空则将该Task移动到Task链表;如果为空则判断该Task是否存在PInit程序,存在则运行其PInit程序后将其从临时Task链表删除,否则直接从临时Task链表删除;
所述PInit程序是在Task被添加时运行的程序;所述PRUN程序是在Task里运行的程序。
9.如权利要求6到8中任一项所述的单元,其特征在于:
将任务“维护临时Task链表”的优先级设置为次高。
10.如权利要求6到8中任一项所述的单元,其特征在于:
所述任务添加模块还用于当添加Task时,如果判断系统未进入Task的运行,则直接将Task添加进Task链表,将该Task的状态置为就绪状态“TASK_READY”,如果该Task存在PInit程序则运行其PInit程序;
所述任务删除模块还用于当删除Task时,如果判断系统未进入Task的运行,则将Task直接从Task链表中删除,如果该Task存在PFinalize程序则运行其PFinalize程序;
所述PInit程序是在Task被添加时运行的程序;所述PFinalize程序是当Task被删除时将运行的程序。
CN200810115891XA 2008-06-30 2008-06-30 一种增删任务的方法和单元 Expired - Fee Related CN101299197B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810115891XA CN101299197B (zh) 2008-06-30 2008-06-30 一种增删任务的方法和单元

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810115891XA CN101299197B (zh) 2008-06-30 2008-06-30 一种增删任务的方法和单元

Publications (2)

Publication Number Publication Date
CN101299197A CN101299197A (zh) 2008-11-05
CN101299197B true CN101299197B (zh) 2011-09-28

Family

ID=40079029

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810115891XA Expired - Fee Related CN101299197B (zh) 2008-06-30 2008-06-30 一种增删任务的方法和单元

Country Status (1)

Country Link
CN (1) CN101299197B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102591703B (zh) * 2011-01-10 2015-05-06 中兴通讯股份有限公司 操作系统的任务调度方法、装置及计算机
CN103488536B (zh) * 2013-09-29 2017-12-05 华为技术有限公司 任务调度方法、装置及操作系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5247677A (en) * 1992-05-22 1993-09-21 Apple Computer, Inc. Stochastic priority-based task scheduler
CN100334919C (zh) * 2005-03-25 2007-08-29 北京北方烽火科技有限公司 一种gmlc中多目标定位时用户上下文的管理方法
CN101178677A (zh) * 2007-11-09 2008-05-14 中国科学院计算技术研究所 一种计算机文件系统的快照方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5247677A (en) * 1992-05-22 1993-09-21 Apple Computer, Inc. Stochastic priority-based task scheduler
CN100334919C (zh) * 2005-03-25 2007-08-29 北京北方烽火科技有限公司 一种gmlc中多目标定位时用户上下文的管理方法
CN101178677A (zh) * 2007-11-09 2008-05-14 中国科学院计算技术研究所 一种计算机文件系统的快照方法

Also Published As

Publication number Publication date
CN101299197A (zh) 2008-11-05

Similar Documents

Publication Publication Date Title
KR100934533B1 (ko) 연산 처리 시스템, 컴퓨터 시스템 상에서의 태스크 제어 방법, 및 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
CN1973266B (zh) 对或涉及用于计算装置的操作系统的改进
TWI426452B (zh) Work processing device
JP5405320B2 (ja) 仮想計算機制御装置、仮想計算機制御方法及び仮想計算機制御プログラム
KR101255382B1 (ko) 운영체제에 친숙한 부트로더
CN100481009C (zh) 根据客户软件的特许级向虚拟机转移的系统、装置和方法
TWI416413B (zh) Work processing device
CN102027453B (zh) 用于在虚拟环境中优化中断处理的系统和方法
TWI426451B (zh) Work processing device
US20070033384A1 (en) Real-time embedded simple monitor method and computer product
GB2348306A (en) Batch processing of tasks in data processing systems
CN100530111C (zh) 一种多线程访问间接寄存器的调度方法
EP2219108A1 (en) System and method for executing a complex task by sub-tasks
CN102567090A (zh) 在计算机处理器中创建执行线程的方法和系统
CN101169737A (zh) 任务切换控制方法以及计算机系统
US20040098722A1 (en) System, method, and computer program product for operating-system task management
CN101299197B (zh) 一种增删任务的方法和单元
JP2005276097A (ja) 割り込み依頼プログラムおよびマイクロコンピュータ
CN101504615A (zh) 为任务死循环提供定位信息的方法和装置
US20030120712A1 (en) Task context switching RTOS
CN112286847A (zh) 一种提升系统外部中断响应速度的方法、装置和控制器
WO2004088481A2 (en) Mechanism for simultaneously operating multiple applications on a personal digital assistant implementing a palm operating system
WO2004114132A1 (ja) 割り込み制御方法、割り込み制御装置及び割り込み制御プログラム
WO2005010747A2 (en) Microcontroller with an interrupt structure having programmable priority levels with each priority level associated with a different register set
CN101770396B (zh) 实现Linux系统下擦写DMI数据的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: WUXI VIMICRO CO., LTD.

Free format text: FORMER OWNER: VIMICRO CORPORATION

Effective date: 20110126

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100083 16/F, SHINING BUILDING, NO. 35, XUEYUAN ROAD, HAIDIAN DISTRICT, BEIJING TO: 214028 610, NATIONAL IC DESIGN PARK (CHUANGYUAN BUILDING), NO. 21-1, CHANGJIANG ROAD, WUXI NEW DISTRICT, JIANGSU PROVINCE

TA01 Transfer of patent application right

Effective date of registration: 20110126

Address after: 214028 national integrated circuit design (21-1), Changjiang Road, New District, Jiangsu, Wuxi, China, China (610)

Applicant after: Wuxi Vimicro Co., Ltd.

Address before: 100083 Haidian District, Xueyuan Road, No. 35, the world building, the second floor of the building on the ground floor, No. 16

Applicant before: Beijing Vimicro Corporation

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110928

Termination date: 20170630

CF01 Termination of patent right due to non-payment of annual fee