欧美日韩国产综合网_欧美精品大片_亚洲一区二区三区高清不卡_一区二区三区免费看_亚洲综合好骚_亚洲欧美影院_国产视频不卡_亚洲高清视频一区_免费精品视频_欧美精品一级

  • 基于ARM-Linux的MiniGUI的仿真與移植
    劉喜榮

          近幾年,隨著嵌入式系統的日益發展和32位嵌入式處理器以及圖形顯示設備的廣泛應用,目標產品對GUI(圖形用戶界面)的需求越來越多。由于嵌入式系統一般實時性要求很高,所以嵌入式系統下的GUI需要具有輕量級型、占用資源少、高性能等特點。此外,嵌入式系統往往是一種定制設備,它對GUI的需求各不相同,因此,GUI必須也可以定制。而MiniGUI是一個非常適合實時嵌入式產品的高效、可靠、可定制、小巧靈活的圖形用戶界面支持系統,被廣泛的應用于高端科技產品中。利用MiniGUI開發出良好的人機交互界面已成為嵌入式開發中的迫切需求。本文實現了在ARM-Linux環境下進行基于QVFB的MiniGUI的模擬開發、調試,通過在PC機上的仿真模擬,將應用程序完成之后,利用交叉編譯工具編譯產生在目標機上運行的代碼,然后把MiniGUI和可執行應用程序移植到S3C2410目標板上,這樣既節省了開發時間,又提高了開發效率和質量。
    1 MiniGUI的特點和體系結構
          MiniGUI項目的最初目標是為基于Linux的實時嵌入式操作系統提供一個輕量級的圖像用戶界面支持系統。作為操作系統和應用程序之間的中間件,MiniGUI將底層操作系統與硬件平臺之間的差別隱藏起來,并對上層應用程序提供了一致的功能特性。
    1.1MiniGUI的特點
    (1)占用資源少:MiniGUI本身占用的空間非常小,整個MiniGUI系統占用空間在2~4MB,在某些系統上,MiniGUI系統本身所占用的空間可進一步縮小到1MB以內。
    (2)高性能、高可靠性:MiniGUI良好的體系結構及優化的圖形接口,可確保最快的圖形繪制速度。
    (3)可定制配置:和Linux內核類似,MiniGUI也具有大量的編譯配置選項,通過這些選項可指定MiniGUI庫中包括哪些用戶所需要的功能。
    (4)跨操作系統支持:MiniGUI支持Linux/uClinux、eCos、uC/OS-II、VxWorks等嵌入式操作系統。同時,在不同操作系統上的MiniGUI,提供完全兼容的API接口。
    1.2MiniGUI的體系結構
          從整體結構上看,MiniGUI采用的是分層設計的,結構如圖1所示。

    圖1 MiniGUI的分層體系結構
          在最底層,GAL(圖形抽象層)和IAL(輸入抽象層)及鼠標和鍵盤的驅動;中間層是MiniGUI的核心層,包括窗口系統必不可少的各個模塊;最頂層是API,即編程接口。GAL和IAL為MiniGUI提供了底層的Linux控制臺或者X-Window上的圖形接口以及輸入接口,而 Pthread用于提供內核級線程支持的C函數庫。利用GAL和IAL,大大提高了MiniGUI的可移植性,并且使程序開發和調試變得更加容易。
    2 MiniGUI在QVFB上的仿真應用
          MiniGUI能夠在PC機上運行,也能夠移植到目標板上運行。在運行Linux的PC機上,MiniGUI應用程序可以通過以下兩種方式運行:
    (1)在X-Window上,在虛擬Frame Buffer的QVFB中運行;
    (2) 在Linux的字符控制臺上,在Linux內核提供的FrameBuffer驅動上運行;
          這里主要介紹MiniGUI在QVFB中的仿真運行。QVFB是Qt(Qt是Linux窗口管理器KDE使用的底層函數庫)提供的一個虛擬FrameBuffer工具,該程序是基于Qt開發的。
    2.1 建立MiniGUI在Linux上的運行環境
          在Linux環境下,將已經下載好的壓縮安裝文件qvfb-1.0.tar.gz復制到/opt目錄下,在該目錄下解壓,利用 make install命令把QVFB安裝到系統默認的/usr/local/bin目錄下。在X-Window環境下,打開終端,鍵入 qvfb&命令,啟動QVFB模擬程序。接下來對QVFB的運行環境進行配置,這里配置為640×480,Depth為16bit。QVFB提供了一種軟件的方法,通過這種方法,可以看到自己的圖像應用程序在PC上運行的效果。它能模擬不同的分辨率及顯示的顏色數,因此可以模擬目標機上的嵌入式顯示屏,從而大大方便了應用程序的開發與調試。
    2.2 安裝資源文件和配置MiniGUI的庫文件
          在Linux環境下,將已下載好的壓縮資源文件
    minigui-res-1.3.3.tar.gz(該文件包含字體、光標、圖標、位圖等資源)復制到/opt/emulation目錄下(emulation目錄為新創建的目錄),然后運行./configure腳本成功通過,就可以執行make和make install命令,將資源文件安裝到系統默認的/usr/local/lib/minigui/res目錄中。將下載好的壓縮庫文件libminigui-1.3.3.tar.gz 復制到/opt/emulation目錄下,輸入解壓縮命令然后進入解壓后的目錄,在該目錄下輸入make menuconfig,啟動圖像界面的配置工具,當配置完成后,輸入make對庫文件進行重新編譯,如果編譯成功,輸入make install命令,將MiniGUI庫安裝到默認的 /usr /local/lib/目錄下。接下來,查看文件/etc /ld.so.conf,如果文件中沒有/usr/local/lib這一行,將該行添加到文件的最后,然后執行ldconfig。
    2.3 MiniGUI在QVFB上的仿真
          將已下載的mg-samples-1.3.1和mde -1.3.0.tar.gz復制到/opt/emlation/目錄下,在終端下進入該目錄,依次執行./configure和make命令,將這些示例程序編譯成能夠在QVFB上可執行的程序。首先修改/usr/local/etc目錄下的配置文件MiniGUI.cfg,將gal_engine=fbcon改為gal_engine=qvfb,ial_engine=console改為ial_engine=qvfb。然后使用qvfb&命令啟動qvfb,運行/opt /emulation /mg-samples/src 目錄中的可執行程序,如bomb,即可看到運行在QVFB內的MiniGUI程序,如圖2所示:

    圖2 MiniGUI在QVFB上的仿真
    3 MiniGUI在S3C2410上的移植
    3.1安裝MiniGUI資源文件
          在PC機的/opt目錄下創建target目錄,將資源文件minigui-res-1.3.3.tar.gz復制到/opt/target 目錄下進行解壓,編輯/opt/target /minigui-res-1.3.3目錄下的config.linux文件,將“TOPDIR=”改為 “TOPDIR= /opt /target/minigui”,保存退出。然后輸入make install將資源文件安裝在/opt /target /minigui /usr/local/lib/minigui/res目錄下。同時把/opt/target/minigui /usr/local/lib目錄下的minigui目錄復制到需要制作的文件系統的文件夾中。
    3.2 配置安裝MiniGUI庫文件
          在編譯MiniGUI的庫文件libminigui -1.3.3之前,首先要正確安裝了交叉編譯器,即armv41-unknow- linux系列的交叉編譯器。使用交叉編譯器可以把libminigui-1.3.3庫文件編譯成一個動態鏈接庫,通過調用該動態鏈接庫,可以正確運行 MiniGUI的應用程序。在/opt/target /libminigui-1.3.3下,輸入命令make menuconfig進行配置。當配置完成后,保存退出。然后輸入make和make install,這樣就將交叉編譯后的MiniGUI庫文件安裝在/opt/host/armv41 /armv41–unkn own-linux/lib目錄下,分別是libminigui-1. 3.so.3.0.0和 libmgext -1.3.so.3.0.0。同時,還有指向這些庫的符號鏈接,指向庫文件libminigui-1.3.so.3.0.0的符號鏈接是libminigui -1.3.so.3和libminigui.so,指向庫文件libmgext-1.3.so.3.0.0符號鏈接是 libgext  -1.3.so.3和lib-mgext.so。MiniGUI所使用的頭文件安裝在/opt/host/armv41 /armv41  -unknown-linux/include/minigui文件夾內。同時在/opt/host/armv41/armv41- unknown– linux/etc/中還有一個minigui.cfg的配置文件。
    3.3 MiniGUI的移植
          將MiniGUI成功移植到S3C2410目標板上,一般要經過以下幾個過程:
    (1) 把MiniGUI庫文件libminigui-1.3. so.3.0.0和libgext -1.3.so.3.0.0,以及它們的符號鏈接文件,一同復制到要制作成cramfs文件系統的目錄root_tech中的/lib下。
    (2) 把/opt/target/minigui/usr/local/lib下的minigui目錄復制到要制作cramfs文件系統的目錄中,比如放到該目錄的/usr/sbin/下。當嵌入式系統運行時,應用程序在該minigui目錄下調用相關的資源文件。
    (3) 在root_tech文件夾內,用mkdir –p /opt/host/armv41/armv41-unknown-linux/ 命令創建一個目錄,然后使用命令ln –s /lib /opt/host/armv41/armv41-unknown-linux/lib創建符號鏈接,上述命令確保系統能夠找到正確的動態鏈接庫。
    (4) 修改/opt/host/armv41/armv41–un known–linux/etc目錄下的MiniGUI.cfg文件,把存放資源的路徑改為root_tech目錄下對應的路徑,從而使應用程序能夠找到它使用的資源文件。例如,在PC機上的存放路徑為/usr/local/lib,那么在root_tech目錄下,如果把MiniGUI資源目錄放到了/usr/sbin下,則MiniGUI.cfg文件中的路徑必須由/usr /local/lib改為/usr/sbin/,同時還要將“ial_engine=console”改為“ial_engine =ads”。另外,將 [fbcon]下的“defaultmode =1024×768-16 bpp”改為“defaultmode =640×480-16 bpp”。將修改后的MiniGUI.cfg文件要放到root_tech目錄的/mnt/etc目錄下。
    (5) 最后,把準備好的root_tech文件夾,利用mkcramfs命令生成cramfs文件系統,利用NFS網絡文件系統將生成的文件系統移植到 S3C2410中。然后從minicom下進入可執行文件所在的目錄/usr/sbin,可執行程序bomb在S3C2410目標板上運行的結果如下圖3 所示:

    圖3 MiniGUI在S3C2410開發板上運行
    4結束語
          本文將MiniGUI-1.3.3版本在ARM - Linux環境下,首先在QVFB中進行了仿真應用,同時經過交叉編譯后成功的移植到了 S3C2410開發板的硬件平臺上,試驗結果表明能夠穩定可靠的運行,為后續基于圖形用戶界面程序的實際項目的開發與應用打下了基礎。隨著嵌入式產品應用領域的日益增長,基于MiniGUI開發出良好的人機交互界面,是嵌入式發展的趨勢,同時也擁有廣闊的市場前景。
    參考文獻
    [1]徐英慧,馬忠梅,王磊等. ARM9        嵌入式系統設計—基于S3C2410與Linux[M].北京:北京航空航天大學出版社,2007.
    [2]劉昌盛,郭勇,謝習華. 嵌入式Linux環境下MiniGUI的研究與移植[J].嵌入式軟件應用,(2008)07-2-0101-03.
    [3]李敏. ARM-Linux環境下MiniGUI在S3C2410開發板上的移植[J].科技情報開發與經濟,(2008)28-0139-02.
    [4]劉崢嶸,張智超,許振山,等. 嵌入式Linux應用開發詳解[M].北京:機械工業出版社,2004.
    [5]北京飛漫軟件.MiniGUI用戶手冊.http://www.minigui.com.
    [6]ARM Limited.ARM920T Technical Ref- erence Manual.2000,2001.


     
     
    網站首頁  |  關于我們  |  聯系我們  |  廣告服務  |  版權隱私  |  友情鏈接  |  站點導航
     
    欧美日韩国产综合网_欧美精品大片_亚洲一区二区三区高清不卡_一区二区三区免费看_亚洲综合好骚_亚洲欧美影院_国产视频不卡_亚洲高清视频一区_免费精品视频_欧美精品一级
    香蕉久久a毛片| 欧美日韩国产成人精品| 午夜一区在线| 麻豆成人小视频| 欧美国产专区| 亚洲国产第一| 久久精品一区| 亚洲精品一二| 玖玖精品视频| 国产欧美一级| 欧美激情视频一区二区三区在线播放 | 国模一区二区三区| 亚洲欧洲日韩综合二区| 蜜桃av一区| 亚洲国产综合在线看不卡| 欧美专区18| 亚洲精品国产系列| 欧美高清视频一区| 亚洲一区二区三区午夜| 狠狠88综合久久久久综合网| 一区二区三区成人精品| 国产精品mm| 久久九九电影| 免费日韩精品中文字幕视频在线| 激情一区二区三区| 欧美日本三区| 欧美激情五月| 久久天堂国产精品| 亚洲永久免费| 欧美亚洲专区| 亚洲欧美国产不卡| 国产欧美二区| 在线天堂一区av电影| 影音先锋久久| 亚洲国产精品一区| 亚洲第一毛片| 亚洲午夜激情| 亚洲午夜精品久久久久久浪潮| 久久综合网络一区二区| 久久福利精品| 羞羞视频在线观看欧美| 欧美亚洲视频| 玖玖在线精品| 国产精品豆花视频| 尹人成人综合网| 亚洲人妖在线| 国产亚洲欧美另类一区二区三区| 亚洲巨乳在线| 国产伦精品一区二区三| 亚洲欧美日韩另类精品一区二区三区| 国产乱码精品一区二区三区不卡| 亚洲一区二区三区涩| 蜜乳av另类精品一区二区| 午夜精品亚洲一区二区三区嫩草| 欧美精品日韩| 亚洲欧洲日本国产| 亚洲一区二区三区精品视频| 久久国产主播精品| 欧美日韩在线不卡一区| 狠狠爱www人成狠狠爱综合网 | 亚洲免费婷婷| 亚洲免费影视| 女女同性女同一区二区三区91 | 免费视频一区二区三区在线观看| 国产麻豆综合| 欧美日韩爆操| 一区二区三区免费看| 亚洲影院在线| 狠狠色噜噜狠狠狠狠色吗综合| 在线观看日韩av电影| 中国女人久久久| 欧美一区2区三区4区公司二百 | 久久五月天婷婷| 亚洲午夜精品国产| 美女被久久久| 99热免费精品| 欧美精品自拍| 国产精品免费一区二区三区在线观看| 久久久久.com| 一区二区精品| 国内精品国语自产拍在线观看| 夜夜嗨一区二区| 国产精品v亚洲精品v日韩精品 | 国产精品v日韩精品v欧美精品网站| 9色精品在线| 亚洲欧美综合| 亚洲一区成人| 亚洲人成网站在线观看播放| 老司机午夜精品视频在线观看| 99国内精品| 狠狠色综合网| 午夜日韩视频| 久久久久久久久久久一区| 99re国产精品| 亚洲人www| 亚洲午夜一区| 欧美深夜福利| 午夜激情一区| 久久综合精品一区| 久久动漫亚洲| 久久精选视频| 久久蜜桃精品| 久久一区免费| 麻豆精品视频| 久久国产欧美精品| 久久riav二区三区| 另类图片国产| 久久国产直播| 快she精品国产999| 久久精品日产第一区二区| 亚洲一区二区伦理| 亚洲综合99| 噜噜噜噜噜久久久久久91| 亚洲免费在线| 久久久久久国产精品一区| 国产精品毛片在线| 久久xxxx精品视频| 欧美激情麻豆| 亚洲福利久久| 国产偷自视频区视频一区二区| 亚洲欧洲精品一区二区| 99视频一区| 亚洲一区二区在线看| 国产精品久久久亚洲一区| 99re国产精品| 久久精品1区| 欧美视频在线观看| 99热这里只有精品8| 亚洲欧美日产图| 午夜日韩电影| 亚洲精品日本| 亚洲在线观看| 国产精品porn| 国产亚洲一区在线播放| 久久久国产精品一区二区三区| 久久免费国产| 亚洲精品男同| 久久裸体视频| 最新成人av网站| 蜜桃av一区| 影音先锋日韩资源| 午夜在线视频一区二区区别| 欧美激情日韩| 国产精品日韩欧美一区二区三区| 久久中文欧美| 亚洲图片欧洲图片日韩av| 一区二区三区欧美成人| 女人色偷偷aa久久天堂| 亚洲国产精品一区制服丝袜 | 一区二区亚洲| 羞羞答答国产精品www一本| 欧美久色视频| 国产精品综合色区在线观看| 国产一区美女| 免费亚洲网站| 91久久午夜| 欧美成人蜜桃| 国产精品呻吟| 亚洲精品1区2区| 午夜久久黄色| 久久激情视频| 国产亚洲二区| 伊人久久av导航| 欧美成人首页| 久久av一区二区三区| 99精品国产在热久久下载| 欧美三区美女| 久久精品一区二区国产| 正在播放亚洲| 伊人精品在线| 欧美日韩综合网| 欧美伊人影院| 蜜桃av久久久亚洲精品| 国产一区二区三区免费不卡| 亚洲一级高清| 国语自产精品视频在线看8查询8| 亚洲一区免费看| 国产精品乱码一区二区三区| 亚洲三级影院| 99国产精品久久久久老师| 亚洲第一在线综合在线| 国产精品豆花视频| 欧美日韩免费精品| 国产精品hd| 韩国av一区| 亚洲高清电影| 亚洲人成人一区二区三区| 亚洲国产激情| 一本色道久久综合亚洲精品婷婷 | 欧美日韩一区在线播放| 午夜天堂精品久久久久| 欧美一区在线看| 欧美日韩亚洲一区| 亚洲性图久久| 中文精品视频| 久久aⅴ国产紧身牛仔裤| 久久婷婷国产综合尤物精品| 欧美在线免费| 黄色免费成人| 一区二区三区福利| 亚洲永久免费| 欧美福利一区二区三区| 国产精品国码视频| 亚洲第一精品影视| 99在线观看免费视频精品观看| 亚洲国产欧美日韩| 中文亚洲欧美| 久久久久久一区二区| 欧美亚韩一区| 一区二区三区四区五区精品| 噜噜噜91成人网| 欧美三级网页| 中文一区在线| 午夜国产精品视频免费体验区| 国产综合18久久久久久| 亚洲色诱最新| 亚洲欧美一级二级三级| 亚洲人体偷拍| 玖玖玖国产精品| 亚洲精美视频| 女人天堂亚洲aⅴ在线观看| 激情丁香综合| 欧美一区亚洲| 夜久久久久久| 国产精品theporn| 亚洲一区二区三区色| 好看的日韩av电影| 欧美主播一区二区三区美女 久久精品人| 午夜视频精品| 嫩草成人www欧美| 在线精品在线| 午夜日韩福利| 亚洲欧美激情诱惑| 99在线精品免费视频九九视| 欧美激情一级片一区二区| 99伊人成综合| 亚洲午夜在线| 欧美日韩三区四区| 麻豆久久精品| 国产日韩欧美一区二区三区在线观看| 欧美高清不卡| 久久久久国产精品一区二区| 亚洲精品一级| 亚洲午夜精品国产| 午夜性色一区二区三区免费视频| 亚洲专区免费| 国产精品欧美久久| 野花国产精品入口| 在线观看亚洲| 国内精品国语自产拍在线观看| 久久国产直播| 性久久久久久| 亚洲男人影院| 免费国产自线拍一欧美视频| 99视频一区| 99综合视频| 日韩视频一区| 日韩亚洲欧美精品| 亚洲精品国产精品国自产观看| 欧美激情亚洲| 欧美日本一区二区视频在线观看| 美女国产精品| 女人香蕉久久**毛片精品| 麻豆久久婷婷| 欧美激情综合色综合啪啪| 欧美~级网站不卡| 欧美区日韩区| 激情久久一区| 亚洲性图久久| 亚洲伦理一区| 国产精品视频免费一区| 国产精品美女诱惑| 久久久www| 国产精品v日韩精品v欧美精品网站 | 久久三级福利| 欧美日韩国产三区| 在线观看成人av| 在线综合欧美| 久久精品免费| 黑丝一区二区三区| 亚洲激情另类| 国产伦精品一区二区三区| 性xx色xx综合久久久xx| 久久一区视频| 亚洲大胆视频| 亚洲一区激情| 欧美日韩免费观看一区| 18成人免费观看视频| 夜夜爽99久久国产综合精品女不卡| 夜夜爽av福利精品导航| 男女精品视频| 欧美三日本三级少妇三99| 亚洲精品偷拍| 久久男女视频| 亚洲免费精品| 久久在线精品| 日韩亚洲国产精品| 欧美在线二区| 99国产精品| 欧美在线网站| 国产日韩欧美三级| 国产一区二区三区四区老人| 一区二区三区导航| 欧美日本亚洲| 亚洲免费一区二区| 亚洲国产精品久久久久婷婷老年| 亚洲欧美日韩另类精品一区二区三区| 欧美暴力喷水在线| 亚洲人人精品| 国产一区二区三区自拍| 亚洲欧美日产图| 亚洲人成免费| 国产精品国产一区二区| 亚洲一区高清| 亚洲精选在线| 影音先锋中文字幕一区| 欧美影院一区| 性色一区二区| 一区二区欧美日韩| 激情五月***国产精品| 欧美一区影院| 米奇777在线欧美播放| 日韩午夜激情| 国产综合自拍| 欧美fxxxxxx另类| 国产伦精品一区二区三区视频孕妇 | 久久国产精品一区二区三区| 99精品国产高清一区二区| 欧美日韩亚洲一区| 牛夜精品久久久久久久99黑人| 亚洲一区日韩在线| 国产精品色网| 亚洲欧美大片| 国产精品一区在线播放| 国产视频一区三区| 国产一区二区你懂的| 99riav1国产精品视频| 99在线|亚洲一区二区| 亚洲人成人一区二区三区| 亚洲清纯自拍| 一本色道久久综合亚洲精品不卡 | 亚洲在线一区| 亚洲欧美国产不卡| 免费久久久一本精品久久区 | 亚洲国产午夜| 日韩视频精品| 国产亚洲亚洲| 亚洲欧美日韩视频二区| 先锋影音久久久| 麻豆精品网站| 欧美天堂亚洲电影院在线观看 | 麻豆av一区二区三区久久| 久久精品人人做人人爽电影蜜月| 久久国产精品久久w女人spa| 老鸭窝毛片一区二区三区| 欧美在线视屏| 亚洲国产精品一区| 国产乱人伦精品一区二区 | 午夜精品免费| 91久久亚洲| 香蕉亚洲视频| 欧美三级乱码| a91a精品视频在线观看| 国产精品乱码一区二区三区| 久久精品道一区二区三区| 国产精品分类| 国产精品一区二区欧美| 欧美成人高清| 18成人免费观看视频| 国产精品亚洲一区| 欧美国产三区| 在线一区欧美| 欧美久久九九| 国产日韩欧美一区二区| 欧美/亚洲一区| 亚洲精品久久久久久一区二区| 国产日韩一区| 国产在线观看一区| 亚洲在线免费| 一区在线视频观看| 免费亚洲一区二区| 精品不卡在线| 美女久久网站| 99精品国产高清一区二区| 女同性一区二区三区人了人一| 亚洲国产专区校园欧美| 欧美一区1区三区3区公司 | 最新日韩av| 女人香蕉久久**毛片精品| aa级大片欧美三级| 欧美三日本三级少妇三99| 亚洲一区二区三区四区五区午夜| 国产在线欧美| 欧美成人一区二区在线| 国产精品一区在线观看| 精品91免费| 欧美日韩p片| 久久日韩精品| 久久动漫亚洲| 国产精品一区二区a|