校招 未知部门 / 硬件工程师 / 一面

[面试日期] 2026-09-02 [面试时长] 未知
[学校背景] 蚌埠坦克学院 | 双非 [学历背景] 未知
[发布人] 面试之星官方收录
<h2>27届小米嵌入式软件开发一面 常规八股文轰炸</h2> <p><strong>小米嵌入式软件开发一面面经|粉丝投稿</strong></p><p><strong>基本信息</strong></p><ul><li>公司:小米</li><li>岗位:嵌入式软件开发</li><li>轮次:技术一面</li><li>形式:视频面试,约 45–50 分钟</li><li>来源:近期粉丝投稿整理</li></ul><p><strong>整体感受</strong></p><p>这轮一面偏基础 + 原理,没有明显压人式的连环追问,但覆盖面比较广。RTOS、C/C++、裸机启动、网络基础、操作系统概念都会问到,中间穿插 1~2 道手撕代码。项目会问,但不会像二面那样深挖架构和排障细节,更多是确认你有没有真正做过、能不能把原理讲清楚。</p><h1>更多大厂面经总结,基础八股文汇总:</h1><p><a href="https://gw-c.nowcoder.com/api/sparta/jump/link?link=https%3A%2F%2Fwww.nowcoder.com%2Fcreation%2Fmanager%2FcolumnDetail%2FmPZ4kk">https://www.nowcoder.com/creation/manager/columnDetail/mPZ4kk</a></p><p><strong>面试强度</strong></p><p>整体属于中等偏上。基础题占比高,答不上来容易连续失分;手撕代码难度不大,但要写得规范、边界条件要想全。RTOS 和 C 语言是重点,网络/OS 各 2~3 题,属于“会就秒答、不会就卡”的类型。准备时建议把 FreeRTOS 任务调度、IPC、同步机制,以及 C 内存、指针、预处理相关概念过一遍,项目里用到的总线/外设也要能随口讲出来。</p><h1>1. 手撕代码:反转单链表(迭代或递归均可)</h1><h1>2. 手撕代码:判断链表是否有环,若有则找出环的入口节点</h1><h1>3. FreeRTOS 任务调度器是如何选择下一个要运行任务的?</h1><h1>4. 消息队列、信号量、事件组分别适合什么通信/同步场景?</h1><h1>5. 什么是优先级反转?常见解决方案有哪些?</h1><h1>6. 临界区保护有哪些方式?关中断和互斥锁各有什么优缺点?</h1><h1>7. 看门狗的作用是什么?嵌入式里喂狗策略一般怎么设计?</h1><h1>8. 为什么中断服务函数里不宜调用阻塞式 API?</h1><h1>9. DMA 传输和中断方式传输各有什么优缺点?</h1><h1>10. <code>static</code> 关键字在 C 语言中有哪些典型用法?</h1><h1>11. 用 <code>const</code> 和用 <code>#define</code> 定义常量有什么区别?</h1><h1>12. 指针和引用(C++)的主要区别是什么?</h1><h1>13. 结构体为什么要内存对齐?如何减少 padding?</h1><h1>14. <code>volatile</code> 关键字的作用和使用场景是什么?</h1><h1>15. 栈和堆的区别?什么情况容易导致栈溢出?</h1><h1>16. 函数指针有哪些实际应用场景?</h1><h1>17. C++ 中 <code>static_cast</code> 和 <code>dynamic_cast</code> 的区别?</h1><h1>18. <code>shared_ptr</code> 和 <code>unique_ptr</code> 的区别及适用场景?</h1><h1>19. TCP 四次挥手的过程?TIME_WAIT 为什么要等 2MSL?</h1><h1>20. HTTP 和 HTTPS 的区别?TLS 握手大致流程?</h1><h1>21. TCP 粘包/拆包是什么问题?常见解决办法有哪些?</h1><h1>22. 进程和线程的区别?多线程会共享哪些资源?</h1><h1>23. 死锁是什么?产生死锁的四个必要条件?</h1><h1>24. 系统调用和普通函数调用有什么区别?</h1><h1>25. MCU 从上电复位到进入 <code>main</code> 函数,大致经历了哪些步骤?</h1><p></p>
AI 推荐面试题