首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | HR | 镜像
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
搜索中心 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>系统管理>桌面应用>正文

浅析Linux桌面开发环境

http://www.oklinux.cn  2002-01-01  赛迪网  曹江华   会员收藏  游客收藏  【 】 
您查看的文章来源于http://www.oklinux.cn

Linux应用的广泛发展使其越来越受到广泛关注。Linux如此受欢迎,不仅仅因为它是免费的,而且还有以下原因:

· Linux是一个真正的抢占式多任务、多线程、多用户的操作系统。

· Linux性能稳定,功能强劲。

· Linux具有广泛的平台适应性。它在基于Intel公司的x86(也包括A MD、VIA、IDT)的计算机、基于Alpha的计算机,以及苹果、Sun、SGI等公司的计算机上都有相应的发行版本,甚至在AS/400上也能找到相应的版本,还可以在许多PDA和掌上电脑以及嵌入式设备上运行。

· 目前,已有为数不少的应用程序可以在Linux上运行。大多数为SCO Unix开发的应用程序都能在Linux上运行(借助于iBCS软件包),甚至还比在SCO Unix上运行速度更快。借助Dosemu,可以运行许多DOS应用程序,而借助Wabi或Wine,还可以运行许多为Windows设计的软件。

当然,Linux的优点决不止于此。它的出现为我国软件产业赶超世界先进水平提供了极好的机遇,也为我国软件产业反对微软的垄断提供了有力的武器。

Linux的迅速发展随着计算机网络的发展而扩大的。Linux可以说就是网络的代名词。目前Linux主要用于服务器端。在Internet上有很多服务器都在使用Linux。但是,一个操作系统要想得到普及,并占据一定的市场份额,必须要使非计算机专业人士都可以轻松使用这种系统。而Linux作为一种类Unix操作系统,对它的操作一般都是通过复杂的Shell命令进行的。因而,必须有一种简便易学的图形用户接口(Graphics User Interface)GUI,使用户使用鼠标就可以完成大多数工作。

在Linux中,GUI由以下几个部分组成:

· 窗口系统——组织显示屏上的图形输出并执行基本的文本和绘图功能。

· 窗口管理器——负责对窗口的操作(比如最小化、最大化、关闭按钮的形状,窗口边框外观等)以及输入焦点的管理。

· 工具包——带有明确定义的编程界面的常规库。

· 风格——指定应用程序的用户界面外观和行为。

LINUX诞生不久,自由软件社区的计算机专家就开始了KDE项目,目的是提供一个开放源代码的图形用户接口和开发环境。该项目取得了极大的成功,KDE成为许多Linux发布版本的首选桌面环境。GNU/Linux项目因此而得到蓬勃发展。但是,KDE是基于Troll Technologies公司的Qt库的。Qt库是一个跨平台的C++类库,可以用于多种Unix、Linux、Win32等操作系统。Qt并不是遵从GPL或LGPL协议的软件包。1997年由墨西哥国立自治大学的Miguel de Icaza领导的项目组开始了Gnome开发计划。Gnome是GNU Network Object Model Environment(GNU,网络对象模型环境)的缩写。该项目进展很快,由于Gnome项目的成功,1998年11月Qt库的开发者Troll公司宣布修改许可证协议,Qt库也成为自由软件。

1998年发布了Gnome1.0。现在,Gnome已成为一个强劲的GUI应用程序开发框架,并且可以在任何一种Unix系统下运行。Gnome使用的图形库是Gtk+——最初为了编写GIMP而创建的一套构件库,它是基于LGPL创建的,可以用它来开发开放源代码的自由软件,也可以开发不开放源代码的商用软件。Gnome的界面与KDE的界面是类似的(Gnome的目的之一就是创建一套类似KDE的桌面环境),熟悉KDE的用户无需学习就能够使用Gnome。由于以上几个原因,Gnome已经成为大多数Linux发布版本的首选桌面环境。

从用户的角度看,Gnome是一个集成桌面环境和应用程序的套件。从程序员的角度看,它是一个应用程序开发框架(由数目众多的实用函数库组成)。即使用户不运行Gnome桌面环境,用Gnome编写的应用程序也可以正常运行,但是这些应用程序是可以很好地和Gnome桌面环境集成。Gnome桌面环境包含文件管理器,它用于任务切换、启动程序以及放置其他程序的“面板”、“控制中心”(包括配置系统的程序以及一些小东西)等。这些程序在易用的图形界面背后隐藏了传统的UNIX Shell。Gnome的开发结构使开发一致的、易用的和可互相操作的应用程序成为可能。

