Microwindows 介绍

(The Nano-X Window System is an Open Source project aimed at bringing the features of modern graphical windowing environments to smaller devices and platforms. Nano-X allows applications to be built and tested on the Linux desktop, as well as cross-compiled for the target device. The Nano-X Window System was previously named Microwindows, but has been renamed due to conflicts with Microsoft's Windows trademark. There are two APIs implemented in the system, a Win32 API and an Xlib-like API. Please read the FAQ for more information. An extensive Architecture document is also available. Check out the Articles that have been written about Microwindows in the left sidebar. To get involved, please join the Nano-X mailing list. There is a full mirror of the mailing list accessible here.)

Microwindows 是一个著名的开放式源码嵌入式GUI 软件,目的是把图形视窗环境引入到运行Linux 的小型设备和平台上。作为X Window 的替代品,Microwindows可以使用更少的RAM 和文件存储空间(100K-600K)提供与X Window 相似的功能。

Microwindows 允许设计者轻松加入各种显示设备、鼠标、触摸屏和键盘等。

Linux2.2 以上版本的内核代码允许用户将图形显存作为帧缓存(FrameBuffer)进行存取,这样当用户对显示设备进行写入、控制时可以避免对内存映射区进行操作,因此用户可以在不了解底层图形硬件或没有使用过X Window 的情况下进行图形程序的开发。这就是为什么现在在嵌入式系统中广泛使用Microwindows 的原因。

Microwindows 的可移植性非常好,基本上用 C 语言实现,只有某些关键代码使用了汇编以提高速度。Microwindows 支持 Intel 16 位、32 位CPU,MIPS R4000 以及 ARM处理器芯片。尽管Microwindows 完全支持Linux,但是它内部的可移植结构是基于一个相对简单的屏幕设备接口,可在许多不同的RTOS 和裸机上运行。这种特性的优点突出体现在用户设计的图形程序不需重写就可以被不同的工程共享,甚至可以运行在不同RTOS 的不同对象上。Microwindows 已经移植到一些掌上电脑。

Microwindows 系统以图形方式支持在主机平台上的仿真目标平台。这样,为 Linux 设计的Microwindows 应用程序就可以在台式机上进行编写和开发而不用进行交叉编译就可测试和运行,并且直接在目标平台上运行。

Microwindows 的图形引擎能够运行在任何支持readpixel, writepixel, drawhorzline, drawvertline 和setpalette 的系统之上。在底层函数的支持之下,上层实现了位图,字体,光标以及颜色的支持。系统使用了优化的绘制函数,这样当用户在移动窗口时可以提供更好的响应。内存图形绘制和移动的实现使得屏幕画图显得很平滑,这点特别在显示动画、多边形绘制、任意区域填充、剪切时有用。

Microwindows 支持新的Linux 内核帧缓存(FrameBuffer)结构,目前提供每像素 1、2、4、8、16、24 和32 位的支持,另外还支持彩色显示和灰度显示,其中彩色显示包括真彩色(每像素15、16 和32 位)和调色板(每像素1, 2, 4 和 8 位)两种模式。在彩色显示模式下,所有的颜色用RGB 格式给出,系统再将它转换成与之最相似的可显示颜色,而在单色模式下中则是转换成不同的灰度级。Microwindows支持窗口覆盖和子窗口概念、完全的窗口和客户区剪切、比例和固定字体,还提供了字体和位图文件处理工具。

Microwindows 采用分层设计方法。在最底层,屏幕,鼠标/触摸屏以及键盘驱动程序提供了对物理设备访问的能力。在中间层,实现了一个可移植的图形引擎,支持行绘制,区域填充,剪切以及颜色模型等。在上层,实现多种API 以适应不同的应用环境。

Microwindows 介绍相关推荐

  1. MicroWindows介绍

     MicroWindows Open Source Project成立的宗旨是针对体积小的装置建立一套先进的视窗环境.在Linux桌面上通过交叉编译可以很容易地制作出MicroWindows的程序.M ...

  2. U-BOOT介绍以及disk模块源码分析

    一. BootLoader简介 在专用的嵌入式板子运行GNU/Linux系统已经变得越来越流行.一个嵌入式Linux系统从软件的角度看通常可以分为四个层次: 1. 引导加载程序.包括固化在固件(fir ...

  3. Linux Graphic DRI 显示子系统 介绍1

    1. 前言 图形子系统是linux系统中比较复杂的子系统之一:对下,它要管理形态各异的.性能各异的显示相关的器件:对上,它要向应用程序提供易用的.友好的.功能强大的图形用户界面(GUI).因此,它是l ...

  4. 用Microwindows(Nano-X)编写“hello world”

    原文地址:http://blog.csdn.net/wooin/archive/2008/05/14/2446721.aspx 用Microwindows(Nano-X)编写"hello w ...

  5. 用Microwindows(Nano-X)编写中文程序

    原文地址:http://blog.csdn.net/wooin/archive/2008/06/24/2583144.aspx 用Microwindows(Nano-X)编写中文程序 By: 吴垠 D ...

  6. Microwindows及基于Nano-X的简单程序开发

    http://www.rdxx.com 05年09月13日 22:26 Blog.ChinaUnix.net Nano-X是一种图形编程接口,和Win32一样,在上面我们可以编写自己的应用程序,下面转 ...

  7. microwindows位图解析

    From: http://blog.csdn.net/bisword/article/details/2740054 第1章 microwinodows图形显示框架 1.1 microwindows体 ...

  8. 如何在Microwindows中显示图片和安装字体

    From: http://bbs.chinaunix.net/thread-1987116-1-1.html 一.前言 Microwindows可以运行在 支持Framebuffer的 32位的 Li ...

  9. linux下c语言绘图库_Linux 下的图形库介绍

    在进行Linux下的图形系统编程时,我们常常会遇到以下这些概念: Framebuffer, X11, SDL,DFB, miniGUI, OpenGL,QT, GTK,KDE, GNOME等等. 一. ...

最新文章

  1. 配置MySQL主从复制
  2. Redis 实现限流的三种方式
  3. RAC 实例 迁移到 单实例 -- 使用导出导入
  4. 【CF应用开发大赛】制造过程能力Cpk计算器
  5. 专题:固体力学中应力与应变分析详解(6.莫尔应力圆)
  6. rabbitmq安装与配置(windows)亲测有效!!!
  7. 【UEditor】百度编辑器插入video视频
  8. 大数据专家手把手教你打造实时数据湖
  9. SSL:Self-Supervised Learning(自监督学习)是什么?
  10. 博罗县房产管理局应用级本地容灾备份系统采购项目
  11. Windows 8.1 with Update MSDN 简体/英文/繁体
  12. 微信模板消息跳转小程序
  13. 有关SOP封装的一些总结
  14. 什么!爬虫要违法了?别慌:守住规则,大胆去爬
  15. 2014年终总结回顾与2015年工作总结
  16. Truffle框架的初使用
  17. andriod ffmpeg
  18. 计算机等级图片背景蓝色怎么调,证件照背景颜色怎么换?白色蓝色背景都能换的方法...
  19. 一种基于视频帧差异视频卡顿检测方案
  20. 【python】global详解

热门文章

  1. java编程入门到精通看什么书,详细说明
  2. 智慧树mysql章节答案免费_智慧树_初识数据库—Mysql_完整免费答案
  3. [UDA]Unsupervised Data Augmentation for Consistency Training
  4. 熔断器熔断时间标准_欧规(IEC标准)与美规(UL标准)保险管熔断时间表
  5. 【Unity3D 教程系列第 16 篇】Scene视图很清楚,但是Game视图却很模糊的解决方案
  6. 微信小程序毕业设计健康食谱菜谱系统微信小程序+后台管理系统|前后分离VUE.js
  7. 【雅思听力做题方法,题型概述,练习方法总述】
  8. 基于Ubuntu 16.04的HUSTOJ在线判题系统的搭建
  9. 【精品干货】100000+文章速成法宝——15种标题撰写技巧
  10. 面试yan-原理性函数