新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于Microwindows的嵌入式GUI分析及应用

基于Microwindows的嵌入式GUI分析及应用

作者: 时间:2012-04-05 来源:网络 收藏

上的API 接口函数的基本模型都是用来初始化屏幕、键盘和鼠标的驱动程序,然后一直等待select () 消息循环。当事件发生时,这条信息将送到用户程序。如果是用户请求图形操作,那参数将被编码后送到适当的GdXXX 核心程序上。与原始图形操作相对的窗口概念是被该层所控制的,也就是说该层的API 函数定义了窗口及其对应系统的概念。这样,系统坐标就能被转成屏幕上显示的坐标,并且可将数据传给GdXXX 核心程序,由它进行实际操作。该层亦定义图形/ 显示文件,并且会将此信息(包括裁减信息) 送到核心程序上。

的API 支持大多数图形绘制、裁减、窗口工具条绘制及拖拉窗口等程序。Nano-X 最先是由Davin Bell 为minix 设计的,它被设计为C/ S 模式,一般是通过Unix Domain socket 在客户与服务器端进行通信的,但没有实现窗口管理,所以对窗口的处理需要使用系统提供的一个插件集,或者完全由应用程序员自已开发。另外,Nano-X 不是消息驱动的,而是基于X 协议模式。在这种模式下,驱动整个系统运行的可以说是请求与事件。

请求就是客户端为了完成某一动作而对服务器端所发出的申请,并且为每一个请求都定义了一个标识数。每个请求的结构都是不同的,但类似如下结构:

事件是每个窗口系统必不可少的部分,它反映系统运行的状态,一共有22 种。对于每个事件都要提供有关它的结构,但没有必要提供22 种事件结构,有一些事件所需要的数据是一样的,如所有鼠标的事件都使用一个事件结构表示,如下所示:

在仿真环境下的应用

Microwindows 最为显著的优势在于它可以在桌面计算机上仿真运行目标平台的GUI 及其支撑软件。这就意味着面向Linux 的Microwindows 应用软件可以在桌面计算机的Linux 环境下编制和调试,而没有必要建立跨平台交叉编译环境,并在目标平台上对软件进行编制和调试。这一点对于Embedded GUI 移植和开发而言,意义非同寻常。这完全归功于Microwindows 的X Screen Driver ,而非Linux 的Framebuffer 。



评论


相关推荐

技术专区

关闭