虹软驱动一面
7/27官网投递
8/20笔试
一面 9/1 腾讯会议 40min 个人感觉是一般公司里项目和八股问的最细的,问题比较有水平。
自我介绍
项目介绍
基础
Linux设置开机自启的方法。
内核态驱动中频繁对GPIO口拉高和拉低的操作,有什么需要注意的地方。比如间隔2ms拉高拉低,本质上是对寄存器的操作,可以从执行的顺序和编译器优化的角度分析。
IIC和SPI区别
通过IIC配置外设失败了,一般从哪几种角度出发排查。
UART通信,设计协议,怎么考虑,有哪些字段必须包含。如果收到连续10帧数据,怎么解析出报文。如果数据里面有包尾的数据,这种情况怎么处理。
驱动开发中访问物理地址/寄存器地址。ioremap的时候要注意什么,比如说size有没有什么对齐的要求。
用户数据到内核/内核数据到用户,调什么API。内核主动向用户发送,一般用什么方式?
调试方式有哪些
Linux下中断有哪些需要注意的。
下半部一般几种方式。
.c代码最终生成.elf过程有哪些阶段,这几种阶段产物的后缀名。
sizeof的作用。在编译还是运行阶段执行的。sizeof和strlen区别。
静态库和动态库的优缺点有哪些?
堆和栈的区别,哪些数据存堆哪些存栈?
定义1MB静态全局数组,且未初始化,会对elf有明显的增加吗?
A进程向0x12345678写入数据,B进程可以从这读到数据吗?需要读到,有什么方式?
什么情况用消息队列?什么情况用共享内存?传YUV图像,发控制命令呢?
共享内存的读写时系统调用有几次?
父子进程了解吗,fork创建子进程,子进程可以访问父进程已经打开的文件句柄吗?
平时开发有没有遇到段错误,栈溢出这些问题?
static关键字的作用,举例。
静态局部变量,多次调用这个变量,这个变量会初始化一次还是多次。
简单的方法判断CPU大小端配置。如0x12345678
冒泡和快速的平均时间复杂度。
反问。
#通信硬件2024笔试面试经验##虹软科技求职进展汇总#我d秋招记录