小鹏汽车嵌入式面经

投的是小鹏的嵌入式软件岗,base 广州,整体感受是问得偏底层 + 车相关的东西穿插着问,没什么花活,但是抠细节,答得浅了会一直追问。

一面 技术面 大概50min

面试官应该是组里的开发,全程对着我简历问,最后留了几分钟反问。

  1. 自我介绍,挑一个你觉得最有挑战的项目讲一下
  2. 你这个项目里用的是什么 MCU?为什么选这一款,没选别的?
  3. C 语言里 volatile 关键字什么场景下要用?只在多线程里用吗?
  4. static 修饰局部变量、全局变量、函数分别是什么效果?
  5. 结构体内存对齐讲一下,为什么要对齐,不对齐会怎么样?
  6. 写一个宏,求两个数中的较大值,注意副作用问题
  7. 函数指针和指针函数的区别,分别怎么写?
  8. malloc 出来的内存在哪?free 之后指针要不要置 NULL,为什么?
  9. 你了解 CAN 通信吗?CAN 的帧结构说一下
  10. CAN 和 SPI、IIC 比,优势在哪?车上为什么用 CAN 多?
  11. UART 的波特率怎么算的?两边波特率不一致会怎么样?
  12. 中断里能不能用 printf?为什么?中断里应该尽量做什么、不做什么?
  13. 你简历上写了用过 FreeRTOS,任务调度是怎么调的?优先级反转听过吗?
  14. 怎么解决优先级反转?优先级继承和优先级天花板的区别
  15. 写一道题:反转一个单链表,要求递归和非递归都写一下
  16. 反问环节

写代码这块我递归版本写得磕磕巴巴,非递归倒还行,面试官没说啥就让我下一题了,当时心里没底,结果还是过了。

二面 技术面 大概1h10min

二面感觉是更资深的,问得比一面深,开始往操作系统和驱动那块挖了。

  1. 上来先让我讲项目,但是问得很细,追到一个具体的 bug 是怎么定位的
  2. Linux 下进程和线程的区别?从内核角度看它们到底有啥不同?
  3. fork 之后父子进程共享什么、不共享什么?写时复制是怎么回事?
  4. 进程间通信方式都有哪些,你项目里实际用过哪种,为什么选它?
  5. 共享内存为什么快?它和消息队列比,劣势在哪?
  6. mmap 内部是怎么工作的?和 read/write 比有什么不一样?
  7. Linux 的虚拟内存了解吗?页表是几级的?TLB 是干嘛的?
  8. 缺页中断的整个流程讲一下
  9. 一个程序从执行 a.out 到 main 函数被调用之前,系统都做了哪些事?
  10. GDB 你常用哪些命令?core dump 文件怎么用 gdb 分析?
  11. 一个程序跑着跑着 CPU 占用 100% 了,你怎么排查?
  12. 一个进程内存一直涨,你怎么定位是哪里泄漏的?
  13. 写一道题:实现一个简单的环形缓冲区(ring buffer),考虑多线程读写
  14. 上面那道题的写指针和读指针怎么判断空和满?
  15. 如果要做无锁的怎么改?知道 CAS 吗?
  16. 反问

环形缓冲区那道题我写的有锁版本,无锁那个只说了个思路,没真的写出来。面试官还行,没揪着我不放。

三面 应该算交叉面 大概45min

三面感觉是别的组的,问得反而没二面深,但是问得杂,车的东西问得多了一些。

  1. 你为什么投嵌入式?为什么投车这个方向?
  2. 你对智能驾驶/智能座舱了解多少?平时关注吗?
  3. AUTOSAR 听过吗?了解 CP 和 AP 的区别吗?
  4. 功能安全 ISO 26262 知道吗?ASIL 等级是分几级的?
  5. 车上一个 ECU 死机了会怎么样?有什么机制能让它恢复?
  6. 看门狗了解吗?独立看门狗和窗口看门狗的区别?
  7. 你做过 bootloader 吗?说一下 bootloader 大概干了哪些事
  8. OTA 升级你的理解,A/B 分区是干嘛的?
  9. C++ 你熟吗?讲一下虚函数表是怎么实现多态的
  10. 智能指针 shared_ptr 内部是怎么计数的?循环引用怎么解决?
  11. 你以后想做底层驱动还是应用?为什么?
  12. 你有没有别的 offer,怎么排序的?
  13. 期望薪资多少?base 能接受哪些城市?
  14. 反问

三面整体氛围比较轻松,就是聊聊,但是 AUTOSAR 和功能安全那块我答得不太行,本科确实没接触过太多车规的东西,就老老实实说了不太熟,面试官也没为难,说没事儿可以入职再补。

整体下来感受是:

面经看再多也只是看个题型,但是底子打好了,临场推一推也能答个七七八八。当年我也是刷了一堆面经心里还是没底,真正救命的还是基础,多刷题不如把一个知识点彻底搞透。

顺嘴说一句啊。

我自己春招那会儿也是面经看了一堆心里还是没底,后来索性把自己面过的厂、踩过的坑都整理出来,慢慢就攒成了一个专栏。

现在 32 篇 / 12w+ 字,还在更新。C 语言陷阱、操作系统、RTOS、Linux 驱动、通信协议、硬件基础——嵌入式面试基本会问的方向都有。

4.7w+ 同学看过,3300+ 订阅,数据摆这儿。

如果你也是那种面经基础有点薄、想一次性系统梳理一遍的,可以去看看。早订便宜,内容只会越加越多,价格后面也会涨。

🔗 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM

全部评论

相关推荐

大象1113:RM竞赛实力这么强,转正都转不了,这公司得多强?要求的多高?
点赞 评论 收藏
分享
评论
1
8
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务