4面 TOP10半导体大厂 问题总结

本人Linux 嵌入式开发3年 ,面试半导体TOP 10 某厂, 4次面试 ,最终拿到offer . 

现将 问题总结 ,供后人参考。

1:进程的地址空间分布 ,Linux系统调用应用程序的过程 ,几大数据段?

2:i2c spi 的 驱动模型 , 如何匹配,如何probe,如何设计中断处理函数 ,上半部和下半部,如何实现下半部?

3:为何irq 不能睡眠 ?要说最关键的地方

4:内核线程的同步方式有哪些?

5:模块之间是如何同步的消息的?

6:简述 你的 bring up 屏幕的流程 , 简述下 fb 驱动框架。

7:请描述下Linux V4l2 的 应用编程 ,了解过内核的 v4l2 架构嘛 ?csi数据是如何到V4L2 的?

8:input 的 如何注册到 内核的 ?数据是如何input_event () input_sync() ,后就可以上层收到数据了? 请简述其过程 。

9:请说下你目前做的项目。

10:知道Linux的内存分配嘛? 进程切换原理看过嘛?看过内核调度方面的代码嘛?

11:请说下 i2c 的时序。

12: jni是做什么的? hal 是什么? 如何设计一个hal ? 用过HIDL 嘛? 为何要出现HIDL ?

13:了解过 Android 架构分层嘛? freamwork jni hal 关系?

14: tasklet ,软中断 ,workqueue,wait_queue 区别 ?

15:Linux C 进程通信的方式 哪些?

16:死锁的原因是什么?要达到哪些条件会死锁?

17:修改开机启动logo , 用的是什么格式的图片? 为什么是 bmp格式的?

18:自旋锁 用过嘛? 使用场景?

19:简述 list_head 的 原理 ,有哪些api?

20:container_of ?

21:DMA 用过吗? 函数是什么? 内核的kmalloc 和 vmalloc 的 区别?

posted @ 2021-09-23 15:46  颜小雀  阅读(418)  评论(0编辑  收藏  举报