当前位置: 首页 > 专利查询>浙江大学专利>正文

Java操作系统中定时任务的实现方法技术方案

技术编号:2850004 阅读:527 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种Java操作系统中定时任务的实现方法。在Java操作系统中,定任任务对于实时任务是不可缺少的,多任务系统具有实时处理功能,主要表现在当一个用户作业包含某些控制实时终端设备的任务时,系统能对外部信号作出及时响应,并使之与实时终端设备有关的任务能按一定时间关系和逻辑关系协调工作。定时任务使任务需要按用户规定时间建立和周期性的重复执行。本发明专利技术对嵌入式系统环境,尤其是面向嵌入式系统的Java操作系统,有重大意义。

【技术实现步骤摘要】

本专利技术涉及实时任务处理技术,特别是涉及一种java操作系统中实时任务的实现方法。
技术介绍
操作系统的实时性是操作系统的一个重要特征,是实时控制计算机软、硬件系统的核心。它随着实时多任务计算机系统软件的形成而诞生,随着实时多任务系统要求的提高而发展。以数字计算机为中心的实时多任务操作系统已经在工业、交通、能源、银行、科学研究和科学试验、国防等各个领域发挥了极其重要的作用。实时操作系统是操作系统的一个重要分支。它应属于操作系统的研究范畴。实时操作系统与通用操作系统有共同的一面,但在功能、性能、安全保密及环境适应能力等方面,还有其独特的一面。实时操作系统是指具有实时特性,能支持实时控制系统工作的操作系统,它可将系统中的各种设备有机地联系在一起并控制它们完成既定的任务。实时操作系统的首要任务是利用一切可利用的资源完成实时控制任务,其次才着眼于提高计算机系统的使用效率。实时操作系统的一个重要特点就是要满足对时间的限制和要求。在实时系统中,时间就是生命,这与通用操作系统有显著的差别。除个别系统外,实时操作系统都就是多道程序的操作系统。实时数字控制系统是实时操作系统的主要生存环境和工作环境,实时操作系统控制实时系统的各种设备共同完成任务。实时控制系统属于控制系统的研究范畴。从功能而言,控制系统可被定义为对能量或其他媒体流量等进行调节的装置。实时控制系统是一种能接收数据、加工处理并可将处理结果及时予以反馈的环境控制系统。实时控制系统由以下四大部分构成数字采集。它用来收集、接收或录入系统工作所必要的信息,或进行信号检测;加工处理。它对收集、接收或录入的信息(包括信号检测的结果)进行加工处理,得出控制系统工作所必要的参数或作出决定,然后进行输出、记录或显示;操作控制。它根据加工处理设备所输出的信息(包括输出信号)采取适当措施或动作,以达到控制或适应环境的目的;反馈处理。它监督执行机构的执行结果,并将该结果馈送至信号检测或数据接收设备,以便系统根据反馈情况进一步采取措施,达到控制的预期目的。
技术实现思路
本专利技术的目的在于提供一种java操作系统中定时任务的实现方法。本专利技术解决其技术问题采用的技术方案如下1)基本数据结构①任务标识号任务标识号用来标识任务,起到任务名的作用,它的取值范围为0~255,两个任务不能有相同的非零标识号,但唯独标识号为零的任务可以有多个;②实时任务的状态根据任务的状态,将实时任务的状态分成运行状态、就绪状态、挂起状态、潜伏状态运行状态任务获得处理机,正在运行;就绪状态只要获得处理机,任务即可运行;挂起状态由于某种原因,任务即使得到处理机也无法继续执行,只有待此种原因撤销后,任务才有获得处理机的权利;潜伏状态任务建立之前和撤销以后的状态;③实时任务的优先级任务的状态是调度时决定任务能否被选中投入运行的主要依据;就绪任务取得处理机的先后次序是由任务的优先级来规定的;④任务控制块任务控制块是任务的标志,任务系统根据任务控制块而感知任务的存在,各种任务调用命令的操作对象就是任务的任务控制块;任务控制块是表征任务存在的唯一实体,当任务系统收回了任务的任务控件块后,任务就被撤销了,当建立一个新任务时,任务系统为它分配一个空的任务控制块,并填入此任务有关的外部特性信息,这时任务便存在于系统之中;任务系统对于各个任务进行调度、控制和管理,也都是根据每个任务的任务控制块进行的; ⑤任务控制块队列按任务的执行情况,根据任务的优先级将任务控制块组织成三种任务控制块队列活动队列、就绪队列、空队列⑥用户任务排队表实时任务将它与时间有关的信息记录在用户任务排队表⑦定时任务链一个作业中所有定时任务的任务控制块串成一个链,链中各定时任务任务控制块的排队原则为根据任务定时时间由小到大顺序排列,定时时间相同的任务的任务控制块的排列次序取决于任务请求排队时间的先后2)定时任务的执行过程(1)插入定时任务链①操作系统扫描用户任务排队表②如果任务排列表的时间迟于当前系统时间,执行,进行插入操作,否则退出③在定时任务链中查找要插入的位置④插入用户任务排队表(2)唤醒定时任务时钟中断程序负责唤醒延迟链上的到时任务,将它们解挂,并从延迟链上撤下使之处于就绪状态,步骤如下①时钟中断程序扫描定时任务链②是否有到时任务,如果没有则退出③有到时的任务,将该任务控制块的状态设为就绪状态④将该任务控制块插入到就绪队列中本专利技术的有益效果是实现简单,系统开销小,较小的系统响应时间,在规定的响应时间内响应并处理异步事件的请求,高度可靠性,异常情况下系统能及时正确处置,保证完成任务或最重要的任务,能及时对外部信号作出响应,并使之与实时终端设备有关的任务能按一定时间关系和逻辑关系协调工作,使任务需要按用户规定时间建立和周期性的重复执行。附图说明附图是实时任务调度流程图具体实施方式在实施实时任务调度时,具体方式如下 1)基本数据结构①任务标识号任务标识号用来标识任务,起到任务名的作用,它的取值范围为0~255,两个任务不能有相同的非零标识号,但唯独标识号为零的任务可以有多个;②实时任务的状态运行状态任务获得处理机,正在运行;就绪状态只要获得处理机,任务即可运行;挂起状态由于某种原因,任务即使得到处理机也无法继续执行,只有待此种原因撤销后,任务才有获得处理机的权利;潜伏状态任务建立之前和撤销以后的状态;③实时任务的优先级任务的状态是调度时决定任务能否被选中投入运行的主要依据;就绪任务取得处理机的先后次序是由任务的优先级来规定的;任务的优先级反映了它想获得其执行结果的急切程度。一般情况下,任务调度程序总是挑选优先级最高的任务运行。任务优先级范围为0~255,其中0优先级为最高,不同任务可以有相同的优先级。在创建一个任务时,必须指定其优先级。若未指定,系统就自动取当前任务的优先级为新任务的优先级。④任务控制块任务控制块是任务的标志,任务系统根据任务控制块而感知任务的存在,各种任务调用命令的操作对象就是任务的任务控制块;任务控制块是表征任务存在的唯一实体,当任务系统收回了任务的任务控件块后,任务就被撤销了,当建立一个新任务时,任务系统为它分配一个空的任务控制块,并填入此任务有关的外部特性信息,这时任务便存在于系统之中;任务系统对于各个任务进行调度、控制和管理,也都是根据每个任务的任务控制块进行的;任务控制块也是用户任务与操作系统交换信息的通信区。当用户任务向系统申请系统资源,如内存储区、输入输出设备时,需将有关申请请求的内容填入任务控制块之中。然后再提交给系统,而系统在完成用户提出的某些申请或操作后,也是将有关返回信息送入任务的任务控制块,而由任务从任务控制块中获取信息。任务控制块的主要内容包括用户任务的运行现场信息,任务本身的外部特性信息和管理任务控制块的有关信息三部分,如下所示。现场信息保存用户任务运行现场信息中各寄存器或累加器的内容,保存用户任务程序计数器的内容;任务外部特征信息用户任务标识号,用户任务状态,用户任务优先级;管理控制信息任务调用命令字,任务与系统通信区,任务控制块连接字。⑤任务控制块队列按任务的执行情况,根据任务的优先级将任务控制块组织成三种任务控制块队列活动队列、就绪队列、空队列。用户作业内的任务数由用户指定,系统装配程序根据任务数本文档来自技高网
...

