码迷,mamicode.com
首页 > 系统相关 > 详细

Linux-BSP-驱动-面试题大全

时间:2019-08-30 09:23:45      阅读:281      评论:0      收藏:0      [点我收藏+]

标签:usr   end   字符   问题   通信   lease   spi   rem   问题:   

1. 了解Linux的那个驱动?举例讲讲。

a.驱动注册过程:通过platform_bus, register_platform_device和register_platform_driver时都会在总线查询是否有匹配的设备或驱动,如果有就会调用driver的probe函数。
<延伸问题:device和driver通过什么匹配的?name或id_table(dtsi里面compatable字段)>
b.驱动类型:字符设备(fb显示设备)、块儿设备、网络设备
c.字符设备为例,驱动需要实现的函数fops:(open,read,write,release,store,show实现暴露给usr space的设备节点,suspend, resume并不是都实现这些)

2. 中断上半部下半部

top half: spinlock_irqsave做很少的工作,需要快速处理完,一般是关中断,清中断标志位,保存数据,调用中断下半部,开中断。
botomm half: tasklet, workque(可以睡眠可以调度)。
中断里用spin lock,不能用semphore(可以调度可以睡眠)

3. spinlock semphore mutex 区别

4. 内核空间和用户空间通信方式

5. boot传给kernel的参数

6. linux 进程调度方法

7. linux softirq

8. MMU作用

9. 访问外部寄存器的方法 *(volatile unsigned int*)ADDR ioremap

10. 实现container_of

11. 32位bit位反转

12. 进程上下文,中断上下文

Linux-BSP-驱动-面试题大全

标签:usr   end   字符   问题   通信   lease   spi   rem   问题:   

原文地址:https://www.cnblogs.com/feliz/p/11432937.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!