Linux Framebuffer驅動框架之二軟件架構(未完待續)

/************************************************************************************************************************************/

 原創作品,轉載時請務必以超鏈接形式標明文章原始出處:http://blog.csdn.net/gqb666/article/details/12918547,作者:gqb666  
/************************************************************************************************************************************/

工作上的事太忙了,導致哥的Linux Framebuffer驅動系列博客擱淺了一段時間,今天興致來了,開工。上篇博文《Linux Framebuffer 驅動框架之一概念介紹及LCD硬件原理》,主要描述了Framebuffer的概念及LCD硬件原理,文本將重點介紹Linux Framebuffer驅動框架的軟件構架,從框圖的形式直觀顯現其各層次間的關係。如下圖所示,看看Framebuffer的軟件架構到底長什麼樣子:


                          圖framebuffer設備驅動的軟件架構

   Framebuffer幀緩衝設備給用戶態提供的讀寫接口file_operations實際由fbmem.c文件裏的特定file_operatins結構對象來提供,而特定幀緩衝設備fb_info結構體的註冊、註銷及其中成員的維護,尤其是fb_ops中的成員函數的實現則由對應的xxxfb.c文件實現,fb_ops中的成員函數最終會操作LCD控制器的寄存器。

   接下來以Linux 2.6.37爲例,畫出各結構關係的UML圖,及簡單描述下從應用程序到驅動的流程。




   實際上通過框圖我們一眼就看出了其架構,但不能僅浮於表面,各個數據結構的含義及函數的實現纔是我們的重頭戲,好吧,讓我們揭開她神祕的面紗,看清本質,下轉《Linux Framebuffer 驅動框架之三相關核心數據結構(待續)》。

發佈了41 篇原創文章 · 獲贊 38 · 訪問量 42萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章