【技术保护点】
一种java操作系统中定时任务的实现方法,其特征在于:1)基本数据结构①任务标识号任务标识号用来标识任务,起到任务名的作用,它的取值范围为0~255,两个任务不能有相同的非零标识号,但唯独标识号为零的任务可以有多个; ②实时任务的状态根据任务的状态,将实时任务的状态分成运行状态、就绪状态、挂起状态、潜伏状态运行状态:任务获得处理机,正在运行;就绪状态:只要获得处理机,任务即可运行;挂起状态:由于某种原因,任务即使得 到处理机也无法继续执行,只有待此种原因撤销后,任务才有获得处理机的权利;潜伏状态:任务建立之前和撤销以后的状态;③实时任务的优先级任务的状态是调度时决定任务能否被选中投入运行的主要依据;就绪任务取得处理机的先后次序是 由任务的优先级来规定的;④任务控制块任务控制块是任务的标志,任务系统根据任务控制块而感知任务的存在,各种任务调用命令的操作对象就是任务的任务控制块;任务控制块是表征任务存在的唯一实体,当任务系统收回了任务的任务控件块 后,任务就被撤销了,当建立一个新任务时,任务系统为它分配一个空的任务控制块,并填入此任务有关的外部特性信息,这时任务便存在于系统之中;任务系统对于各个任务进行调度、控制和管理,也都是根据每个任务的任务控制块进行的;⑤任务控制块队列   按任务的执行情况,根据任务的优先级将任务控制块组织成三种任务控制块队列:活动队列、就绪队列、空队列;⑥用户任务排队表实时任务将它与时间有关的信息记录在用户任务排队表;⑦定时任务链一个作业中所有定时任务的 任务控制块串成一个链,链中各定时任务任务控制块的排队原则为:根据任务定时时间由小到大顺序排列,定时时间相同的任务的任务控制块的排列次序取决于任务请求排队时间的先后;2)定时任务的执行过程(1)插入定时任务链①操作系统 扫描用户任务排队表;②如果任务排列表的时间迟于当前系统时间,执行,进行插入操作,否则退出;③在定时任务链中查找要插入的位置;④插入用户任务排队表;(2)唤醒定时任务时钟中断程序负责唤醒延迟链上的到时任 务,将它们解挂,并从延迟链上撤下使之处于就绪状态,步骤如下:①时钟中断程序扫描定时任务链②是否有到时任务,如果没有则退出③有到...

