【生意多】-免费发布分类信息
当前位置: 首页 » 新闻 » 教程 » 正文

linux 图形界面

放大字体  缩小字体 发布日期:2020-10-19 03:08:55    浏览次数:7
导读

  应用程序级别的系统,不是独立的操作系统,同样 XFree只是linux下的一个应用程序而已.不是系统的一部分,但是X的处在可以方便用户使用电脑.WINDOWS95及以后的版本就不一样了,他们 的图形界面是操作系统的一部分,图形界面在系统内核中就实现了,没有了图形界面windows就不成为windows了,但linux却不一样,没有图形 界面linux

  应用程序级别的系统,不是独立的操作系统,同样 XFree只是linux下的一个应用程序而已.不是系统的一部分,但是X的处在可以方便用户使用电脑.WINDOWS95及以后的版本就不一样了,他们 的图形界面是操作系统的一部分,图形界面在系统内核中就实现了,没有了图形界面windows就不成为windows了,但linux却不一样,没有图形 界面linux还是linux,很多装linux的WEB服务器就根本不装X服务器.这也WINDOWS和linux的重要区别之一.

  X是协议,就像HTTP协议,IP协议一样,这个概念很多初学者甚至学习LINUX有一定时间的人都混淆,一个基于X的应用程序需要运行并显示内容时他 就联接到X服务器,开始用X协议和服务器交谈.比如一个X应用程序要在屏幕上输出一个圆那么他就用X协议对X服务器说:喂!我需要在屏幕上画一个圆.X应 用程序只负责告诉X服务器在屏幕的什么地方用什么颜色画一个多大的圆,而具体的画的动作,比如这个圆如何生成,用什么显卡的驱动程序去指挥显卡完成等 等工作是由X服务器来完成的.X服务器还负责捕捉键盘和鼠标的动作,假设X服务器捕捉到鼠标的左键被按下了,他就告诉X应用程序:亲爱的应用程序先生,我 发现鼠标被按下了,您有什么指示吗?

  如果X应用程序被设计成当按下鼠标左健后再在屏幕上画一个正方形的话,X应用程序就对X服务器说:请再画一个正方形,当然他会告诉服务器在什么地方用什么颜色画多大的正方形,但不关心具体怎么画--那是服务器的事情.

  有了协议就需要具体的软件来实现这个协议.就好比我们有了交通法规就需要交警去根据法规维护交通秩序一样.XFree86就是这样一个去根据法规实现协 议的交警.他按照X协议的规定来完成X应用程序提交的在屏幕上显示的任务.当然不仅仅是某个特定的交警才可以去维护和实现这个法规,比如还可以由交通 协管员来实现交通法规,必要的时候警察也可以介入,当然前提是他们都要懂得交通法规,也就是要懂得协议.所以实现X协议的软件也并不只有 XFree86,XFree86只是实现X协议的一个免费X服务器软件.

  商业上常用MOTIF,现在还有XORG,还有很多很小的由 爱号者写的小的X服务器软件.甚至可以在WINDOWS上有X服务器运行,这样你可以在linux系统上运行一个X应用程序然后在另一台windows系 统上显示.多么神气.你可以用google找到这样的X服务器软件.

  只不过在LINUX上最常用的是XFree86.顺便说一句,苹果电脑的图形界面用的也是X协议,而且被认为是做的最好的X协议图形界面,并且他对X协议的实施是做在系统内核里的,所以性能明显好很多,这就是为什么很多大型三维图形设计软件都是在苹果平台上的原因.

  (X协议第11版第六次发行)的意思,就是说目前用的X协议是第11版的,然后经过了6次小的修正.不同版本的X协议是不能通信的.就象我们现在IPV4和IPV6不能通信一样,不过不用担心,现在的X服务器软件和X应用程序都遵循X11R6.

  如果你是一开己就进入图形界面那就太遗憾了.应为你错过了了解X服务器起动过程的好时机.不过没关系.你打开一个XTERM输入:

  好了,等做完以下实验你就完全明白X和WM(window manager 窗口管理器)之间是什么关系了.

  再次启动图形界面,你看到了什么,你看到一个XTERM.而且不能移动.但是你可以在这个XTERM中输入命令打开X应用程序,如故我输入:

  打开浏览器,你看到的浏览器和平时有什么不同吗?他在屏幕中间,不能移动,不能最小化,不能最大化,没有边框.

  为什么同样一个X应用程序会有这样的不通呢?因为我们用startx起动图形界面的时候同时也启动了一个WM(即窗口管理器),如果你用KDE就起动了KDE,如果你用GNOME就起动了GNOME.但是你用xinit起动图形界面的时候却没有起动WM.

  现在你明白窗口管理器的作用了吗?他的作用就是最大化,最小化,移动,关闭窗口等.而这些不是X服务器来负责完成的.

  xterm被加上了一个边框,你可以通过这个边框移动,最大化,最小化这个xterm,twm就是XFree86中自带的窗口管理器,是一个比较简陋的最简单的窗口管理器,但是他具有窗口管理器的全部特征.

  KDE和GNOME是LINUX里最常用的图形界面操作环境,他们不仅仅是一个窗口管理器那么简单,

  KDE是KING DESKTOP ENVIRMENT (桌面环境之王)的缩写.他不仅是一个窗口管理器,还有很多配套的应用软件和方便使用的桌面环境,比如任务栏,开始菜单,桌面图标等等.

  xterm是一个X Window System上的标准虚拟终端。用户可以在同一个显示器上开启许多xterm,每一个都为其中运行的进程提供独立的输入输出(一般来说此进程是Unix shell)。

  作为X参考实现的一个部分后多年,1996年左右,开发的主干转移至了XFree86(从X11R6.3版本派生出来),现在由Thomas Dickey维护。

  virtual terminal ,是一个协议,一个接口,用于在各种连接环境中提供如同本机控制台一样的界面

  文字操作系统与外部最主要的接口就叫做shell。shell是操作系统最外面的一层。shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。

  简单来讲 本地文本登陆后,你就在本地连接到了shell ,通过agetty等本地虚拟控制台可以提供多个终端, 你也可以通过远程的网络连接,拨号连接,甚至串口连接 通过一些服务连接到一个远程服务器的shell ,然后这个shell在本地的表现方式就叫做虚拟控制台, xterm是x窗口环境中对本地虚拟控制台的一个实现。

  Xfree86服务器的实现包括两个部分,一部分是和显卡直接打交道的低层,一部分是和X应用程序打交道的上层。上层负责接收应用程序的请求和鼠标键盘的 动作。而和显卡直接打交道的底层负责指挥显卡生成图形,其实就是显卡驱动。上层接收到应用程序的请求后,将请求内容做适当处理,然后交给显卡驱动来指挥显 卡完成画图的动作。另外,上层的捕捉键盘和鼠标动作的部分会向应用程序提供鼠标和键盘的状态信息,应用程序接收到这些信息后决定是否再有相应的动作。

  framebuffer模式的显卡本身不具有任何运算数据的能力,他好比是一个暂时存放水的水池。CPU将运算后的结果放到这个水池,水池再将结果流到显示器。中间不会对数据做处理,所有显示任务都有CPU完成,CPU负担很重。

  在 linux内核中有有framebuffer机制,摹仿framebuffer显卡的这种功能。他的好处是把显卡的硬件结构抽象掉,把所有的显卡都当做一 个水池来用。应用程序也可以直接读取这个水池的内容。framebuffer的设备名是 /dev/fb。可以用命令:#dd if=/dev/zero of=/dev/fb清空屏幕。如果你的X用的是framebuffer的驱动,屏幕将全变黑。通过移动鼠标,切换窗口等动作可以让原先的内容重新显示。

  linux字符界面在高分辨率下,启动时会有一个小企鹅logo,这个logo就是用framebuffer功能写上屏幕的。

  VESA和VGA比FB要好很多,但是他的显示能力也很有限。CPU仍旧要处理大部分的显示任务。

  现 在的显卡就不一样了,CPU几乎不参数显示任务,而专注于运算工作。我们平时在linux下装显卡驱动,其实就是替换掉XFree86中底层的那一部分。 使他有更强的显示能力。比如你的显卡是nvidia的,XFree默认的驱动是nv,他是一个nvidia显卡的通用驱动,但是他不能发挥 nvidia显卡的性能。这个nv驱动模块可以在:

  只要在XF86Conf文件中的Section module段中指定了什么驱动,X就用哪个驱动。

  但是,在XFree86以前的版本(3。3。6)中, X主程序和驱动模块是合在一起的,因此,以前的Xfree86 3。3。6 有很多针对不同显卡的版本。

  另外其他的X服务器如KDrive 也是驱动也主程序整合的,因此同样是KDrive X服务器会有 VESA ,SVGA ,和 fbdev的版本之分。因为这些都是轻量级的X服务器,为了简化结构他做成这样。

  GNOME和KDE是目前的主流环境,而Xfce、LXDE、Openbox和Fluxbox等也已经得到了很高的应用。下面,编者就以上图形桌面环境进一步的解析。

  KDE(Kool Desktop Environment)项目始建于1996年10月,相对于GNOME还要早一些。KDE项目是由图形排版工具Lyx的开发者、一位名为 Matthias Ettrich的德国人发起的,目的是为满足普通用户也能够通过简单易用的桌面来管理Unix工作站上的各种应用软件以及完成各种任务。

  在应用开 发方面,KDE项目已经开发了一流的复合文档应用程序框架,实现了最先进的框架技术并且因此把它自己直接置身于和诸如微软的MFC/COM /ActiveX技术等流行开发框架相竞争的位置。KDE的KParts复合文档技术使得开发人员可以快速创建一流的应用程序以实现最尖端的技术。

  在应用程序上,KDE也拥有了可以与微软office媲美的办公应用套件KOffice,其分别由电子表格、幻灯片制作程序、组织者、新闻客户端等应用 组成。还集成常见的Web浏览器、电子邮件客户端、办公套件、图形图像处理软件,以及桌面主题功能、配置功能、KDE帮助中心等各种管理工具。同时,还支 持60余种语言的翻译。

  其实,从系统的安装过程,你就能体验KDE给你带来的便捷,各种语言、时区、安装磁盘、用户设置以及网络设置等工作,都无需去考虑输入什么命令,直接用鼠标点选即可。

  目前,KDE最新版本是4.5.0,进一步提高了稳定性和性能。可以体验到,KDE的操作习惯越来越与Win9x有很多相似之处,支持鼠标拖放、类似快捷方式,即使你是一个刚接触Linux的新手,也能很快上手。

  GNOME计划发起于1997年8月,所以,你可以在GNOME的LOGO上见到1997的字样。发起人是Miguel de Icaza和Federico Mena,GNOME计划当初的目标就是完全基于自由软件,构造那种功能完善、操作简单以及界面友好的桌面环境,希望走国际化道路,尽可能多地为各种国家 的人所使用。目前,GNOME已经基本上可以成为KDE的替代品。

  GNOME不仅仅提供了一个吸引人的桌面环境,而且还提供一个开发平台,一个能使开发的应用程序与桌面其它部分集成的可扩展框架。

  GNOME的结构包括:一个面板、桌面以及一系列标准的桌面工具和很多功能强大的应用软件。这些应用软件包括:文件管理器、电子表格处理软件、字理软 件、电子表格软件、邮件阅读器、MP3播放器、简单的编辑器以及可以与PhotoShop媲美的图像处理软件等常用软件。

  同时,GNOME还集成了软件更新和管理工具,基于Web的软件发布和自动升级工具,可平滑、安全地运行最新的开放资源和下载最新的补丁。

  如果,你体验过GNOME就会知道,GNOME的这些应用软件是如何让Linux系统更具可操作性,鼠标拖拽以及左右键功能、编辑文档、绘制图片、收发邮件、音频和视频的播放、即时通讯工具聊天......这些使用体验与你在Windows下几乎没有差别。

  虽然,GNOME最初是GNU/Linux的桌面,但是现在GNOME已经运行在大多数类Unix系统(如*BSD变体、AIX、IRIX、 HP-UX)和几乎所有的Linux系统之上。目前,显示GNOME最新版本是2.3,而在2011年将发布的GNOME3的体验据 介绍将可以匹敌Windows 7,我们将拭目以待。

  Xfce(XForms Common Environment)创建于2007年7月,类似于商业图形环境CDE,是一个运行在各类Unix下的轻量级桌面环境。原作者Olivier Fourdan最先设计XFce是基于XForms三维图形库。Xfce设计目的是用来提高系统的效率,在节省系统资源的同时,能够快速加载和执行应用程 序。

  XFce最主要的特色是容易配置,整个过程都可以使用鼠标来完成,而不需要修改配置文件的代码。最新版本的XFce还支持鼠标拖放、系统任务管理、多字节在内的多国语言以及其它特征。

  同时,XFce桌面环境的结构包括:一个叫XFwm的窗口管理器、主面板、文件管理器、背景管理器、声音管理器以及GNOME兼容模块等。另外,还有很多第三方的应用程序:文字编辑器、文件管理器、日历程序、CD 和 DVD 烧录程序、媒体播放器、浏览器等。

  从体验过程来看,虽然,没有GNOME和KDE的应用程度那么高,但是Xfce简单高效的特点,仍然为其赢得了非常多的用户青睐。目前,Xfce最新版本是4.6.2。

  相对于GNOME和KDE这些桌面环境,LXDE属于小巧玲珑类型的。LXDE更加注重于实用性和轻巧性,并且尽力降低其所耗系统资源。不同于其它桌面环境,其元件相依性极少。取而代之的是各元件可以独立运作,大多数的元件都不须倚赖其它套件而可以独自执行。

  LXDE使用Openbox为其默认窗口管理器,并且希望能够提供一个建立在互相独立套件上的轻量级快速的桌面。另外,LXDE也集成了一些应用程序和 工具:图片浏览器,外观、字型、布景主题管理工具、音乐播放器、屏幕设定工具、面板管理工具、编辑工具、系统资源监控以及工作管理员和轻巧的档案及桌面管 理程式等。

  从体验过程来看,LXDE确实对系统硬件要求比较低,甚至1999年出产的计算机都可以正常执行。所以,如果你有一台即将淘汰的计算机安装Linux系统,那么LXDE必将是你不错的选择。

  这里选择只选择众多图形桌面环境的四种做体验,其中也是因为很多人将GNOME与KDE,以及XFCE与LXDE分别作比较。

  综合整个体验过程,从效果上看,Windows在Linux系统面前应该说没有太多优势可言。KDE和GNOME强大的功能以及绚丽多彩的界面一点不逊 色于Windows,甚至还要好于它;同时在特效展示方面,例如半透明和三维界面,Windows能够做到的,依赖强大的KDE和GNOME同样可以做 到。而且,最近Ubuntu下一个版本也将支持多点触摸。

  所以,我们可以看到,通过形形色色的图形桌面环境的介入,Linux系统正进入一个高速发展的阶段,Linux桌面应用的普及渐渐打开了一个新天地。

  QT是个不错的选择,KDE桌面操作系统就是用QT开发的。其支持WINDOWS和LINUX两种操作系统。最高版本好像是4以上了。其界面开发工具是QT DESIGNER,还是比较好用,有点像VC。你可以装起先试下,在其网站上可以直接下载free的版本。

  Qt/Embeded是面向嵌入式系统的Qt版本,是Qt的嵌入式Linux窗口,是完整的自包含C++ GUI和基于Linux的嵌入式品台开发工具。Qt/EmbededAPI可用于多种开发项目。许多基于Qt的XWindow程序可以非常方便地移植 到嵌入式版本。

 
关键词: linux 图形
(文/小编)
打赏
免责声明
• 
本文为小编原创作品,作者: 小编。欢迎转载,转载请注明原文出处:https://www.31duo.com/news/show-651483.html 。本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们。
 

(c)2016-2019 31DUO.COM All Rights Reserved浙ICP备19001410号-4

浙ICP备19001410号-4