- 博客(3)
- 收藏
- 关注
原创 支持异步通知的globalfifo驱动
前言驱动程序运行在内核空间中,应用程序运行在用户空间中,两者是不能直接通信的。但在实际应用中,在设备已经准备好的时候,我们希望通知用户程序设备已经ok,用户程序可以读取了,这样应用程序就不需要一直查询该设备的状态,从而节约了资源,这就是异步通知。好,那下一个问题就来了,这个过程如何实现呢?简单,两方面的工作。一 驱动方面 在设备抽象的数据结构中增加一个struct fasync_struct的指针
2017-11-13 20:46:30 785 1
原创 Linux内核模块
1.Linux内核模块简介Linux内核如此之大,如何将需要的部分包含在内核中。 把需要的功能编译到Linux内核中。这样会产生两个问题,一生成的内核很大,二如果在现有的内核中新增或者删除功能,将重新编译内核。 Linux提供一种机制,称为模块(Module)。其具有特点是模块本身不被编译入内核映像,从而控制内核的大小。模块一旦被加载,就和内核中的其他部分相同。 2.Linux内核模块程序结构(1)
2017-11-02 10:09:46 163
原创 Linux 设备驱动的重点、难点
Linux 设备驱动的重点、难点1.Linux学习重点和难点● 编写 Linux 设备驱动要求工程师有非常好的硬件基础,懂得 SRAM、 Flash、 SDRAM、磁盘的读写方式,UART、 I2C、 USB 等设备的接口以及轮询、中断、 DMA 的原理,PCI 总线的工作方式以及 CPU 的内存管理单元( MMU)等。 ● 编写 Linux 设备驱动要求工程师有非常好的 C 语言基础,能灵活地运
2017-11-02 09:46:08 950
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人