- 相關推薦
MicroWindows體系結構及應用程序接口
摘要:MicroWindows是一個著名的開放源碼的嵌入式GUI軟件。本文簡要論述了MicroWindows的體系結構和應用程序接口,并介紹其設備驅動特性、API、客戶機/服務器模型和畫圖機制。關鍵詞:MicroWindows API Nano-X 圖形用戶界面
許多開發者在嵌入式設計中開始使用類似于桌面的操作系統。其中一個方案就是Linux操作系統。由于Linux在嵌入式系統上具有桌面電腦的全部功能和特性,作為一種免費的開放源碼,它允許修改和根據用戶的要求進行定制。
MicroWindows是一個開放源碼的嵌入式GUI軟件,目的是把圖形視窗環境引入到運行Linux的小型設備和平臺上。作為X Window系統的替代品,MicroWindows可以用更少的RAM和文件存儲空間(100KB~600KB)提供相似的功能,允許設計得輕松加入各種顯示設備、鼠標、觸摸屏和鍵盤等;可移植性非常好,可用C語言實現;支持Intel 16位/32位CPU、MIPS R4000以及基于ARM內核的處理器芯片。
1 體系結構
1.1 分層結構設計
MicroWindows采用分層結構設計方法,在底層提供對屏幕、鼠標、觸摸屏和鍵盤的驅動,在程序能訪問實際的硬件設備和其它用戶定制設備。在中間層有一個可移植圖形引擎,提供繪制線程、區域填充、繪制多邊形、裁減和使用顏色模式的方法。在頂層實現多種API以適應不同的應用環境。目前,MicroWindows中使用兩種流行的圖形編程接口:Microsoft Windows Win32/WinCE圖形顯示接口(GDI)和Xlib接口。前者應用于所有的Windows CE和Win32應用程序;后者就像Nano-X,應用于所有Linux X插件集的最底層,這樣可讓Linux圖形程序員X接口開發圖形應用程序。
1.2 驅動設備
device.h文件中定義設備驅動接口。MicroWindows已實現至少將一個屏幕、鼠標和鍵盤的驅動與系統相連。獨立圖形設備引擎的中間層可以使驅動設備直接完成對硬件的具體操作。
(1)屏幕驅動
MicroWindows可運行在支持Framebuffer的32位Linux系統上,也可使用SVGALib[45]庫來進行圖形顯示。此外,還被移植到16位的ELKS和實模式的MSDOS上,實現1、2、4、8、16和32位的像素支持,以及實現VGA16平面模式支持。它的圖形引擎能夠運行在任何支持readpixel、writepixel、drawhorzline、drawvertline和setpalette的系統之上。如果底層驅動系統實現了Blitting,則上層可提供更多的增強功能。在底層函數的支持之下,上層實現了對位圖、字體、光標以及顏色的支持。除了基于調色板的1、2、4和8位像素模式,也實現15、16和32位像素的真彩模式。
[1] [2] [3] [4] [5] [6]
【MicroWindows體系結構及應用程序接口】相關文章:
空間Internet的安全體系結構05-01
調度集中體系結構的研究05-02
ATAM體系結構優化方法探討04-28
軟件體系結構和組件的論文04-27
謝林早期哲學的原則和體系結構04-27
軍用網格體系結構及Petri Net模型04-27
數字圖書館信息的體系結構04-29
ASAAC航空電子體系結構標準分析04-29
我國空間快速響應體系結構發展模式05-02