返回顶部
首页 > 资讯 > 操作系统 >几种常用的嵌入式Linux GUI有哪些以及其特点是什么
  • 946
分享到

几种常用的嵌入式Linux GUI有哪些以及其特点是什么

2023-06-06 04:06:23 946人浏览 八月长安
摘要

这篇文章给大家介绍几种常用的嵌入式linux GUI有哪些以及其特点是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。随着Internet与网络的迅速发展并逐步走进人们的家庭,使消费电子、计算机、通信(3C)一体化趋

这篇文章给大家介绍几种常用的嵌入式linux GUI有哪些以及其特点是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

随着Internet与网络的迅速发展并逐步走进人们的家庭,使消费电子、计算机、通信(3C)一体化趋势日趋明显,嵌入式系统也成为研究与应用的热点。嵌入式实时Linux操作系统以价格低廉、功能强大又易于移植而正在被广泛采用,成为新兴的力量,当然,有眼光的人早已经看出其中的发展和前景。如今随着WAP手机、PDA、机顶盒、及DVD/VCD播放机已经迅速普及,用户对这些手持式设备的GUI提出了更高的要求,希望能看到像PC机才拥有的华丽美观的GUI。GUI已经成为了人与机器沟通的桥梁,嵌入式系统对GUI的需求越来越高,而这一切均要求有一个轻型、占用资源少、高性能、高可靠、可配置及美观的GUI支持。接下来我们就一起来看看:
Java技术对于服务器,个人电脑和嵌入式系统来说是一项伟大的技术。由于其具有跨平台等特性。Java在服务器和桌面电脑方面的应用是非常成功的。然而在GUI方面,Java只用非常有限的一些特征去构建图形用户界面。其思想就是采用平台无关的Java应用程序接口打包到不同的操作系统来开发本地图形用户界面,被称之为抽象的窗口工具(AWT)。仅有普通的部件如文件域、文本区、选择框、单选按钮、列表框和按钮被AWT支持,图形和图像的特性支持非常有限,也就是说,只足够构建简单的applet程序。认识到需要更高级的图形用户界面组件和图形能力,Sun公司开发了Swing,Java 2D,Java3D,图像的输入/输出,以及Java高级图像(Jai)。Swing是用来构建Java图形界面的标准api(应用程序接口),一些AWT类由Swing基础而来。它有一套完全的组件从按钮到文件域、表格、树型和文件编辑器。这些组件不依赖于操作系统本地的部件,而是用原始的图形像直线、矩形、文字画出。这种画代表感观插件,它能够模仿本地的感观。SWT是基于Java开发的,它的设计理念是最大化了操作系统的图形构件的API,就是说只要操作系统提供了相应图形的构件,那么SWT只是简单应用JNI技术调用它们,只有那些操作系统中不提供的构件,SWT才自己去做一个模拟的实现。另外SWT还提供对操作系统本地图形用户界面的直接访问,因此,基于SWT的Java应用程序拥有本地的图形用户界面并且可以和本地别的应用程序和部件集成在一起。使用SWT开发包,简单、跨平台、可靠等这些Jaya语言本身所具有的优点正渐渐融合到图形界面的应用程序开发中去。Java语言的另一扇成功之门正在逐渐打开。


2.1 SWT+GtkFB图形系统的体系结构


SWT处于体系机构的最上层,它与Java内的AwT和Swing同属于设计图形界面所需的高级函数库。而且SWT针对AWT 以及Swing的一些问题作了改善,如今它已发展成一套与作业系统无关的图形元件函数库。在元件的产生方面采用了适当的模拟,在基本的元件方面是采用原有作业系统的,对于较复杂的元件才用仿真的技术。基于SWT的Java应用程序拥有本地的图形用户界面,并且可以和本地别的应用程序,以及部件集成在一起。

几种常用的嵌入式Linux GUI有哪些以及其特点是什么
2.1.2 Gtk库


PanGo是用于国际化文本的布局和显示的全功能框架。Pango可以处理以非从左到右方向排列的文本,并且可以容易地管理复杂语言,甚至还可以处理根据使用环境而采用不同形式的信函。例如它支持双向文本,用户可以将从左到右的文本和从右到左的文本混合编排;还可有用于确定各种复杂文本(如阿拉伯语和泰米尔语)形状的插件。Pango不仅仅是国际化,而且Pango库在Xft和XRender的支持下能很好地处理抗锯齿字体文本的显示。

几种常用的嵌入式Linux GUI有哪些以及其特点是什么

2.1.3 GtkFB的工作原理


