试题三(25 分)阅读以下关于嵌入式软件体系架构的叙述,在答题纸上回答问题1 至问题3。某公司承担了一项宇航嵌入式设备的研制任务。本项目除对硬件设备环境有很高的要求外,还要求支持以下功能:(1)设备由多个处理机模块组成,需要时外场可快速更换(即LRM 结构);(2)应用软件应与硬件无关,便于软硬件的升级;(3)由于宇航嵌入式设备中要支持不同功能,系统应支持完成不同功能任务间的数据隔离;(4)宇航设备可靠性要求高,系统要有故障处理能力。公司在接到此项任务后,进行了了反复论证,提出三层栈(TLS)软件总体架构,如图3-1所示,并将软件设计工作交给了李工,要求其在三周内完成软件总体设计工作给出总体设计方案。
【问题2】(10 分)在 TLS 软件架构的基础上,关于选择哪种类型的嵌入式操作系统问题,李工与总工程师发生了严重分歧。李工认为,宇航系统是实时系统,操作系统的处理时间越快越好,隔离意味着以时间作代价,没有必要,建议选择类似于VxWorks5.5 的操作系统;总工程师认为,应用软件间隔离是宇航系统安全性要求,宇航系统在选择操作系统时必须考试这一点,建议选择类似于Linux 的操作系统。请说明两种操作系统的主要差异,完成表3-1 中的空白部分,并针对本任务要求,用200字以内的文字说明你选择操作系统的类型和理由。 表3-1 两种操作系统的主要差异
参考答案:两种操作系统的差异见下表。
选择类似于Linux 的嵌入式操作系统。理由如下: (1)Linux 操作系统是一种安全性较强的操作系统。内核工作在系统态,应用软件工作在用户态,可以有效防止应用软件对操作系统的破坏。 (2)Linux 操作系统调度的最小单位是线程,线程归属于进程,进程具有自己独立的资源。进程通过存储器管理部件(MMU)实现多功能应用间隔离。 (3)嵌入式Linux 操作系统支持硬件抽象,可有效实现TLS 结构,并将硬件抽象与操作系统分离,可方便实现硬件的外场快速更换。