已解析题目
影石 Insta360相关面试题
一个 I2C 传感器在新板子上如何从设备树到驱动到用户态 bring up?
这题考新板传感器 bring-up 的全链路能力,回答要覆盖硬件确认、设备树描述、驱动匹配、寄存器验证和用户态接口。
Linux 驱动如何用异步通知把设备数据准备好这件事通知用户程序?
这题考 Linux 驱动事件通知机制,回答要讲清用户进程开启异步通知、驱动维护 fasync 队列、数据就绪时发送信号并由用户再读取数据。
FreeRTOS 每个任务为什么需要自己的栈,任务切换时要保存哪些上下文?
这题考任务隔离和上下文切换基础,回答要说明每个任务必须有独立调用栈,切换时保存寄存器、栈指针和调度状态。
FreeRTOS 低功耗是怎么做的,进入低功耗模式后如何唤醒?
这题考实时系统低功耗设计,回答要讲清 tickless idle、进入睡眠前判断、外部唤醒源和唤醒后的 tick/外设恢复。
设备树中配置 64 位地址空间时,reg 里的四个数字分别表示什么?
这题考设备树地址编码规则,回答要强调 reg 由父节点的 address-cells 和 size-cells 决定,四个数字通常是 64 位地址高低和 64 位长度高低。
驱动里申请 GPIO 或中断一般调用哪些接口,为什么不能直接操作寄存器?
这题考内核资源管理意识,回答要说明 GPIO 和 IRQ 应通过 descriptor、设备树和 devm 接口申请,不能绕过 pinctrl/irqchip 直接写寄存器。
多传感器数据如何融合,卡尔曼滤波如何解释?
这题考多传感器融合和卡尔曼滤波基本功,重点是状态预测、观测更新、噪声协方差、异步数据和异常值处理。