当一个应用程序连接到GtkFB时会调用gtk_init(),如图3所示,此时GtkFB 启动Linux的Framebiffer,设定分辨率和色彩数,接下来打开键盘和鼠标等外设(PDA打开按键和触控屏幕).然后到特定目录去读取字型,最后对窗口和事件管理作初始化操作。GtkFB可以支持8、16、24、32bpp的framebuffer。


2.2 SWT+GtkFB图形系统的优点


由于GtkFB直接运行在FrameBufer之上,跳过X系统,这样省下了X Server这一部分资源,这使得在内存消耗、运行速度上得到显著提高。另外采用的JNI技术使得程序运行速度、事件的响应有较高的提高,能满足时间要求较为严格的实时应用场合。


SWT 的稳定性,关键是源于SWT 的设计理念。SWT最大化了操作系统的图形构件API,就是说只要操作系统提供了相应图形的构件,那么SWT只是应用JNI技术调用它们,只有那些操作系统中不提供的构件,SWT才自己去做一个模拟的实现。可以看出SWT性能上的稳定很大程度上取决于相应操作系统图形构件的稳定性。


SWT的API和桌面版完全相同,因而代码可以很容易地在桌面和嵌入式设备之间移植与共享。


SWT采用了LGPL授权方式,用户可以自由地甚至是鼓励修改源代码使其更加满足用户的需求,很容易根据用户的需求来裁减特定的SWT+GtkFB,依据LGPL许可证,用户需要公布修改的源代码,但用户不必公布自给应用程序的源代码。


SWT是基于Java语言开发的,具有平台独立性、面向对象、可移植、安全等Java语言所拥有特点。用户可以很容易的基于SWT提供的Widget(构件)开发出满足自己需要的Widget,而且很容易地使用这些Widget去构建应用程序。


3.1 前期准备


下一步就是在/home/XXX/目录下创建SWT 和GTK两个目录并且设置环境变量。如下:


3.2 编译和安装Gtk+2.0


tar zxvf glib-2.0.6.tar.gz -C $GTK_HOME/src


。/configure --prefix=$GTK_HOME


make inSTall


tar zxvf atk-1.0.1.tar.gz -C $GTK_HOME/src


。/configure --prefix=$GTK_HOME


make install


步骤类似atk的安装。


嵌入式Linux GUI的应用领域很多,既可以用于家电市场,还可以用于商业市场、工业及自动化市场、国防市场、通讯市场等。例如,在通讯市场,手机、可视电话、机顶盒等可能成为嵌入式Linu.x的运行平台,一个人性化的用户界面是赢得消费者关键因素。因此嵌入式Linux图形系统将担任着更加重要的角色。如果你此时已经学习了嵌入式,将会是非常幸运的一件事情。但是你想学确找不到方向没有资源的时候,你也可以私我。相信我也可以给你提供不少的帮助.
<br font-size:14px;white-space:nORMal;background-color:#FFFFFF;" />未来几年,嵌入式Linux GUI将朝以下方向发展:第一,轻型、占用资源少,不希望建立在庞大累赘的、非常消耗系统资源的操作系统和GUI之上。第二,高性能、高可靠性,特别是工业实时控制系统,对实时性的要求非常高,并且比起嵌入式系统来说,对GUI的要求也更高。第三,可配置,我们必须清楚的意识到,嵌入式系统是一种定制设备,它们对GUI的需求各不相同,有的系统只要求一些图形功能,而有些系统要求完备的GUI支持,因此,GUI也必须是可定制的。

关于几种常用的嵌入式Linux GUI有哪些以及其特点是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: 几种常用的嵌入式Linux GUI有哪些以及其特点是什么