在Linux下开发GUI程序的首要问题是采用什么样的图形库。Gtk+(GIMP Tool Kit,GIMP工具包)是一个用于创造图形用户接口的图形库它被称为GIMP工具包,因为它最初用于开发“通用图片处理程序”(General Image Manipulation Program,GIMP),Gtk已在大量软件项目,包括Gnome中得到了广泛应用。Gtk+是在Gdk(GIMP Drawing Kit,GIMP绘图包) 的基础上创建的.因为Gtk +和Gnome是用C语言编写的,所以在开发Linux下的GUI程序时使用C语言是非常方便的。如果用C++语言开发基于Gtk +应用程序,可以使用一个名为Gtk的函数库。一般的Linux发布版本中都提供了C编译器gcc或egcs。使用gcc或egcs可以编译C和C++源代码,编译出的目标代码质量非常好,编译速度也很快。各种C编译器都要使用一些C语言实用函数。为了保证程序的可移植性,gcc没有使用通用的C函数库,而是使用一种称为glib的函数库。glib也是Gtk+的基础。它包含一些标准函数的替代函数(如字符串处理函数)和基本数据结构的实现(单向链表、双向链表、树、哈希表等)。glib中所包含的函数消除了某些函数的安全漏洞,使其更加可靠,在不同平台上移植也更加方便。

GTK是用于实现图形用户接口的函数库。在Linux平台上,GUI(图形用户接口)使用的是称为X窗口(XWindow)的系统。X窗口系统是1984年由美国麻省理工学院开发的。在Linux上使用的X窗口系统是一种称为XFree86 的X版本。X窗口系统与Microsoft Windows的图形用户接口有所不同,它是基于客户/服务器的。X服务器在计算机上运行,控制监视器、鼠标和键盘。X客户通过网络与服务器通讯。X服务器为X客户提供图形显示服务。也就是说,X客户和X服务器可能在同一台计算机上运行,也可能在不同的计算机上运行。X窗口系统带有一套低级的库函数,称为Xlib。Xlib提供了许多对X窗口的屏幕进行操作的函数。当然,使用Xlib函数在屏幕上创建构件是很复杂的。GTK要在屏幕上绘制各种构件,就需要与X服务器打交道。但是GTK提供的构件库并未直接使用Xlib,而是使用了一个称为GDK的库。

GDK的意思是GIMP Drawing Toolkit,即GIMP绘图工具包。差不多每个Gdk函数都是一个相应Xlib函数的封装。但是Xlib的某些复杂性(和功能)被隐藏起来了。这样是为了简化编程,使Gdk更容易移植到其他窗口系统(有一个在Windows平台上的Gdk版本)。

(责任编辑:Sunny


上一篇:构建“自由”的移动办公室   下一篇:Linux桌面上的阳春白雪

收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·构建“自由”的移动办公室
·Linux桌面上的阳春白雪
·体验Red Hat 8.0
·Windows&Linux霸占鳌头 新型OS
·用XV显示处理图像
·Unix和Linux下的Acrobat Reader 5受攻击
·Linux下也能用Win Modem
·Linux安装声卡、显卡、网卡问题一点通
·Linux下各类桌面应用的推荐软件小结
·Linux下轻松刻录CD-ROM数据光盘
·Linux下活用CompuPIC图像管理大师
·在Linux下自动拨号上网
·Linux环境下XFS文件系统应用基础概述
·Mandrake 9.0试用手记
·引导装入工具Grub入门到精通
·用RHN自动更新Red Hat Linux
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·Aurorae: KDE 4 新的窗口边框主题引擎
·Google Chrome 主题库
·Bespin-被KDE4遗忘的主题
·10 套不错的 GNOME 主题
·无人值守安装Linux系统
·巧妙管理Linux服务器存储空间
·值得期待的Fedora 11操作系统新特性简
·面对CSS跨站攻击 IE与FireFox态度不一
·网友分享:在Linux系统上玩转磁盘阵列
·Ubuntu系统技巧之登录时查看“每日一句
·专家观点:Linux系统管理学习路线图
·开源办公软件 KOffice 2.0 Beta 7 发布
  阅读排行
·linux无线网卡设置与安装
·Ubuntu多媒体播放器的安装与配置
·VNCServer 配置 及Vncview的使用
·用新型D-BUS与Linux桌面应用程序通讯
·与微软相媲美! Ubuntu v8.04组图欣赏
·10 套不错的 GNOME 主题
·如何安装和使用wine
·菜鸟也疯狂:Linux桌面应用全攻略
·2008年Linux的25个顶级游戏
·安装Sony VAIO和HP Pavilion本本内置摄
·Linux高手过招:量身定制Linux桌面
·10套优秀的 Linux 图标 美化你的 Linux
·linux虚拟光驱介绍
·U盘Linux的制作
·引导装入工具Grub入门到精通
网摘收藏: