问题 问答题


阅读以下关于嵌入式系统技术的说明,根据要求回答问题1至问题3。
[说明]
某水电站根据安全监控的需要决定采用嵌入式工控微机进行实时多任务安全监测。该系统有32路模拟量输入、96路开关量、16路脉冲量输入和水位落差量输入,产生显示信息、报警信号、监测报表和水位传感器控制信号等输出。该水电站安全监测系统具有以下几个特点:
(1)对各种模拟量、开关量、脉冲量、水位落差量等数据量的监测,事实上只是周期性地重复执行相应的各个任务模块。
(2)监视的对象比较固定,系统硬件的规模相对固定不变。
(3)尽可能允许把所有软件都固化在EPROM中。
(4)人机交互作用的内容固定,即由操作人员通过键盘去调用此系统中所存入的相应应用程序,不会去修改应用程序。
基于以上安全监测系统的特点,该水电站技术研发部门准备选用现有的工业控制机系统及现成的各种模板等硬件,由本部门的开发人员自行开发软件。所开发的软件主要包括:
(1)应用程序,即按各类输入/输出量的采集、处理、显示、报警和制表等功能分别作为若干任务块,由这些任务组成应用程序。
(2)多任务嵌入式实时操作系统,用来协调各任务的资源分配与管理,管理任务之间的联系与多任务操作。

[问题2]
设计简化的多任务嵌入式实时操作系统时,由于多个任务均可能要求占用CPU这个关键资源,因此CPU的任务管理是一个非常重要的设计内容。在该嵌入式实时操作系统中,作为占用资源的基本单位,任务总共有五个状态,分别是休眠状态、就绪状态、运行状态、等待状态和延时等待状态。在任何时候,一个任务只会处于其中的某一个状态。请根据图6-8中已给出的信息将(1)~(5)空缺处填写完整。

答案

参考答案:

解析:等待状态 (2)就绪状态(3)休眠状态 (4)延时等待(5)运行状态这是一道要求读者根据实际应用环境分析嵌入式实时操作系统任务状态转换的综合理解题。本题的分析思路如下: ①任务是相应任务块程序关于某数据集合的可并发的一次运行活动,即任务通常作为占有资源的最基本单位。在本案例的实时操作系统中,任务总共有五个状态,分别是休眠状态、就绪状态、运行状态、等待状态和延时等待状态。而且试题中已给定“在任何时候,一个任务只会处于其中的某一个状态”。 ②其中,休眠状态指任务还没有初始化,或任务的执行已经结束,实际上对操作系统来说,该任务是不存在的。就绪状态是指任务已经具备了运行的条件,但是由于CPU正忙,正在运行其他的任务,因此暂时不能运行的状态。 ③运行状态表示此任务正在占有CPU,并在CPU上运行。处于就绪状态的任务只要把CPU控制权分配给它(任务调度),它就能够立刻执行。 等待状态是指任务因为正在等待某种事件的发生而暂时不能运行。例如,它正在等待某个I/O操作的完成,或者它同某个任务之间存在着同步关系,正在等待该任务给它发信号。此时,即使CPU已经空闲了下来,它也还是不能运行。处于等待状态的任务可以被某些系统调用或事件激发而转到就绪状态。当一个任务运行过程中需要等待某个事件或更高优先级的任务占用CPU时,将由运行状态转移到等待状态。由此可判断(1)空缺处填写的内容是“等待状态”,(2)空缺处填写的内容是“就绪状态”,(5)空缺处填写的内容是“运行状态”。 ④处于运行状态的任务如暂时不需要占用CPU资源,则可直接进入休眠状态;而当操作系统唤醒某一处于休眠状态的任务时,该任务将进入就绪状态,因此(3)空缺处可填入“休眠状态”等内容。 ⑤由图6-8中“延时时间到”以及(2)空缺处填写的内容是“就绪状态”、(5)空缺处填写的内容是“运行状态”可推理出,(4)空缺处可填人“延时等待”这一状态。 ⑥图6-14给出了一个完整的简化实时操作系统的任务状态转换图。

多项选择题
多项选择题