一種可移植的嵌入式圖形支持系統:MiniGUI
與其它針對嵌入式產品的圖形系統相比,MiniGUI具有以下一些技術優勢:
1).輕型、占用資源少
MiniGUI本身的占用空間非常小,以嵌入式Linux操作系統為例,MiniGUI的典型存儲空間占用情況如下:
1.Linux內核: 300K?500K(由系統需求決定);
2.文件系統:500K?2MB(由系統需求決定);
3.MiniGUI支持庫:500K?700K(由編譯選項確定);
4.MiniGUI字體、位圖等資源:400K(由應用程序確定,可縮小到200K以內);
5.GB2312輸入法碼表:200K(不是必需的,由應用程序確定);
6.應用程序:1M?2M(由系統決定)。
總體的系統占有空間應該在 2MB到4MB左右。在某些系統上,功能完備的MiniGUI系統本身所占用的空間可進一步縮小到1MB以內。
最新的研發成果表明,MiniGUI能夠在CPU主頻為30MHz,僅有4M RAM的系統上正常運行(使用uClinux 操作系統),這是其它圖形系統,如MicroWindows或者Qt/Embedded所無法達到的。
2)高性能、高可靠性
MiniGUI良好的體系結構及優化的圖形接口,可確保最快的圖形繪制速度。在設計之初就充分考慮到了實時嵌入式系統的特點,針對多窗口環境下的圖形繪制開展了大量的研究及開發,優化了MiniGUI的圖形繪制性能及資源占有。MiniGUI在大量實際系統中的應用,尤其在工業控制系統的應用,證明 MiniGUI具有非常好的性能。
3) 可配置性
為滿足嵌入式系統千變萬化的需求,必須要求GUI系統是可配置的。和Linux內核類似,MiniGUI也實現了大量的編譯配置選項,通過這些選項可指定MiniGUI庫中包括哪些功能而同時不包括哪些功能。大體說來,可以在如下幾個方面對MiniGUI進行定制配置:
1.指定MiniGUI要運行的操作系統;
2.指定生成基于線程的MiniGUI-Threads運行模式還是基于進程的MiniGUI-Lite運行模式,或者只是最簡單的MiniGUI-Standalone運行模式;
3.指定要采用老的GAL/GDI接口(低端顯示設備)還是新的GAL/GDI接口(高端顯示設備);
4.指定需要支持的GAL引擎和IAL引擎,以及引擎相關選項;
5.指定需要支持的字體類型;
6.指定需要支持的字符集;
7.指定需要支持的圖像文件格式;
8.指定需要支持的控件類;
9.指定控件的整體風格,是三維風格、平面風格還是手持終端風格。
4) 可伸縮性強
MiniGUI豐富的功能和可配置特性,使得它既可運行于基于龍珠的低端產品中,亦可運行于基于ARM9的高端產品中,并使用MiniGUI的高級控件風格及皮膚界面等技術,創建華麗的用戶界面。
5) 跨操作系統支持
理論上,MiniGUI可支持任意一個多任務嵌入式操作系統;實際已支持Linux/uClinux、eCos、uC/OS-II、VxWorks、pSOS、ThreadX等嵌入式操作系統,也可以在Win32平臺上運行。同時,在不同操作系統上的MiniGUI,提供完全兼容的API接口。
從最初的數控系統到目前流行的智能手持終端設備,MiniGUI已經在大量產品中得到了應用。MiniGUI最主要的應用領域大致可分為三類:高端手機、PDA類產品;數字媒體及機頂盒類產品;工業儀表及控制系統。
評論