系统架构设计师常见高频考点总结之操作嵌入式系统

嵌入式系统最标准的定义,通常表述为:"嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能可靠性成本体积功耗等严格要求的专用计算机系统。

一、 实时操作系统 (RTOS) 核心考点

1. RTOS 的本质特征

  • 确定性 :这是 RTOS 与 Windows/Linux 等通用系统最大的区别。它不要求速度最快,但要求在规定的时间内必须完成 (硬实时)或大概率完成(软实时)。

  • 高可靠性:系统不能轻易崩溃。

2. RTOS 性能评价指标(高频考点)

在评估一个 RTOS 好不好时,我们看以下指标(越短越好):

  • 上下文切换时间:CPU 保存当前任务现场,加载下一个任务现场所需的时间。

  • 最大中断延迟:从中断信号到达 CPU,到 CPU 开始执行中断服务程序(ISR)第一条指令的时间。

  • 任务抢占时间:高优先级任务从就绪状态到实际获得 CPU 控制权的时间。

  • 调度算法的效率:调度器决定哪个任务运行所需的时间(通常要求 O(1)复杂度)。

注意(避坑): 任务执行时间 (取决于应用程序代码的复杂度和 CPU 主频,属于应用层面的事,不是操作系统本身的性能指标。

二、 任务调度与并发控制

1. 调度方式

  • 抢占式:高优先级任务一旦就绪,立即剥夺低优先级任务的 CPU 使用权(RTOS 标配)。

  • 轮转调度:同优先级的任务按时间片轮流执行。

2. 优先级反转 ------ 必考难点

  • 现象 :高优先级任务(H)被低优先级任务(L)阻塞,而中优先级任务(M)抢占了 L 的 CPU,导致 H 迟迟无法运行。结果是:中优先级的 M 先于高优先级的 H 执行了。

  • 原因:L 占用了 H 需要的共享资源(如互斥锁),但 L 优先级太低,一直被 M 抢占,导致 L 没法快速释放资源。

3. 解决方案

  • 优先级继承

    • 原理 :当高优先级任务 H 等待低优先级任务 L 持有的资源时,临时将 L 的优先级提升到与 H 相同

    • 效果:L 变成了"高富帅",中优先级任务 M 无法抢占 L。L 能尽快执行完临界区代码并释放资源,H 就能拿到资源运行。L 释放资源后,优先级恢复原状。

  • 优先级天花板

    • 原理:给每个共享资源设定一个"天花板优先级"(等于所有可能访问该资源的任务中的最高优先级)。任何任务只要访问该资源,其优先级直接提升到天花板级别。

根据常见软考题型,关于优先级继承的易错点通常如下,你可以对照复习:

  1. 优先级继承不能消除死锁:它只是解决优先级反转问题,死锁需要通过资源有序分配等方式解决。

  2. 优先级是动态变化的:只有在持有资源并阻塞了高优先级任务时才提升,不是一直提升。

  3. 不能解决所有反转:如果有复杂的嵌套锁,优先级继承可能会失效或变得极其复杂。

三、 中断与 I/O 管理

1. 中断 (Interrupt)

  • 中断向量表:内存中一块区域,存放中断服务程序的入口地址。

  • 中断处理流程:保护现场 → 执行 ISR 恢复现场 → 返回。

  • 不可重入函数 :在中断服务程序中,严禁调用不可重入函数(如 malloc, printf),否则会导致堆栈破坏或系统崩溃。

2. I/O 控制方式对比

  • 程序查询 (Polling):CPU 死循环检查,效率最低。

  • 中断驱动 (Interrupt-driven):外设准备好了通知 CPU,效率较高,适合少量数据。

  • DMA (直接存储器访问)最快 。CPU 只需要发个指令,数据由 DMA 控制器直接在外设与内存之间传输,不经过 CPU。适合大数据块传输(如硬盘读写、网络数据)。

四、 存储管理核心

1. Cache (高速缓存)

  • 解决 CPU 与主存速度不匹配的问题。利用了局部性原理(时间局部性、空间局部性)。

2. MMU (内存管理单元)

  • 虚拟地址映射:将逻辑地址转换为物理地址。

  • 内存保护:防止进程越界访问。

3. Flash (闪存)

  • NOR Flash:代码可直接运行 (XIP),适合存 Bootloader 和内核,读取快,写入慢。

  • NAND Flash:容量大,便宜,不能直接运行代码,需加载到 RAM,适合做硬盘存数据。

相关推荐
硬汉嵌入式1 天前
面向嵌入系统进阶书籍第4版:嵌入式系统设计,信息物理系统与物联网
嵌入式系统
BOB-wangbaohai19 天前
软考-系统架构师-嵌入式系统(二)
软考·嵌入式系统·系统架构设计师
BOB-wangbaohai19 天前
软考-系统架构师-嵌入式系统(一)
软考·系统架构师·嵌入式系统
brave and determined23 天前
传感器学习(day19):ToF传感技术:从测距到三维视觉革命
嵌入式硬件·学习·嵌入式系统·st·tof·嵌入式设计·flightsense
mutourend1 个月前
从 MCU 到云:使用 Nanopb 的轻量级序列化
嵌入式系统
黑客思维者2 个月前
嵌入式系统DevSecOps深度设计:构建固件级漏洞免疫体系的自动化管道
运维·自动化·devsecops·嵌入式系统
黑客思维者2 个月前
智能配电系统用户敏感数据脱敏详细设计:从静态遮盖到动态策略
c++·python·嵌入式系统·数据脱敏·智能配电系统
BreezeJuvenile3 个月前
实验二 呼吸灯功能实验
stm32·单片机·嵌入式系统·流水灯·实验
一枝小雨4 个月前
FreeRTOS内存分配与STM32内存布局详解
stm32·单片机·嵌入式·freertos·嵌入式系统·cortex-m3/m4