• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于Microwindows的嵌入式GUI分析及應用

    基于Microwindows的嵌入式GUI分析及應用

    作者: 時間:2012-04-05 來源:網(wǎng)絡 收藏

    上的API 接口函數(shù)的基本模型都是用來初始化屏幕、鍵盤和鼠標的驅(qū)動程序,然后一直等待select () 消息循環(huán)。當事件發(fā)生時,這條信息將送到用戶程序。如果是用戶請求圖形操作,那參數(shù)將被編碼后送到適當?shù)腉dXXX 核心程序上。與原始圖形操作相對的窗口概念是被該層所控制的,也就是說該層的API 函數(shù)定義了窗口及其對應系統(tǒng)的概念。這樣,系統(tǒng)坐標就能被轉成屏幕上顯示的坐標,并且可將數(shù)據(jù)傳給GdXXX 核心程序,由它進行實際操作。該層亦定義圖形/ 顯示文件,并且會將此信息(包括裁減信息) 送到核心程序上。

    的API 支持大多數(shù)圖形繪制、裁減、窗口工具條繪制及拖拉窗口等程序。Nano-X 最先是由Davin Bell 為minix 設計的,它被設計為C/ S 模式,一般是通過Unix Domain socket 在客戶與服務器端進行通信的,但沒有實現(xiàn)窗口管理,所以對窗口的處理需要使用系統(tǒng)提供的一個插件集,或者完全由應用程序員自已開發(fā)。另外,Nano-X 不是消息驅(qū)動的,而是基于X 協(xié)議模式。在這種模式下,驅(qū)動整個系統(tǒng)運行的可以說是請求與事件。

    請求就是客戶端為了完成某一動作而對服務器端所發(fā)出的申請,并且為每一個請求都定義了一個標識數(shù)。每個請求的結構都是不同的,但類似如下結構:

    事件是每個窗口系統(tǒng)必不可少的部分,它反映系統(tǒng)運行的狀態(tài),一共有22 種。對于每個事件都要提供有關它的結構,但沒有必要提供22 種事件結構,有一些事件所需要的數(shù)據(jù)是一樣的,如所有鼠標的事件都使用一個事件結構表示,如下所示:

    在仿真環(huán)境下的應用

    Microwindows 最為顯著的優(yōu)勢在于它可以在桌面計算機上仿真運行目標平臺的GUI 及其支撐軟件。這就意味著面向Linux 的Microwindows 應用軟件可以在桌面計算機的Linux 環(huán)境下編制和調(diào)試,而沒有必要建立跨平臺交叉編譯環(huán)境,并在目標平臺上對軟件進行編制和調(diào)試。這一點對于Embedded GUI 移植和開發(fā)而言,意義非同尋常。這完全歸功于Microwindows 的X Screen Driver ,而非Linux 的Framebuffer 。



    評論


    相關推薦

    技術專區(qū)

    關閉
    主站蜘蛛池模板: 江陵县| 石家庄市| 祁阳县| 法库县| 托克托县| 宜章县| 温州市| 肥乡县| 兴国县| 诸暨市| 都江堰市| 临澧县| 宁武县| 兴文县| 白河县| 龙泉市| 大庆市| 河曲县| 武强县| 凤城市| 体育| 鄄城县| 沂南县| 邮箱| 正镶白旗| 望江县| 温泉县| 浮山县| 内丘县| 朝阳区| 石屏县| 扎赉特旗| 元氏县| 七台河市| 云南省| 河西区| 沭阳县| 井研县| 永登县| 双柏县| 永宁县|