根据面经准备面试第7期-2026嵌入式软开(Linux)-cvte

1、说一下底层数据到应用层的整体流程

2、D-bus相对于其他进程间通信技术有哪些优势

3、考虑过D-bus效率上的问题吗?

4、GPIO电平有哪几种状态?

5、如何定义高电平,低电平和高阻态?鉴定标准是什么,高阻态的应用场景是什么?

6、如何加载设备树中的信息

7、驱动和设备树中的节点如何去配对,识别

8、配对好了之后,驱动完成了什么工作?

9、gpio有没有直接通过寄存器进行操作?

10、I2C如何进行传输?

11、I2C最多挂载几个设备,实际中能挂这么多的设备吗,为什么?

12、OTA升级,你使用的是什么OTA升级方式?版本号一定要高吗?

13、你的android版本是多少?

14、除了通过selinux来降低安全权限加入untrustapp,还有什么其他方式能够加入你的app?

15、如何判断两个浮点数相等?浮点数最多保持多少精度?

16、堆和栈的区别?

17、什么导致堆的碎片问题?堆如果申请1024字节,是连续的吗

18、STL用过哪些容器?

19、Vector的底层实现机制是什么?如何实现扩容?有没有效率更高的方式?

20、map的底层实现机制是什么?除了红黑树还有没有其他的底层实现方式?

21、手撕快速排序

1、说一下底层数据到应用层的整体流程

硬件层,传感器或外设生成原始数据,如gpio电平变化、adc采样值

驱动层,内核驱动程序通过设备数获取硬件资源、初始化硬件并读取数据、硬件中断触发、内核驱动读取寄存器数据、进行初步处理、并通过内核接口暴露数据

内核服务层,驱动将数据通过内核框架、字符设备接口向上传递,或通过中断轮询机制主动推送数据到内核缓存区,

内核与用户空间交互,数据通过系统调用,如read,网络协议栈 传递到用户空间

用户态中间件层、通过系统调用、read()或ipc机制、共享内存从内核获取数据、

应用层app调用中间层接口、获取数据,最终在ui展示或进行业务处理

2、D-bus相对于其他进程间通信技术有哪些优势

3、考虑过D-bus效率上的问题吗?

4、GPIO电平有哪几种状态?

gpio通用输入输出电平状态有三种

高电平:引脚电压接近电源电压(3.3>2)

低电平:low,引脚电压接近低电位

高阻态:引脚不主动驱动电平,呈现高阻态、电平由外部电路决定

5、如何定义高电平,低电平和高阻态?鉴定标准是什么,高阻态的应用场景是什么?

高电平:电压》芯片规格书定义的高电平阈值

低电平:电压《芯片规格书定义的低电平阈值

高阻态:引脚输出阻抗极高,不影响外部电平,相当于悬浮

高阻态应用场景:总线复用:如i2c的sda/scl线,通过开漏输出+上拉电阻实现多设备共享总线(某设备输出高阻态时不影响总线电平)

输入模式:gpio配置为输入时默认高阻态,避免引脚内部电路干扰外部信号

保护硬件

6、如何加载设备树中的信息

7、驱动和设备树中的节点如何去配对,识别

8、配对好了之后,驱动完成了什么工作?

9、gpio有没有直接通过寄存器进行操作?

10、I2C如何进行传输?

11、I2C最多挂载几个设备,实际中能挂这么多的设备吗,为什么?

12、OTA升级,你使用的是什么OTA升级方式?版本号一定要高吗?

13、你的android版本是多少?

14、除了通过selinux来降低安全权限加入untrustapp,还有什么其他方式能够加入你的app?

15、如何判断两个浮点数相等?浮点数最多保持多少精度?

16、堆和栈的区别?

17、什么导致堆的碎片问题?堆如果申请1024字节,是连续的吗

18、STL用过哪些容器?

19、Vector的底层实现机制是什么?如何实现扩容?有没有效率更高的方式?

20、map的底层实现机制是什么?除了红黑树还有没有其他的底层实现方式?

21、手撕快速排序

全部评论

相关推荐

评论
点赞
6
分享

创作者周榜

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