Linux Framebuffer驱动框架之二软件架构(未完待续)【转】
2017-08-04 10:38
204 查看
本文转载自:http://blog.csdn.net/gqb_driver/article/details/12918547
/************************************************************************************************************************************/
原创作品,转载时请务必以超链接形式标明文章原始出处:http://blog.csdn.net/gqb666/article/details/12918547,作者:gqb666
/************************************************************************************************************************************/
工作上的事太忙了,导致哥的Linux Framebuffer驱动系列博客搁浅了一段时间,今天兴致来了,开工。上篇博文《Linux Framebuffer 驱动框架之一概念介绍及LCD硬件原理》,主要描述了Framebuffer的概念及LCD硬件原理,文本将重点介绍linux Framebuffer驱动框架的软件构架,从框图的形式直观显现其各层次间的关系。如下图所示,看看Framebuffer的软件架构到底长什么样子:
![](http://img.blog.csdn.net/20131021195932718?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ3FiX2RyaXZlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
图1 framebuffer设备驱动的软件架构
Framebuffer帧缓冲设备给用户态提供的读写接口file_operations实际由fbmem.c文件里的特定file_operatins结构对象来提供,而特定帧缓冲设备fb_info结构体的注册、注销及其中成员的维护,尤其是fb_ops中的成员函数的实现则由对应的xxxfb.c文件实现,fb_ops中的成员函数最终会操作LCD控制器的寄存器。
接下来以Linux 2.6.37为例,画出各结构关系的UML图,及简单描述下从应用程序到驱动的流程。
实际上通过框图我们一眼就看出了其架构,但不能仅浮于表面,各个数据结构的含义及函数的实现才是我们的重头戏,好吧,让我们揭开她神秘的面纱,看清本质,下转《Linux Framebuffer 驱动框架之三相关核心数据结构(待续)》。
/************************************************************************************************************************************/
原创作品,转载时请务必以超链接形式标明文章原始出处:http://blog.csdn.net/gqb666/article/details/12918547,作者:gqb666
/************************************************************************************************************************************/
工作上的事太忙了,导致哥的Linux Framebuffer驱动系列博客搁浅了一段时间,今天兴致来了,开工。上篇博文《Linux Framebuffer 驱动框架之一概念介绍及LCD硬件原理》,主要描述了Framebuffer的概念及LCD硬件原理,文本将重点介绍linux Framebuffer驱动框架的软件构架,从框图的形式直观显现其各层次间的关系。如下图所示,看看Framebuffer的软件架构到底长什么样子:
图1 framebuffer设备驱动的软件架构
Framebuffer帧缓冲设备给用户态提供的读写接口file_operations实际由fbmem.c文件里的特定file_operatins结构对象来提供,而特定帧缓冲设备fb_info结构体的注册、注销及其中成员的维护,尤其是fb_ops中的成员函数的实现则由对应的xxxfb.c文件实现,fb_ops中的成员函数最终会操作LCD控制器的寄存器。
接下来以Linux 2.6.37为例,画出各结构关系的UML图,及简单描述下从应用程序到驱动的流程。
实际上通过框图我们一眼就看出了其架构,但不能仅浮于表面,各个数据结构的含义及函数的实现才是我们的重头戏,好吧,让我们揭开她神秘的面纱,看清本质,下转《Linux Framebuffer 驱动框架之三相关核心数据结构(待续)》。
相关文章推荐
- Linux Framebuffer驱动框架之二软件架构(未完待续)
- Linux Framebuffer驱动框架之二软件架构(未完待续)
- Linux Framebuffer 驱动框架之一概念介绍及LCD硬件原理
- Linux Framebuffer驱动框架剖析之二—驱动框架、接口实现和使用
- Linux音频设备驱动_OSS驱动框架(二)————OSS驱动架构代码vmsnd.c
- Linux Framebuffer 驱动框架之一概念介绍及LCD硬件原理
- Linux2.6.37 I2C驱动框架分析(三)
- Linux ALSA声卡驱动之六:ASoC架构中的Machine
- Linux的操作系统I2C驱动架构
- linux ------ 字符设备驱动框架
- 嵌入式Linux驱动笔记(七)------浅析tty与uart框架
- 网络驱动移植之解析Linux网络驱动的基本框架
- linux驱动框架--hwmon学习
- Linux ALSA声卡驱动之六:ASoC架构中的Machine
- Linux SPI总线和设备驱动架构之三:SPI控制器驱动
- Linux设备驱动之I2C架构分析
- linux下USB驱动框架分析
- 软件构架、架构和框架的区别
- linux3.2.0块设备及nandflash驱动框架
- 基于Linux的v4l2视频架构驱动编写