海康威视二面面经(Linux 开发方向)

二面主要集中在 项目深挖Linux 驱动/内核 上,整体感觉是面试官想通过具体问题,判断我对项目的理解深度,以及对底层知识的掌握情况。下面记录一下问题,供大家参考。

一、项目深挖类问题

  1. 你在项目里负责的具体模块是什么?
  2. 这个模块里遇到过哪些性能瓶颈?你是怎么解决的?
  3. 如果驱动出问题,你是如何定位的?有没有用过 dmesgstraceperf 之类的工具?
  4. 内核态和用户态交互,你是怎么实现的?(比如 ioctlread/writemmap
  5. 如果要在驱动里做缓存,怎么保证和用户态数据一致?

👉 总结:二面更关注你是不是自己“做过”,而不是“看过”。面试官会根据你的回答往下追问,比如你说“调过性能”,就会问你用过哪些 profiling 工具,数据是怎么分析的。

二、Linux 驱动相关问题

  1. 字符设备驱动和块设备驱动有什么区别?
  2. 驱动加载的流程(insmodinitexit)。
  3. 驱动里申请内存常见方式(kmallocvmallocget_free_pages)的区别。
  4. 中断处理机制:上半部、下半部、tasklet、workqueue 区别。
  5. 如果一个驱动需要支持阻塞 I/O,你会怎么实现?

三、Linux 内核相关问题

  1. 内核空间和用户空间的区别。
  2. 系统调用是怎么实现的?
  3. 内核里内存管理方式,伙伴系统(buddy system)和 slab 分配器。
  4. 进程调度策略(CFS、RT 调度)。
  5. 虚拟地址到物理地址的转换过程(MMU + 页表)。

四、面试官追问的几个细节

  • 你在项目中有没有自己写过驱动,还是只是移植?
  • 如果设备初始化失败,你会怎么 debug?
  • Linux 下如何查看设备树(dts)并调试?
  • 有没有遇到过内核 panic?你是怎么定位的?

五、个人感受

  • 海康的二面相比一面更“硬核”,不会问太多八股文,而是基于你的项目背景展开。
  • 如果你说自己做过驱动,那面试官一定会问你 probe 函数里具体干了什么。
  • 建议准备时一定要对自己简历上的项目逐行吃透,尤其是涉及 驱动、内核、性能调优 的部分。

总结一句话:海康二面主要是 项目深挖 + 驱动/内核基础,面试官会根据你的回答追问深度,所以准备的时候不仅要背知识点,更要回顾自己项目里“做过什么、为什么这样做、还有哪些可以改进”。

全网最全面的嵌入式八股文专栏:https://www.nowcoder.com/creation/manager/columnDetail/mPZ4kk

全部评论

相关推荐

牛客83265014...:完了,连现在都没开始面,13号投的是不是晚了
秋招的第一个offer,...
点赞 评论 收藏
分享
海康 算法工程师 25k*15 硕士海归
点赞 评论 收藏
分享
评论
1
6
分享

创作者周榜

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