前言
今年报考了11月份的软考高级:系统分析师。
考试时间为:11月9日。
倒计时:18天。
目标:优先应试,其次学习,再次实践。
复习计划第一阶段:扫平基础知识点,仅抽取有用信息,可有缺失,但得过眼。
第十七章:嵌入式系统分析与设计
内容总结
知识点 1: 嵌入式系统概述
- 概念:嵌入式系统是一种专用计算机系统,它将软件和硬件紧密结合,以满足特定的功能、可靠性、成本和体积要求。
- 解释:这种系统通常用于特定的应用场合,如家电、汽车、工业控制等,它具有高度的灵活性和专用性。
- 细节分项:
- 特点:
- 系统专用性强:针对特定应用设计,软硬件紧密结合。
- 实时性强:对外部事件能在限定时间内做出响应。
- 软硬件依赖性强:软硬件必须协同设计以满足性能要求。
- 处理器专用:为特定应用设计的处理器,通常具有低功耗、小体积等特点。
- 多种技术紧密结合:结合计算机技术、半导体技术等。
- 系统透明性:用户通常感知不到嵌入式系统的存在。
- 系统资源受限:存储容量、I/O设备和处理能力有限。
- 组成:
- 嵌入式处理器:系统的核心,如微处理器、微控制器等。
- 总线:连接处理器与其他部件的通道。
- 存储器:包括Cache、片内主存、片外主存等。
- I/O设备与接口:包括键盘、鼠标、触摸屏等输入设备和显示器、打印机等输出设备。
- 操作系统:通常采用微内核结构,负责资源管理和任务调度。
- 支撑软件:如窗口系统、网络系统、数据库管理系统等。
- 应用软件:直接与用户交互,体现系统功能。
- 特点:
知识点 2: 嵌入式数据库系统
- 概念:嵌入式数据库管理系统(EDBMS)是为嵌入式设备设计的数据库管理系统,用于移动信息设备如PDA、车载设备等。
- 解释:EDBMS解决了在移动计算环境下数据管理的问题,提高了应用系统的开发效率和可移植性。
- 细节分项:
- 使用环境特点:
- 设备移动性:设备位置经常变化。
- 网络频繁断接:网络连接不稳定。
- 网络条件多样化:不同的网络系统连接,带宽和延迟差异大。
- 通信能力不对称:上行和下行带宽差异大。
- 系统组成:
- 嵌入式数据库:独立于同步服务器和主数据库管理系统运行。
- 同步服务器:保证嵌入式数据库和主数据库中数据的一致性。
- 数据库服务器:主数据库和DMBS,如Oracle或Sybase。
- 连接网络:数据库服务器与同步服务器之间的固定网络连接。
- 关键问题:
- 数据一致性:采用乐观复制方法,通过冲突检测和协调恢复数据一致性。
- 高效事务处理:设计新的事务管理策略和算法以适应移动环境中的断接情况。
- 数据安全性:提供存取权限控制,防止数据信息泄漏和移动终端物理丢失后的数据泄密。
- 使用环境特点:
知识点 3: 嵌入式实时操作系统
- 概念:嵌入式操作系统(EOS)是运行在嵌入式系统上,支持嵌入式应用程序的操作系统,用于控制和管理硬件和软件资源。
- 解释:EOS具有微型化、高代码质量、专业化、强实时性和可裁减配置等特点,适用于要求实时响应的场合。
- 细节分项:
- 相关概念:
- 功能正确:系统处理外部事件能产生正确结果。
- 时间正确:系统处理外部事件必须在预定周期内完成。
- 死线(deadline):系统处理外部事件的最迟时间界限。
- 实时系统:同时满足功能正确和时间正确的系统。
- EOS特点:
- 微型化:占用尽量少的系统资源。
- 代码质量高:程序代码精简,存储空间宝贵。
- 专业化:适应多种硬件平台,支持多种开发平台。
- 实时性强:广泛应用于要求实时响应的场合。
- 可裁减和可配置:根据应用特点和具体要求进行配置和裁减。
- 一般结构与组成:
- 硬件抽象层:为内核提供方便移植的宏定义接口。
- 内核:包含调度器、内核对象和内核服务。
- 中间件:面向特定应用领域的软件,具有平台无关性。
- 实时性能指标:
- 任务切换时间:CPU控制权由一个任务转移给另一个任务所需的时间。
- 中断处理时间:包括中断延迟、中断响应、中断恢复和任务响应时间。
- 系统响应时间:从发出处理请求到系统做出应答的时间。
- 多任务调度算法:
- 软时限与硬时限:软实时系统不要求在特定时间内完成,硬实时系统则要求。
- 周期性与非周期性:周期性任务每隔固定时间执行一次,非周期性任务执行时间不可预期。
- 可抢占与非抢占:可抢占算法允许任务被打断,非抢占算法则不允许。
- 静态与动态:静态算法优先级在设计时确定,动态算法优先级在运行中确定。
- 单处理器与多处理器:单处理器算法处理单个处理器,多处理器算法处理多个处理器。
- 在线与离线:离线调度算法在系统运行前确定调度信息,在线调度算法在运行中动态收集。
- 相关概念:
知识点 4: 优先级反转
- 概念:优先级反转是指在多任务系统中,高优先级任务因等待低优先级任务持有的资源而暂时降低优先级的现象。
- 解释:这种现象可能导致高优先级任务的执行时间延长,从而影响系统的实时性能。
- 细节分项:
- 无界优先级反转:中优先级任务抢占低优先级任务,导致高优先级任务被阻塞,时间不确定。
- 有界优先级反转:低优先级任务占用资源的时间是已知的,因此优先级反转的时间也是有限的。
- 解决方法:
- 优先级继承协议:低优先级任务在持有高优先级任务请求的资源时,临时提升其优先级。
- 优先级天花板协议:每个资源都有一个优先级天花板值,当任务请求资源时,如果资源的优先级天花板高于任务优先级,则任务的优先级提升至该天花板值。
知识点 5: 嵌入式系统开发
- 概念:嵌入式系统开发是一个涉及软硬件设计的复杂过程,目的是创建满足特定应用需求的系统。
- 解释:开发过程包括需求分析、系统架构设计、软硬件子系统设计、选择嵌入式操作系统(EOS)、选择编程语言等。
- 细节分项:
- 开发平台:
- 交叉编译环境:软件在宿主机上开发,在目标机上运行。
- 宿主机系统:用于开发嵌入式软件的通用平台。
- 目标机系统:被开发的嵌入式系统。
- 开发流程:
- 项目计划:定义项目目标和资源。
- 可行性分析:评估项目的技术可行性和成本效益。
- 需求分析:收集和分析用户需求,形成系统规格说明书。
- 概要设计:确定系统的基本架构和设计原则。
- 详细设计:设计系统的各个组件和接口。
- 编程:编写和测试代码。
- 下载和调试:将程序下载到目标机上进行调试。
- 固化:将最终程序固化到存储器中。
- 测试:进行全面的系统测试。
- 运行:在实际环境中运行系统。
- 软硬件协同设计:
- 设计方法:软硬件协同设计方法,如软硬件功能均衡分配。
- 协同设计工具:如POLIS、COSYMA、Chinook、PTOLEMY和TSS等。
- 系统分析与设计:
- 需求分析:确定系统的功能和性能需求。
- 系统架构设计:设计系统的硬件架构和软件架构。
- 硬件子系统设计:选择处理器和外围设备,设计电路和接口。
- 软件子系统设计:任务划分、调度策略、可调度性分析。
- EOS选择:根据系统需求选择合适的嵌入式操作系统。
- 编程语言选择:选择适合嵌入式开发的编程语言。
- 低功耗设计:
- 硬件低功耗设计:如板级电路设计、选择低功耗处理器、总线设计、接口驱动电路设计。
- 软件低功耗设计:如编译优化、软件与硬件的协同设计、算法优化。
- 开发平台:
写在最后
以上均为粗看教程的总结,目的不是为了百分之百准确,而是为了过手过脑,有所印象。
但是如有发现谬误,感谢各位随时指出。
– 欢迎点赞、关注、转发、收藏【我码玄黄】,各大平台同名。