MicroWindows Open Source Project成立的宗旨是针对体积小的装置建立一套先进的视窗环境。在Linux桌面上通过交叉编译可以很容易地制作出MicroWindows的程序。MicroWindows能够在没有任何操作系统或其他图形系统的支持下运行,它能对裸显示设备进行直接操作。因此,MicroWindows就显得十分小巧,便于移植到各种硬件和软件系统上。
然而MicroWindows的免费版本进展一直很慢,而且至今为止,国内没有一家专门对MicroWindows提供全面技术支持、服务和担保的公司。在2005年MicroWindows项目被改为Nano-X Window项目,Nano-X Window是一个典型的基于Server/Clinent体系结构的GUI系统,基本分为3层,
Nano-X 3层结构
Nano-X API ECMA-APIW
窗口管理硬件抽象层
显示设备与输入设备
底层是面向图形显示和键盘、鼠标或触摸屏的驱动程序;中间层提供底层硬件的抽象接口,并进行窗口管理;最高层分别提供兼容于X Window和ECMA APIW(Win32子集)的API。其中使用Nano-X接口的API与X接口兼容,但是该接口没有提供窗口管理,如窗口移动和窗口剪切等高级功能。系统需要先启动Nano-X中Server程序的nanox-server和窗口管理程序nanowm。用户程序连接Nano-X的Server获得自身的窗口绘制操作。使用ECMA APIW编写的应用程序无须nanox-server和nanowm,可直接运行。
MicroWindows提供了相对完善的图形功能和一些高级的特性,如Alpha混合、三维支持和TrueType字体支持等。该系统为了提高运行速度,改进基于Socket套接字的X实现模式,采用了基于消息机制的Server/Client传输机制。MicroWindows也有一些通用的窗口控件,但其图形引擎存在一些问题:首先,无任何硬件加速能力;其次,图形引擎中存在一些低效算法。不过MicroWindows支持中文、日文、韩文等多种语言,而且也支持Truetype字体,目前可知的MicroWindows版本是0.91。