[發(fā)明專利]嵌入式Linux平臺下的顯示方法在審
| 申請?zhí)枺?/td> | 201110335119.0 | 申請日: | 2011-10-28 |
| 公開(公告)號: | CN103092578A | 公開(公告)日: | 2013-05-08 |
| 發(fā)明(設(shè)計)人: | 彭席漢;張興明;傅利泉;朱江明;吳軍;吳堅 | 申請(專利權(quán))人: | 浙江大華技術(shù)股份有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 北京邦信陽專利商標(biāo)代理有限公司 11012 | 代理人: | 王昭林;崔華 |
| 地址: | 310053 浙江*** | 國省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 嵌入式 linux 平臺 顯示 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種圖形和視頻的顯示方法,具體涉及一種嵌入式Linux平臺下的顯示方法。
背景技術(shù)
嵌入式Linux技術(shù)以其高效、穩(wěn)定以及占用資源少等特性廣泛應(yīng)用于消費類電子、多媒體終端等領(lǐng)域。一直以來,如何能將圖形用戶界面(GUI)高效的顯示出來是嵌入式Linux平臺下的一大弱項。傳統(tǒng)的顯示方法是基于X?Window系統(tǒng)的,如圖1所示。X?window采用Client/Server模式,底層與輸入輸出設(shè)備驅(qū)動進(jìn)行通信,如鍵盤、鼠標(biāo)以及顯卡;中間層是X?Server,它是X?window系統(tǒng)的核心,上層是一個個的X?Client端,可以是一個獨立的應(yīng)用程序,如瀏覽器,也可以是一個圖形庫,比如Qt、GTK庫等。X?Client與X?Server通信遵循X11協(xié)議,簡單來講,X?Server監(jiān)聽X?Client端發(fā)送過來的圖形輸出請求,并負(fù)責(zé)完成相應(yīng)的操作,最后給X?Client端一個響應(yīng)。
由于X?window系統(tǒng)過于龐大和復(fù)雜,并不適合于應(yīng)用在嵌入式Linux系統(tǒng)中,雖然可以對其進(jìn)行裁剪,但是裁剪難度不小,穩(wěn)定性也無法得到保證。另外,X?window系統(tǒng)由于采用C/S模式,顯示數(shù)據(jù)必然要經(jīng)過額外的拷貝花銷,大大降低了顯示的實時性。
同時,X?window沒有提供圖形層和視頻層的分離機制,應(yīng)用層瀏覽器不能同時顯示圖形層和視頻層,因為占據(jù)了同一存儲空間,瀏覽器在順序訪問存儲空間讀取數(shù)據(jù)來顯示時,視頻層覆蓋在前的圖形層,或者圖形層覆蓋了在前的視頻層,即不是“透明的”。但是,在實際的應(yīng)用中,用戶往往希望混合顯示視頻數(shù)據(jù)以及圖形GUI,因此需要一種圖形層和視頻層彼此不相干擾的同時顯示的方法。
發(fā)明內(nèi)容
為了能夠在嵌入式Linux平臺下高效的進(jìn)行圖形和視頻的顯示,本發(fā)明提供一種嵌入式Linux平臺下的顯示方法,包括:
設(shè)置顯卡輸出的分辨率;
根據(jù)所述分辨率、圖形層顯示格式和視頻層顯示格式,計算用于存儲圖形和視頻的存儲空間的大小;
將所述存儲空間劃分為圖形層存儲空間和視頻層存儲空間;
配置顯卡的寄存器,以使能所述圖形層存儲空間和所述視頻層存儲空間的分離;
嵌入式Linux系統(tǒng)中的用戶的顯示實體訪問顯卡,從所述圖形層存儲空間讀寫圖形數(shù)據(jù),從所述視頻層存儲空間讀寫視頻數(shù)據(jù)。
采用本技術(shù)方案后可以獲得以下有益的技術(shù)效果:
1)繞開X?window系統(tǒng),大大減少系統(tǒng)的復(fù)雜性,增加了穩(wěn)定性與可靠性;
2)由于直接通過用戶的顯示實體將顯示數(shù)據(jù)直接寫入到顯卡的緩存中去,避免了中間環(huán)節(jié)的數(shù)據(jù)拷貝,顯示性能以及實時性大為提高;
3)將顯卡的圖形實體與視頻實體分離開來,用戶的顯示實體可以獨立對圖形實體和視頻實體進(jìn)行控制。
附圖說明
圖1為現(xiàn)有技術(shù)的采用X?Window系統(tǒng)的顯示方法。
圖2為本發(fā)明的嵌入式Linux平臺下的顯示方法的流程圖。
具體實施方式
總體來說,本發(fā)明的技術(shù)方案涉及嵌入式Linux內(nèi)核層的顯卡以及用戶的顯示實體兩部分。如圖2所示,在嵌入式Linux系統(tǒng)中,根據(jù)顯卡的分辨率、圖形層顯示格式和視頻層顯示格式計算用于存儲圖形和視頻的存儲空間大小,可選地,也可以根據(jù)兩種顯示格式中占用空間較大的一個來計算存儲空間。圖形層顯示格式和視頻層顯示格式可以采用同一格式。將該存儲空間劃分為圖形層存儲空間和視頻層存儲空間。這兩個存儲空間不重疊,而且可以是鄰接的。所述圖形層存儲空間的大小根據(jù)圖形層顯示格式的一個像素所占用的字節(jié)而設(shè)定,所述視頻層存儲空間的大小根據(jù)視頻層顯示格式的一個像素所占用的字節(jié)而設(shè)定。嵌入式Linux系統(tǒng)中用戶的顯示實體訪問顯卡,從所述圖形層存儲空間讀寫圖形數(shù)據(jù),從所述視頻層存儲空間讀寫視頻數(shù)據(jù),也可以往上述兩個存儲空間內(nèi)寫入數(shù)據(jù)。
以具有frame?buffer功能的顯卡為例,將frame?buffer映射到用戶的顯示實體,該顯示實體就可以像寫內(nèi)存的方式一樣將顯示數(shù)據(jù)寫入到顯卡的frame?buffer中去,或者從frame?buffer中讀取數(shù)據(jù)來顯示。同時,修改顯卡的驅(qū)動參數(shù),設(shè)置相關(guān)的寄存器,將顯卡的圖形層與視頻層進(jìn)行分離,具體而言,是將各自的存儲空間進(jìn)行分離,不再占用相同的一段存儲空間。分離后,圖形層存儲空間與視頻層存儲空間在frame?buffer中的起始地址不同并且不會重疊,這樣對于用戶的顯示實體來說,就可以獨立的控制顯卡的圖形層以及視頻層的輸出和輸入。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于浙江大華技術(shù)股份有限公司,未經(jīng)浙江大華技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110335119.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





