基于MiniGUI的多進程圖形用戶界面的研究
4多進程GUI的實現
基于以上分析,本圖形用戶界面系統采用微C/S機制,用共享內存的進程間通信機制實現數據交換,通過套接字實現客戶程序與服務器程序通信。服務器程序實現窗口結構隊列管理,獲取系統產生的鼠標和鍵盤消息并進行分發??蛻?a class="contentlabel" href="http://www.104case.com/news/listbylabel/label/進程">進程從IPC消息隊列獲取發往自己的消息,并通過共享內存實現窗口剪切。
經過交叉編譯的可執行圖形應用程序可以通過NFS下載到開發板,然后通過串口調試工具進行遠程調試。在應用程序調試完成后將裁減后的MiniGUI 的函數庫、配置文件放到為開發板準備的根文件系統中,并把主界面的可執行文件加入到文件系統的啟動腳本,用重新得到的根文件系統生成鏡像文件,然后燒寫到開發板Flash上,在開發板啟動后即可以進入到圖形界面。該系統在嵌入式開發平臺上能夠實現多窗口運行,并且在調用產生高任務級別的任務時能夠順利實現任務掛起功能。
5結束語
目前嵌入式產品的在功能實現上日益復雜化,簡單的圖形用戶界面系統已經很難滿足用戶的實際需要,比如將來的智能手機將融入電子地圖、定位導航系統、 PDA、電子字典、多媒體播放等多功能,單一的窗口操作界面顯然不符合用戶要求。基于多進程的GUI系統能夠實現多任務、支持多窗口,并且具有良好的系統穩定性,因此必然是嵌入式產品開發的一個重點,也是未來嵌入式圖形用戶界面的發展方向。
參考文獻
[1] 周立功等. ARM嵌入式MiniGUI初步與應用開發范例[M].北京:北京航空航天大學出版社, 2006。
[2] David Mosberger, Stephane Eranian,IA-64 Linux Kernel Design and Implementation[M]。Prince Hall, Jan 30, 2002
[3] MiniGUI編程指南 V2.0 [Z]。http://www.minigui.com
[4] MiniGUI API Reference Manual for V1.3 [Z]. http://www.minigui.com
[5] 鄭樺,劉清,邢航,徐智穹。構造嵌入式Linux的文件系統[J]。微計算機信息,2004,20(8):49~50
評論