地平线 - 中间件
线上,80min
第一部分:项目(35min)
- 双目相机的深度值如何获取的
- 深度图像做了什么处理
- 激光雷达的数据如何坐标转化至图像的
- 激光雷达的数据形式是怎样,轮廓内部有没有点
- 如何进行特征线的提取的
- 关于无锁队列:无锁队列的实现机制共享屏幕画一下无锁队列里面包含哪些结构(画不出来)环形缓冲区如何判断队列数据已满入队和出队的时候如何保证线程安全队列满了如何通知,出队以后队列有空闲如何通知try_enqueue失败的时候。。。(听不懂问题)和有锁队列(互斥锁结构)的对比,性能为什么提升通过什么比较不同队列的性能
- 并发处理相关
- 设计中有没有考虑过更好的锁的设计
第二部分:实习(35min)
- 问嵌入式系统中的gdb调试方法(强调和ubuntu里面不同)
- 关于ZMQ:用了哪种方式进行数据收发(说了pubsub,问只用一种形式吗)是不是设计多进程,为什么不考虑共享内存进行进程间通信
- protobuf用的是哪种方式,为什么不用另一种方式
- 关于程序性能优化:如何优化程序的内存占用(如何优化程序cpu占用,多个模块之间互相耦合的情况下,无法设计单元测试,如何优化cpu占用
第三部分:八股和常规问题(5min)
- 智能指针
- 虚函数实现、子类调用虚函数时的步骤
- 技术栈
秋招目前为止最拷打的面试,隔天感谢信