精品乱码一区内射人妻无码-亚洲中文AⅤ中文字幕在线-免费不卡国产福利在线观看-国产综合无码一区二区色蜜蜜

          您現(xiàn)在的位置:智能制造網(wǎng)>技術中心>關于framebuffer

          直播推薦

          更多>

          企業(yè)動態(tài)

          更多>

          推薦展會

          更多>

          關于framebuffer

          2009年03月26日 18:35:50人氣:1144來源:杭州市立宇泰電子有限公司

          作者:魏永明    轉(zhuǎn)貼自:IBM    點擊數(shù):481    更新時間:2006-5-8    文章錄入:admin

          FrameBuffer 是出現(xiàn)在 2.2.xx 內(nèi)核當中的一種驅(qū)動程序接口。這種接口將顯示設備抽象為幀緩沖區(qū)。用戶可以將它看成是顯示內(nèi)存的一個映像,將其映射到進程地址空間之后,就可以直接進行讀寫操作,而寫操作可以立即反應在屏幕上。該驅(qū)動程序的設備文件一般是 /dev/fb0、/dev/fb1 等等。比如,假設現(xiàn)在的顯示模式是 1024x768-8 位色,則可以通過如下的命令清空屏幕:

          $ dd if=/dev/zero of=/dev/fb0 bs=1024 count=768

          在應用程序中,一般通過將 FrameBuffer 設備映射到進程地址空間的方式使用,比如下面的程序就打開 /dev/fb0 設備,并通過 mmap 系統(tǒng)調(diào)用進行地址映射,隨后用 memset 將屏幕清空(這里假設顯示模式是 1024x768-8 位色模式,線性內(nèi)存模式):

          int fb;unsigned char* fb_mem;fb = open ("/dev/fb0", O_RDWR);fb_mem = mmap (NULL, 1024*768, PROT_READ|PROT_WRITE,MAP_SHARED,fb,0);memset (fb_mem, 0, 1024*768);

          FrameBuffer 設備還提供了若干 ioctl 命令,通過這些命令,可以獲得顯示設備的一些固定信息(比如顯示內(nèi)存大?。?、與顯示模式相關的可變信息(比如分辨率、象素結構、每掃描線的字節(jié)寬度),以及偽彩色模式下的調(diào)色板信息等等。

          通過 FrameBuffer 設備,還可以獲得當前內(nèi)核所支持的加速顯示卡的類型(通過固定信息得到),這種類型通常是和特定顯示芯片相關的。比如目前的內(nèi)核(2.4.9)中,就包含有對 S3、Matrox、nVidia、3Dfx 等等流行顯示芯片的加速支持。在獲得了加速芯片類型之后,應用程序就可以將 PCI 設備的內(nèi)存I/O(memio)映射到進程的地址空間。這些 memio 一般是用來控制顯示卡的寄存器,通過對這些寄存器的操作,應用程序就可以控制特定顯卡的加速功能。

          PCI 設備可以將自己的控制寄存器映射到物理內(nèi)存空間,而后,對這些控制寄存器的訪問,給變成了對物理內(nèi)存的訪問。因此,這些寄存器又被稱為"memio"。一旦被映射到物理內(nèi)存,Linux 的普通進程就可以通過 mmap 將這些內(nèi)存 I/O 映射到進程地址空間,這樣就可以直接訪問這些寄存器了。

          當然,因為不同的顯示芯片具有不同的加速能力,對memio 的使用和定義也各自不同,這時,就需要針對加速芯片的不同類型來編寫實現(xiàn)不同的加速功能。比如大多數(shù)芯片都提供了對矩形填充的硬件加速支持,但不同的芯片實現(xiàn)方式不同,這時,就需要針對不同的芯片類型編寫不同的用來完成填充矩形的函數(shù)。

          說到這里,讀者可能已經(jīng)意識到 FrameBuffer 只是一個提供顯示內(nèi)存和顯示芯片寄存器從物理內(nèi)存映射到進程地址空間中的設備。所以,對于應用程序而言,如果希望在 FrameBuffer 之上進行圖形編程,還需要完成其他許多工作。舉個例子來講,F(xiàn)rameBuffer 就像一張畫布,使用什么樣子的畫筆,如何畫畫,還需要你自己動手完成。

          全年征稿/資訊合作 聯(lián)系郵箱:1271141964@qq.com

          免責聲明

          • 凡本網(wǎng)注明"來源:智能制造網(wǎng)"的所有作品,版權均屬于智能制造網(wǎng),轉(zhuǎn)載請必須注明智能制造網(wǎng),http://www.tzhjjxc.com。違反者本網(wǎng)將追究相關法律責任。
          • 企業(yè)發(fā)布的公司新聞、技術文章、資料下載等內(nèi)容,如涉及侵權、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔責任,本網(wǎng)有權刪除內(nèi)容并追溯責任。
          • 本網(wǎng)轉(zhuǎn)載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品來源,并自負版權等法律責任。
          • 如涉及作品內(nèi)容、版權等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關權利。

          <
          更多 >

          工控網(wǎng)機器人儀器儀表物聯(lián)網(wǎng)3D打印工業(yè)軟件金屬加工機械包裝機械印刷機械農(nóng)業(yè)機械食品加工設備制藥設備倉儲物流環(huán)保設備造紙機械工程機械紡織機械化工設備電子加工設備水泥設備海洋水利裝備礦冶設備新能源設備服裝機械印染機械制鞋機械玻璃機械陶瓷設備橡塑設備船舶設備電子元器件電氣設備


          我要投稿
          • 投稿請發(fā)送郵件至:(郵件標題請備注“投稿”)1271141964.qq.com
          • 聯(lián)系電話0571-89719789
          工業(yè)4.0時代智能制造領域“互聯(lián)網(wǎng)+”服務平臺
          智能制造網(wǎng)APP

          功能豐富 實時交流

          智能制造網(wǎng)小程序

          訂閱獲取更多服務

          微信公眾號

          關注我們

          抖音

          智能制造網(wǎng)

          抖音號:gkzhan

          打開抖音 搜索頁掃一掃

          視頻號

          智能制造網(wǎng)

          公眾號:智能制造網(wǎng)

          打開微信掃碼關注視頻號

          快手

          智能制造網(wǎng)

          快手ID:gkzhan2006

          打開快手 掃一掃關注
          意見反饋
          關閉
          企業(yè)未開通此功能
          詳詢客服 : 0571-87858618