本文链接: https://lsjlt.com/news/246044.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 几种常用的嵌入式Linux GUI有哪些以及其特点是什么
    这篇文章给大家介绍几种常用的嵌入式Linux GUI有哪些以及其特点是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。随着Internet与网络的迅速发展并逐步走进人们的家庭,使消费电子、计算机、通信(3C)一体化趋...
    99+
    2023-06-06
  • 什么是javascript及其特点有哪些
    本篇文章为大家展示了什么是javascript及其特点有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。JavaScript是一种具有函数优先的轻量级、解释型或即...
    99+
    2024-04-02
  • 数据库常用的几种入侵的方式有哪些
    今天就跟大家聊聊有关数据库常用的几种入侵的方式有哪些,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。随着互联网的高速发展,越来越多的企业搭乘着互联网这班高速列车使得自己的企业发展的越来...
    99+
    2023-06-07
  • React的概念是什么及有哪些特点
    这篇文章主要介绍“React的概念是什么及有哪些特点”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“React的概念是什么及有哪些特点”文章能帮助大家解决问题。react 是什么?React 是 Fa...
    99+
    2023-06-27
  • 云服务器cvm实例的计费模式有哪些类型及其特点是什么
    云服务器cvm实例的计费模式通常分为以下几种类型: 按容量计费:这种计费模式下,购买云服务器cvm实例的容量不仅取决于服务器的CPU、内存、硬盘等资源使用情况,还受到服务器所在的云服务器集群规模和可用性等因素的影响。 按服务类型计费:这...
    99+
    2023-10-26
    实例 类型 模式
  • css的浮动属性是什么以及其属性值有哪些
    这篇文章将为大家详细讲解有关css的浮动属性是什么以及其属性值有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。在css中,浮动属性是“float”,用于...
    99+
    2024-04-02
  • MySQL存储引擎通常有哪3种?各自分别有什么特点?应用场景是哪些?
    MySQL存储引擎通常有哪3种?各自分别有什么特点?应用场景是哪些?MySQL5.5以后默认使用InnoDB存储引擎,其中InnoDB和BDB提供事务安全表,其它存储引擎都是非事务安全表。若要修改默认引擎,...
    99+
    2024-04-02
  • MongoDB的初始化步骤有哪些以及其缓存刷新机制是什么
    MongoDB的初始化步骤有哪些以及其缓存刷新机制是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。  当内存用尽开始往磁盘上刷脏页的时...
    99+
    2024-04-02
  • 云服务器的三种类型有哪些特点和优势和劣势是什么
    云服务器(Cloud Server)是一种基于互联网的服务器,它提供了一种虚拟的存储、计算和访问资源的方式,使得用户可以像在本地设备或云服务提供商提供的存储和计算资源上一样,使用这些服务。以下是云服务器的三种类型的特点和优势: 云服务器...
    99+
    2023-10-26
    三种 劣势 优势
  • Linux的显示服务器是什么以及显示服务器都有哪些
    Linux的显示服务器是什么以及显示服务器都有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Linux中的显示服务器是什么?显示服务器是一个程序,其主要任务是协调客户端...
    99+
    2023-06-15
  • 云服务器的用途有哪些方面的内容和特点是什么
    云服务器(Cloud Docker)是一种虚拟化技术,它可以将计算资源或存储资源分为不同的虚拟机(VM),然后将其整合成为资源池。这些资源可以按需使用,并且可以自动化地进行资源分配和管理。 云服务器的用途包括: 在线数据存储:用户可以使...
    99+
    2023-10-26
    用途 服务器 内容
  • Linux文件系统的基本原理是什么及常见类型有哪些呢
    Linux文件系统的基本原理是什么及常见类型有哪些呢,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在计算机出现之前其实就有文件系统的概念了,此时的文件系统是指用于管理(存储...
    99+
    2023-06-16
  • smarty模板的数据变量有哪些以及调用方法是什么
    本篇内容主要讲解“smarty模板的数据变量有哪些以及调用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“smarty模板的数据变量有哪些以及调用方法是什么”吧! 定义:模板变...
    99+
    2023-06-07
  • PHP中的数组有哪些常用操作方式?与NumPy的相同点和差异是什么?
    PHP中的数组是一种非常常见的数据类型,可以存储多个值,并且可以通过索引访问和操作数组中的元素。在本文中,我们将介绍PHP中的数组常用操作方式,并将其与NumPy进行比较,以便更好地理解它们之间的相同点和差异。 一、PHP中的数组常用操作方...
    99+
    2023-08-26
    数组 numpy spring
  • 阿里云服务器的作用和功能有哪些特点和用途是什么
    作用: 1. 提供高性能的计算能力,支持大规模分布式计算。 2. 支持弹性扩容和自动缩容,满足业务增长需求。 3. 支持负载均衡和高可用性,保证应用的稳定性和可用性。 4. 提供多种部署方式,包括云服务器、容器服务、数据库等,满足不同应用场...
    99+
    2023-10-27
    阿里 用途 作用
  • 云服务器的主要性能参数有哪些特点和作用是什么
    云服务器的主要性能参数包括: CPU:云服务器通常使用Intel 至强E5系列处理器或AMD Phenom X5 5500+或更高规格处理器。 内存:云服务器通常使用16GB或32GB的内存,以便更大的内存可用于存储更大的数据。 磁盘存...
    99+
    2023-10-27
    性能参数 作用 服务器
  • 云服务器实际作用有哪些方面的特点和优势是什么
    一、云服务器的实际作用 高可用性:云服务器可以提供高可用性的服务,当云服务器出现故障时,可以自动切换到备用云服务器,保证业务不中断。 弹性扩展:云服务器可以根据用户需求自动调整资源的大小,以适应业务需求的变化。 快速部署:云服务器可以快...
    99+
    2023-10-28
    作用 优势 服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作