用于多任务操作环境的操作系统技术方案

技术编号:2893350 阅读:180 留言:0更新日期:2012-04-11 18:40
一种任务调度系统,包括用于一些方程的几个配置表,一个功能库,输入输出驱动器,用户生成的主次任务的任务定义表以及几个中断处理器的实时多任务操作系统的优先权队列阵列。该系统还包括按照优先权调度任务的装置,当完成每个库功能后就查询优先权队列,找出其所需资源可利用的优先级别最高的任务段予以执行,而对那些在同一优先权队列中的任务段则以轮流方式执行。(*该技术在2009年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术用于一种操作系统(OS),具体些说,用于多种复用器/多路分配器应用的一种多任务操作环境。本专利技术的操作系统以符号表示法和用户定义的可执行的模块配置成。每种实时应用都可以定义为一些各由一系列事件所组成的各别过程(如附图说明图1.0所示)。事件的类型和事件执行的时间则随应用场合而异。本专利技术的操作系统采用这种概说来定义和协调一个处理器内的处理活动。熟悉本技术的人将认识到,本专利技术的操作系统可以推广到许许多多处理体系结构。为了方便起见就一个用于灵活多路复用器/多路分配器系统(FMDM)的操作系统(以下叫做“FVOS”)来阐述本专利技术。FMDM体系结构具有三个处理器中央处理单元(PU)、输入输出处理器(IOP)和算术处理单元(APU)。IOP和APU尽量协助CPU摆脱费时的输入输出和运算操作。因此,如果这三个处理器同时都在执行事件(即所谓合同处理)则就可获得最优性能。FVOS以如下方式来达到这个目的。表1.0列出了可看作通用指令的功能库,当在一个任务定义表中把这些指令“链接”在一起,就定义了一个任务。功能库给用户提供了用符号表示法来安排其应用的工具。功能库包括算术、输入/输出(I/O)、任务生成/终止、内部测试、应用模块运行和复位这些功能。这就给用户提供了用来定义其任务的一组完善的功能。功能库还包括一个条件转移功能,使用户可以根据任务的状况和定时进行转移或在一个表内循环。IOP执行硬件规定的串行输入/输出功能。例如,一个来自硬件的输入不能在IOP正在执行另一个串行输入或输出时执行。APU计算出由应用规定的方程的结果。CPU完成所有其它功能、指派IOP和APU功能的执行启动合同处理。有些功能在其定义中必须包括一个地址指针。例如,RUN功能有一个指示应用模块位置的指针。INPUT和OUTPUT有一个指示相应的输入或输出缓存器的指针。一个列有功能和指针的表定义了一个任务。每个实现应用的任务都以这种相同的方式定义,并且还要指定一个相应的优先权。CPU对这些任务表进行译码,然后根据优先权和可利用资源将每个功能分别指派给某个处理器。用FMDM(三处理器)完成这个设想可以具有多至128个带有八级优先权中某一级的任务定义表。这只受可利用存贮器的限制,并且稍作改进就可扩展到多处理器系统中使用。“灵活”这个词适用于广泛应用于各种仪表舱的FMDM设计领域。其中有些应用如用作可以安装在飞行器上的通用/应答单元,将仪器设备联结至一套计算机设备中去。FMDM还可以用于控制自动控制和数据处理的数据采集。图3示出了一个有一个微处理器的FMDM配置的通用例子。FVOS设计使用户摆脱中断处理、I/O总线争用、系统定时等负担,并且同时还可以充分利用FMDM资源。FVOS提供了具有八级优先权的多任务环境、对时间苛求的事件作出几乎瞬时的响应以及通过简单的单行命令与任一个IOM通信的能力。本专利技术公开了一种任务调度系统,该系统包括一个用于有一些方程表几个配置表、一个功能库、输入和输出驱动器、用户生成的主次任务的任务定义表以及几个中断处理器的实时多任务操作系统的优先权队列阵列。该系统还包括按照优先权调度任务的装置,当完成每个库功能后就查询优先权队列,找出其所需资源可利用的优先级别最高的任务段予以执行,而对那些在同一优先权队列中的任务段则以轮流方式执行。该系统还包括具有更新装置和查询用户生成表装置的任务生成装置。该系统此外还包括将一个系统中所有主任务保持在未被锁完成、未被锁活动、未被锁等待、被锁活动、或被锁等待这些状态的装置,这装置拥有用来将诸任务锁定到一种使任务调度器只允许被锁任务得到执行而不考虑优先权执行的一般情况的操作模式的装置以及用来暂停对一个需要完成一个库功能的任务的操作的等待装置。图1为实时处理功能流程符号图。图2为FVOS功能结构示意图。图3简要地示出了一个简化的MCUFMDM配置的一般例子。图4为FVOS任务状态图。图5(a)、5(b)和5(c)为FVOS操作模式的方框图。图6为说明FVOS任务调度器功能流程的功能流程图。图7为说明FVOS任务生成和同步功能流程的功能流程图。图8示出了FVOS操作模式的时间安排。图9为一种采用本专利技术操作系统的控制系统可能配置情况的示意图。本专利技术构成一个具有为用户应用建立一个多任务环境的三层软件的操作系统(OS)。图2为本专利技术的一个具体实现的示意图,这是一个用于FMDM处理系统的操作系统或“FVOS”。如图2所示,第一层包括输入/输出(I/O)驱动器12和中断处理器14。任务生成和同步作为中断处理器之一来完成。下一层由一个任务调度程序器20组成,而最后一层则由一个功能库30组成。FVOS为灵活多路复用器/多路分配器(FMDM)的应用提供了一个多任务的操作环境,能够控制多任务的执行并且对在时间要求苛刻的事件上的高优先权的任务作出快速响应。在本专利技术的一个具体实现中,FVOS能够控制多到128个任务的执行。再参照图2,用户必需提供方程表、配置表和应用模块。这些表和模块用Z80宏汇编和FVOS宏功能库生成。对于熟悉这技术的人来说,显然本专利技术可以应用于如工业控制设备之类的许多类型的实时控制,但是下面对所推荐的具体实现所作的说明只是涉及与一个FMDM处理系统相连的操作系统的使用,FMDM处理系统与多个用来监视和控制的科学仪器设备相连,这些仪器设备同时都在实时工作。任务调度器20对中央处理单元(CPU)、算术处理单元(APU)和I/O资源进行协调。根据优先权,任务调度器20选择功能执行的优先权。随着每个功能的执行,控制返回到任务调度器20。任务调度器20下面还要进一步详细说明。功能库30由各种基本操作组成,将这些基本操作组织成一个序列便形成了一个任务。有些功能要使用I/O驱动器,而另一些功能则要使用APU。只有任务调度器20才能启动一个功能的执行。方程表、任务定义表以及应用模块不属于FVOS,而是在满足特殊的应用方面的FVOS操作的重要部分。方程表定义出将由运算功能解释、由APU执行的应用特殊数字方程。任务定义表是定义组成任务的基本顺序操作、相邻任务间的相应优先权以及每个任务的执行频率的应用特殊表。任务定义表由任务调度器20解释,并安排功能的执行。应用模块是应用所需的可连结的目标码模块。FVOS功能说明FVOS是以所有要执行的任务的自顶至下结构化的定义为基础的。各种应用都以结构化方式定义,而每种应用可以表示成一个或多个任务。对每个任务都指定一个相应的优先权,而每个任务都由功能库的一些功能(任务段)组成。这些任务段的执行将由CPU串行启动、由IOP和APU并行执行。FVOS的主功能部分是初始化模块(未示出)、任务调度器20以及功能库30。FVOS软件模块的详细分解和其相应功能示于表2。初始化模块为FVOS作好操作准备。任务调度器20指派所有任务的执行。功能库30含有用户可以用来定义应用和符号表示的命令。OS初始化在一个与FMDM联用时称为FVOS的OS具体实现中,初始化步骤如下。入口后,对FVOS进行初始化,零号任务(用户定义的第一个任务)置于最高优先权队列,进入任务调度器。FVOS初始化包括1)RAM清零,2)初始化各个指针,3)设置中断向量和优先权存储器,4)三页EEPROM移入RAM,5)设置次和主本文档来自技高网...

【技术保护点】
一种任务调度系统,包括用于具有诸方程表、诸配置表、一个功能库、诸输入输出驱动器、用户生成的各个主次任务的诸任务定义表以及诸中断处理器的一种实时多任务操作系统的一个优先权队列阵列,其组成为:按照优先权进行任务调度的装置,根据每个库功能的完 成查询诸优先权队列,提出其所需资源可用的优先权最高的任务段予以执行,相同优先权队列中的诸任务段则以轮流方式予以执行;任务生成装置,该装置包括更新装置和查询诸用户生成表装置,以及将一个系统中的所有主任务的状态保持在未被锁完成、未被锁活 动、未被锁等待、被锁活动、或被锁等待各状态的装置,该装置包括把诸任务锁定到一种使任务调度程序只允许那个被锁任务得到执行而不考虑优先权执行通常状态的操作模式的装置以及暂停对一个要求完成一个库功能的任务进行操作的等待装置。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:米切尔S弗莱彻理查德P西玛
申请(专利权)人:霍尼韦尔有限公司
类型:发明
国别省市:US[美国]

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

1