职位题库

嵌入式开发工程师面试题库

面向嵌入式开发工程师相关面试,围绕C语言、RTOS、中断、DMA、内存管理等主题展开练习,结合题目考察点、回答思路、参考答案和常见误区,梳理知识要点并练习清晰表达。

212 道题目建议用时 636 分钟专项面试练习

全部题目 212 道题

205

printf 调试会踩哪些坑?是否遇到过添加打印之后 bug 消失的现象?原理是什么?

考察候选人对调试工具本身影响程序行为的认识,尤其是时序竞争类问题的定位能力。
206

RTOS 任务栈溢出会有什么现象?怎么排查栈溢出问题?

考察对栈溢出现象与排查手段的掌握,是否能结合 RTOS 机制与调试工具定位问题。
207

固件开发中静态内存池与 malloc 动态内存如何选型?动态内存存在哪些弊端?

考察候选人对嵌入式内存分配策略的理解,是否能在可靠性与灵活性之间做工程取舍。
208

你项目里哪个变量加了volatile?为什么必须加?不加会出现什么具体现象?

考察候选人是否真正在项目中使用过volatile,而非只背定义;能否把机制、现象和代码落点连成一条线。
209

volatile和关中断分别解决什么问题?什么时候需要两个一起用?

考察候选人能否区分可见性/优化问题与原子性/竞态问题,并在真实场景中做取舍。
210

DMA接收缓冲什么时候可以复用?任务还没处理完又来一次数据怎么办?

考察候选人对DMA与CPU并发、缓冲生命周期和数据覆盖风险的理解,以及双缓冲设计能力。
211

DMA传输到一半出错,你会怎么恢复?请描述异常路径的处理思路。

考察候选人对异常路径的设计能力,能否从错误检测、状态清理、数据一致性和恢复策略几个层面思考。
212

队列满了应该丢新数据还是旧数据?请结合你的项目说明判断依据。

考察候选人能否从业务语义出发做设计取舍,而不是给出单一标准答案。
返回面试题库