未分类题
某水电站根据安全监控需要决定采用嵌入式工控微机进行实时多任务安全监测。该系统有32路模拟量输入、96路开关量、16路脉冲量输入和水位落差量输入,产生显示信息、报警信号、监测报表和水位传感器控制信号等输出。该水电站安全监测系统具有以下几个特点:对各种模拟量、开关量、脉冲量、水位落差量等数据量监测,事实上只是周期性地重复执行相应各个任务模块。
监视对象比较固定,系统硬件规模相对固定不变。尽可能允许把所有软件都固化在EPROM中。人机交互作用内容固定,即由操作人员通过键盘去调用此系统中所存入相应应用程序,不会去修改应用程序。基于以上安全监测系统特点,该水电站技术研发部门准备选用现有工业控制机系统及现成各种模板等硬件,由本部门开发人员自行开发软件。
所开发软件主要包括:应用程序,即按各类输入/输出量采集、处理、显示、报警和制表等功能分别作为若干任务块,由这些任务组成应用程序。多任务嵌入式实时操作系统,用来协调各任务资源分配与管理,管理任务之间联系与多任务操作。
[问题1]根据以上安全监测系统特点,技术研发人员郭工程师提出了一个自行编制简化“多任务嵌入式实时操作系统”方案,以适应于协调管理硬件资源和监测对象实际需求,其中只保留了标准多任务实时操作系统核心功能,例如CPU管理、中断管理和外设管理等。请在200字以内简要说明郭工程师提出简化“多任务嵌入式实时操作系统”可能具有哪些优点。
[问题2]设计简化多任务嵌入式实时操作系统时,由于多个任务均可能要求占用CPU这个关键资源,因此CPU任务管理是一个非常重要设计内容。在该嵌入式实时操作系统中,作为占用资源基本单位,任务总共有五个状态,分别是休眠状态、就绪状态、运行状态、等待状态和延时等待状态。在任何时候,一个任务只会处于其中某一个状态。请根据图6-8中已给出信息将(1)~(5)空缺处填写完整。

[问题3]在该水电站安全监测系统中,数据采集任务(Collect_task)把所采集数据送入一单缓冲区,计算任务(Calculate_task)从该单缓冲区中取出数据进行计算。以下是利用信号量机制实现两个任务共享单缓冲区C语言形式化描述程序。请将程序代码中(6)~(9)空缺处以及(10)空缺处内容填写完整。int sr=0'int (6) :main(){cobeginCollect_task();Calculate_task();coend}Collect_task(){ While(采集工作未完成){ 采集一个数据, P(se), 将数据送入缓冲区中: (7) ,}}Calculate_task(){While(计算工作未完成){(8) ,从缓冲区中取出数据:(9)进行数据计算送入缓冲区中,}}如果以上程序中“int sf=0;”语句不小心被改写成“ints{=-1;”,那么系统运行时将会进入(10)状态。
【参考答案】
问题1:①可加快该操作系统开发周期,并使其更易于维护,②减少操作系统占有内存容量,便于固化,③减少操作系统运行开销(例如......
(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)