【技术特征摘要】
1.一种java操作系统中定时任务的实现方法,其特征在于1)基本数据结构①任务标识号任务标识号用来标识任务,起到任务名的作用,它的取值范围为0~255,两个任务不能有相同的非零标识号,但唯独标识号为零的任务可以有多个;②实时任务的状态根据任务的状态,将实时任务的状态分成运行状态、就绪状态、挂起状态、潜伏状态运行状态任务获得处理机,正在运行;就绪状态只要获得处理机,任务即可运行;挂起状态由于某种原因,任务即使得到处理机也无法继续执行,只有待此种原因撤销后,任务才有获得处理机的权利;潜伏状态任务建立之前和撤销以后的状态;③实时任务的优先级任务的状态是调度时决定任务能否被选中投入运行的主要依据;就绪任务取得处理机的先后次序是由任务的优先级来规定的;④任务控制块任务控制块是任务的标志,任务系统根据任务控制块而感知任务的存在,各种任务调用命令的操作对象就是任务的任务控制块;任务控制块是表征任务存在的唯一实体,当任务系统收回了任务的任务控件块后,任务就被撤销了,当建立一个新任务时,任务系统为它分配一个空的任务控制块,并填入此任务有关的外部特...

【专利技术属性】
技术研发人员:陈天洲戴红军黄彧
申请(专利权)人:浙江大学
类型:发明
国别省市:86[中国|杭州]

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

1