职位题库

嵌入式软件工程师面试题库

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

456 道题目建议用时 1368 分钟专项面试练习

全部题目 456 道题

433

Linux 启动过程中,BootLoader(U-Boot)主要负责哪些工作?典型启动流程是什么?U-Boot 如何加载内核和设备树并跳转到内核?

考察候选人对嵌入式Linux启动链路的整体理解,包括BootLoader职责、启动阶段划分以及内核与设备树的加载跳转机制。
434

什么是原子操作?它解决了什么问题?Linux 中常见的原子操作有哪些?原子操作适合保护一组复杂操作吗?如果不适合,应该用什么?

考察对原子操作语义、适用边界及替代同步机制的理解,判断候选人能否正确选择并发保护手段。
435

在单核 CPU 上,如果当前正在执行低优先级任务,此时高优先级实时任务进入就绪态,CPU 会如何调度?如果当前处于禁止抢占、关中断或不可抢占临界区,会发生什么?

考察对单核实时调度、抢占时机以及禁止抢占/关中断对调度延迟影响的理解。
436

Tasklet 执行过程中如果需要访问共享数据,应该如何保证临界区安全?为什么不能简单使用互斥锁?应该使用自旋锁的哪种变体?

考察对软中断/tasklet 执行上下文、睡眠限制以及自旋锁变体选择的理解。
437

Linux 中的互斥锁主要解决什么问题?它与自旋锁相比有什么区别?

考察对互斥锁与自旋锁语义、适用上下文和性能取舍的理解。
438

请先做一个自我介绍,并说明你与这个岗位最相关的技术经历。

考察候选人的表达条理性、与岗位的匹配度,以及能否在短时间内突出与嵌入式开发相关的核心经历。
439

请结合你简历中的项目,讲一下某个功能的具体实现细节。

考察候选人是否真正参与过项目,能否讲清模块划分、关键流程、技术选型理由与调试过程。
440

请讲讲FreeRTOS的任务调度机制,以及你在项目中是如何使用它的。

考察对RTOS核心机制的理解深度,以及能否把机制知识与实际工程使用结合起来。
441

请对比IIC和SPI的总线协议,并说明各自适合什么场景。

考察对常用板级总线在电气特性、时序、速率和拓扑上的理解,以及选型判断能力。
442

你期望从事的技术方向是什么?能否接受加班?

考察候选人的方向匹配度、稳定性与对工作强度的真实预期。
443

请介绍你最近做的嵌入式项目,并说明你负责的模块边界以及与其他模块的接口约定。

考察候选人能否清晰描述项目目标、硬件平台与系统架构,明确个人职责边界,并说明模块间输入输出、时序与验收标准,判断其工程闭环能力。
444

如果Flash里的程序偶尔跑飞或跳到未知地址,你会如何排查?

考察候选人对HardFault、复位原因、栈与向量表、链接脚本、DMA/中断破坏等底层问题的系统排查能力,以及按复现路径缩小范围的工程方法。
返回面试题库