职位题库

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

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

157 道题目建议用时 471 分钟专项面试练习

全部题目 157 道题

61

请介绍一下你的项目。

考察候选人对项目的熟悉程度、技术深度以及解决问题的能力。
62

你的第一个项目是否使用了RTOS?如果没有,有没有写简单的任务调度?

考察候选人对实时操作系统和任务调度的理解,以及实际应用经验。
63

请画图说明你的任务调度设计,并解释为什么这样画。

考察候选人的系统设计能力、绘图表达能力以及沟通解释能力。
64

请用VSCode写一道滑动窗口求平均值的代码。

考察候选人的编程能力、算法基础以及代码调试能力。
65

volatile关键字的作用是什么?在驱动读取寄存器时为什么必须使用volatile?

考察对volatile关键字的理解,特别是在嵌入式驱动开发中用于防止编译器优化、确保每次访问都从内存或寄存器读取。
66

static、const、volatile三个关键字在嵌入式中的核心用法是什么?

考察对C语言关键字的综合理解,特别是在嵌入式开发中的典型应用场景。
67

指针数组与数组指针、函数指针与指针函数的区别是什么?

考察对C语言复杂指针声明的理解,这是嵌入式开发中阅读底层代码和编写驱动的基础。
68

结构体内存对齐规则是什么?如何计算大小并优化内存占用?

考察对结构体内存布局的理解,嵌入式开发中常需优化内存使用和访问效率。
69

中断服务函数有哪些限制?为什么不能做耗时操作、调用printf?

考察对中断处理机制的理解,嵌入式开发中中断服务函数的编写至关重要。
70

当需要同时监控多个串口和网络套接字的数据到达状态时,为什么通常不采用轮询每个文件描述符的方式,而是选择使用IO多路复用机制?

考察候选人对轮询与IO多路复用机制的本质区别、适用场景及嵌入式资源约束的理解。
71

I/O多路复用能避免频繁占用CPU,那它在嵌入式场景下相比 select、poll,为什么更常选用 epoll?

考察候选人对select、poll、epoll在实现机制、性能特征和嵌入式适用性上的差异理解。
72

在嵌入式设备实际部署中,如何应对某个串口因线路接触不良导致 epoll_wait 长期无响应的问题?

考察候选人在真实嵌入式部署中处理IO异常、超时和硬件故障的工程能力。
返回面试题库