认识XWindow 窗口管理器 桌面系统

描述 X window, Window Manager(窗口管理器), Desktop(桌面系统)之间的关系, 这类文档是几位熟悉这些概念的人回复一位新手的邮件时的内容. 他们都试图向大家阐述这几个元素之间的系统.
1.   
GUI,window manager,desktop,和interface间的联系  术语 GUI,window manager,desktop,和interface间的区别(如果有的话),它们和Xwindow有什么关系?

在X的世界里,事物是分成很多组件的,而不象其他的操作系统那样,任何东西都是OS的一个部分。 这里是一些定义:

Interface 是一个普通术语,意思是指在计算机系统的两个互不依赖的组件间的连结,一个桥。 它通常用来指"user interface"(用户界面)就是用户和计算机系统之间联系的部分。 GUI 是另一个普通术语。代表graphical user interface,图形用户界面。它就想它听起来那么漂亮; 它是一个主要是图形组成的用户界面。Mac OS和Windows都是GUI的,实际上,现在相当多都用于桌上型电脑。

在 Mac OS 和 Windows,构件图形界面的功能都做在了操作系统里面,你只能使用那些。这个方法很简单,但是却不灵活。Unix和类Unix的操作系统没有内建这个功能,要使用GUI你就不得不使用"windowing system"(窗口系统)。 X就是其中之一——现在看来是唯一的一个。

X 提供的功能是在屏幕上构造方块(窗口),然后画出里面的元素,它并不支持这些功能:

a) 移动窗口、改变它们的大小,关闭它们,

b) 象按钮菜单这样的标准控件

c) 为设计用户界面、编程的标准,或程序间的交互操作(例如拖拽或标准帮助系统等)

Window manager 是个可以方你移动窗口和改变它们大小的程序。它通常也支持把一个窗口缩成一个图标或任务条。通常有某种程序执行机构。用户可以使用 window manager来做他想做的——任何X应用程序应该可以在任何窗口管理器上工作。但是你依次进能运行一个。这就是说,你可以切换于任何多个window manager,但是同一时刻你进能运行一个。屏幕上的所有程序都可以被正在运行的window manager管理。 widget 集是一个常规的工具库,程序员使用它来构造象按钮和菜单这样的标准控件(X程序员叫它们做widget。一个应用程序使用的wedget集是由程序员来选择的,而不是用户。很多人都安装多种widget集,这样可以同时运行多个程序员使用不同widget set写的程序。

最后,解释一下desktop environment,桌面环境。这是一个最新的也最模糊的X术语。 它基本的意思是指“ Mac OS 和 Windows的图形界面有,而X没有却应该有的东西”。通常是一组有着共同外观和操作感的应用程序,和程序库,以及创建新的应用程序的方法。例如,所有的KDE应用程序都所以用相同的widget集(Qt)和帮助程序,你可以在它们之间拖拽。你同时可以安装多个桌面环境,而且你可以在一个桌面环境中运行另一个不同的桌面环境的应用程序,而不用切换到过去(当然你要安装那个桌面才行)。就是说,如果你使用GNOME,但是你喜欢KDE的字处理器KLyX,那么你可以运行KLyX,而不运行任何其他的KDE程序,但是它就不能和你那些GNOME的程序互相交互了。你甚至可以同时运行GNOME和KDE的核心程序,事实上这没有什么意义,你会同时有两个文件管理器,两个面板,等等。

所有的窗口管理器(象GNOME或KDE或FVWM95)都运行在X windows之上吗?

是的,虽然GNOME和KDE不是窗口管理器(它们是桌面环境)。KDE是和一个叫KWM的窗口管理器一起的。 GNOME则没和任何窗口管理器做在一起,你可以使用任何你想用的窗口管理器,虽然有一些是特地为GNOME写的(Enlightenment就是一个)。但是它们都需要X来运行。

说一个应用软件是基于GNOME或KDE的到底是什么意思呢?如果它不是,那会怎样?你仍然可以运行它吗?

这仅意味这它是使用GNOME或KDE的库写的。意思是:

1) 程序可能不是同时基于GNOME和KDE的,

2) 你不得不安装GNOME的库来运行基于KDE的软件,

3) 你可以并行的运行GNOME的应用程序和KDE的应用程序,

4) 如果你使用任何一个环境,你总是可以运行非基于该环境的应用程序。

GTK+(for GNOME)或Troll(for KDE)到底是什么?

GTK和Qt(Qt是KDE使用的Troll Tech的产品)都是widget集。也就是说,它们提供了按钮,菜单,滚动条和各种各样的对象给程序开发人员使用。注意,非基于GNOME或KDE的应用程序能够使用GTK+或Qt,但是所有的GNOME程序都使用GTK+,所有的KDE应用程序都使用Qt。

Linux(或UNIX)窗口管理器的历史和Windows98/95的用户使用的桌面相比怎么样?

特别是,如何评价微软通过给定用户仅仅一种桌面来限制他们的选择,这种桌面据信是一种为方便用户使用而设计的。

这是一个很复杂的问题,从本质上来讲,Windows提供了一个由窗口系统、窗口管理器、widget集 和桌面环境共同组成的构造集,因此每个人都只能使用它,而不能选择它们喜欢的。

通用桌面环境(CDE)怎么样了?它是因为太消耗系统资源或是未开放源码而没有 被Linux用户广泛采用吗?

是的,它占用太多的内存。你可以从RedHat那里得到它。

2

对 X, GUI 更详细的解释 对 X, GUI 更详细的解释

今天我从Linux Gazette上看到了你的邮件,我决定试着回答你的问题。 

是这样的: 

X-Windows 被设计成为一种客户端--服务器(client-server)的系统。这样做的优点是你可以把服务器运行于和你的显示器所在的机器不同的另一台机器上。你需要一个client。这可能是一个程序或一个窗口管理器。窗口管理器通过要求服务器创建窗口来和它通讯。当服务器接到要求,就会给出一个标题条,然后让应用程序创建它自己的界面。从根本上说,窗口管理器是介于服务器和应用程序之间的,但是它不是必须的。你可以没有窗口管理器而直接在服务器上运行一个应用程序,但是你唯一能做的事就是运行这个指定的应用程序、关闭它,和关闭X服务器(即,不能移动它、改变窗口大小等)。 

GUI 是指图形用户界面,意思是所有呈现在屏幕上的信息都使用窗口、菜单、按钮等来表示,就象是Windows。所有的都是交互的,界面是建立在这些窗口和按钮之上的。GUI主要的目的是提供一个统一的系统来表现窗口和收集信息。一个不错的例子是MS Windows中的Alt+F4这个快捷键,使用这个键,你可以关闭任何在屏幕上的窗口。一个窗口管理器可能是这个系统的一部分。在KDE和CDE中都是这样。它们共同的特点就是它们拥有自己的窗口管理器,你可以在桌面上得到统一的形式。从根本上说,在桌面上看到的是那些可以运行在某个系统上的应用程序的集合。一个统一的图形用户界面可以有象拖放(drag&Drop)和指点(point&shoot) 及把应用程序和某个文件类型关联起来这样的特点。你问的关于基于GNOME或KDE的问题是这样:一个程序被设计成它是哪个环境下的,那么它就可以和这个环境下的其他应用程序互相通讯。拖放就是个例子。某些程序没有为它们设计的桌面环境确实不能运行,但是有些就可以。举个例子,我使用KDE程序,但是我不喜欢他们的窗口管理器, 因此我使用Window Maker,而Window Maker不是为KDE环境设计的,因此我就不得不损失一些功能不能使用。 

这两个库:GTK+ 和Qt(你提到的Troll)是工具包。它们基本的用途是画窗口、按钮和菜单。 这些会帮你构造你的界面。如果你象运行一个为某个特殊环境设计的应用程序,比如说GNOME, 你至少需要GNOME的库,象GTK+和其他什么。 

正象我前面提到的,X-Windows系统的client-server的设计使用户可以更灵活的选择他们喜欢的窗口管理器。但是基本上,他们象 win95/98系统做的一样。Win95/98 限制你于一个风格和一样的操作感(look and feel) (虽然你可以改变背景的颜色,但是那还是它),但它并没有给用户尝试其他风格和操作感的自由。很多流行的窗口管理器都允许你定义其他的按键组合。如果你不喜欢GNOME,你可以使用KDE,反之亦然。(还有其他几种) 

所有我知道的关于CDE的知识就是它是基于Motif工具包的(不同于GTK+和Qt)这个工具包不象GTK+那样是free的(更恰当的说不是 GPL 的)。我想这可能是它在Linux上用的不是很多的主要原因。但是它是否很耗系统资源我就不知道了。我个人不使用它的原因是因为它看上去很傻 :-) 

好了,就这些,我希望这些东西会对你有些用处。如果你有问题,别犹豫………… 

3

对 X, GUI 更详细的解释-2 对 X, GUI 更详细的解释-2

我想我可以花点时间来回答你在Linux Gazette上贴的问题。从你的问题看,我可以告诉你虽然你是个Linux新手,但你看到了在界面工作上的一些基本不同。目前我正在Inter工作,管理 Unix Cad工具,我每天都要给那些管理员这解释这些不同,我想你会比他们懂的多了。

  1. 术语GUI,window manager,desktop,和interface间的区别(如果有的话),它们和X window有什么关系?

    X windows是一种把东西画在你的屏幕上的办法。所有的X windows 客户端(画在你面前的部分)都知道如何响应某些命令,例如“画一个绿框”,“画一个点”为客户图象分配内存…… 这不象你想象的Windows那样。所有的应用程序把这些命令发送到你的客户端。这是通过tcp/ip,实现的,即使你的应用程序和客户端在同一台机器上也是这样。这点非常重要。在MS Windows里首要的设计缺陷就是在窗口系统里缺少网络层。每个 X应用程序(任何窗口……xterm netscape xclock)查看"DISPLAY"这个环境变量来找出它应该让谁画出它自己。 如果你的DISPLAY被设置成 computer1:0.0 而你在computer2上,当你键入'xterm'是它将会在computer1的屏幕上弹出来。(如果你的权限许可的话)。这就是为什么在我工作的计算机上,我可以从HP的,RS6000的和SUN的Linux上开窗口过来。它们可以在一起工作的很好。

  2. 所有的窗口管理器(象GNOME或KDE或FVWM95)都运行在X windows之上吗?

    是的。根据上面说的,你现在应该知道,X是绘制的那个东西。任何需要画出的东西都要运行在X上。

    但是,我们需要把窗口管理器弄的更清楚一些,因为我还没有告诉你这个。在MS Windows里,当一个程序挂起的时候,它会占居你的屏幕,直到你关掉它。这时你通常没有办法移动它或最小化它。这是windows 设计上的第二个缺陷。每个MS Windows的程序都有一些代码来处理标题条、关闭、最大化、最小化按钮。这些代码在一个共享库里,因此你不是必须自己写。但是总有一些在那里。而在X windows里程序根本就不知道它的标题条,或标题条上的按钮。程序仅仅在它需要的时候告诉X画出它们。另一个程序,窗口管理器来做这件事。(它管理窗口)窗口管理器负责画出这些标题条和上面的按钮。当你最小化一个窗口或用图标代替它的时候,窗口管理器也负责把这个窗口隐藏起来。程序不能参与这些事。这就意味着即使程序这个挂起了,它仍然是可以移动的,可以被最小化,可以被关闭。(有时不能被关闭,除非你的窗口管理器被设置发送kill -9)

    KDE和GNOME不是窗口管理器。它们不画标题条、让你可以改变窗口大小或其他的什么。 他们只是一个程序,提供按钮条(有些窗口管理器也做这个)和其他元素,告诉程序它们看上去是怎样的。

  3. 说一个应用软件是基于GNOME或KDE的到底是什么意思呢?如果它不是,那会怎样?你仍然可以运行它吗?

    基于GNOME的应用程序做象我刚才提到的那些事请。当GNOME告诉他们看上去什么样子和他们的行为的时候,它们会注意GNOME。如果GNOME说 “你的背景应该是红的”,它们就做个红背景。另外也有一些高级的功能。比如当一个程序问GNOME是不是可以有一个拼写检查器时,GNOME可以提供它一个(看CORBA)。

  4. GTK+(for GNOME)或Troll(for KDE)到底是什么?

    这是一个叫做widget的隐藏的层。它允许你说"画一个按钮"而不是说"画一个方框,再给方框的四边画上看起来3维突起的边,把这段文字放在框里,切顶这个框能够察觉鼠标点击,如果发生了点击,要赶紧去掉3维突起的框,然后再迅速把它画上"。不使用widget集而直接写程序做这个复杂的东西可不是什么好主意。

  5. Linux(或UNIX)窗口管理器的历史和Windows98/95的用户使用的桌面相比怎 么样?特别是,如何评价微软通过给定用户仅仅一种桌面来限制他们的选择,这种桌面据信是一种为方便用户使用而设计的。

    我想你可以从其他的回答中得到这个的答案。真正的限制时:

    1. 你不得不在你想看到这个程序的同一台机器上运行它。
    2. 如果你不喜欢windows的工作方式,你不能选择另外一个窗口管理器。
    3. 不论怎样设置windows,如果仅有一个你需要的东西没有被做进去,那也是没有办 法。而使用X,你可以使用不同的窗口管理器,桌面,widget集,无论什么。
    4. 通用桌面环境(CDE)怎么样了?它是因为太消耗系统资源或是未开放源码而没有被Linux用户广泛采用吗?

    CDE是为大的Unix厂商自己使用的而设计的。它需要重新设计而满足每个人的需要,因此就有GNOME和KDE。

希望这些回答能帮助你。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Actual Window Manager 官方中文特别版可以管理Windows任何窗体的一切!它为你的 Windows 窗口做些改变,包括在原来的窗口标题列最大化和最小化按键旁加入多个实用的按钮,可让任何想要的窗口保持在桌面最上方, 或是当窗口最小化时若任务栏已经塞满了,就能最小化于状态区或桌面,另外有了它也能让任何窗口增加透明度,包括任何软件或任何窗口等等,它的目的不是改变 你使用视窗的习惯,而是使之得到最大的发挥和增强。 额外的桌面数量不限 每个虚拟桌面是独立的全功能 两种模式的多显示器支持:经典和独立 更多… 实际使用窗口管理器,你将有一个全功能的任务栏每个监视器和许多其他功能,以提高多显示器的桌面环境。 全功能任务栏上为每个显示 桌面背景和屏幕保护程序管理 额外的鼠标功能多显示器管理 桌面配置文件 还有更多… 改进的Windows文件夹导航 实际窗口管理器允许使用两个附加的标题按钮的每个窗口。这些特殊的按钮改进Windows文件夹导航,所以你不必使用长操纵鼠标,通过跟踪到所需的文件夹。 最近的文件夹 收藏夹 更多… 为您提供了许多额外的标题按钮与实际窗口管理器: 最小化到系统托盘 移动到下一个显示器 总在最前 调整窗口大小 还有更多… 单独配置每个窗口 配置您的操作系统,如你所愿。实际窗口管理器,你可以单独设置许多参数,每个窗口。 设置启动方式和位置 设置窗口的优先级。 忽略停用 还有更多… Actual Window Manager 允许你分割了整个大的台式机或每个监控成若干不相交的区域(地砖)。如果你把一个窗口,这样的瓷砖之一,该窗口将高达扩大到瓷砖上唯一的边界。 根据您的需要,并激活它们的飞行,视情况需要,你可以创建多个自定义平铺布局。
### 回答1: Window桌面记时器是一种方便的工具,用于在计算机桌面上进行计时和倒计时操作。它通常具有简洁的界面和易于操作的功能,非常适合在日常生活和工作中使用。 使用Window桌面记时器,我们可以轻松地进行计时操作。我们只需设置所需的时间,如时分秒,然后点击开始按钮,计时器就会开始工作。我们可以随时查看当前的计时情况,例如已经经过的时间或剩余的时间。 对于需要倒计时的情况,Window桌面记时器也提供了便捷的功能。我们可以设置倒计时的时间,例如倒计时10分钟,然后点击开始按钮,计时器就会反向计时。当倒计时时间到达时,计时器会发出声音或提醒,以提醒我们任务已经完成。 同时,Window桌面记时器还具有一些额外的功能,如提供多个计时器同时运行的能力,方便我们同时处理多个任务。它还可以在计时结束时执行自定义操作,如关闭计算机或启动其他程序。 总的来说,Window桌面记时器是一个非常实用的工具,能够帮助我们高效地管理时间和任务。不论是在学习、工作还是生活中,它都可以提供准确的计时和倒计时功能,帮助我们更好地掌握时间。无论是需要计时还是倒计时,Window桌面记时器都是一个可以信赖的选择。 ### 回答2: Window桌面记时器是一种功能强大的计时工具,它可以帮助用户测量时间、管理任务和提高工作效率。这种记时器以窗口形式出现在桌面上,非常方便实用。 首先,Window桌面记时器可以用于测量时间。用户可以通过设置开始和结束时间来计算任意时间段的长度。这对于需要倒计时的活动非常有用,例如各类考试、烹饪等。用户可以根据需要设置记时器的时长,并在倒计时结束时自动发出提醒。 其次,Window桌面记时器可以帮助用户管理任务。用户可以通过将记时器设置为特定任务的时间限制,例如阅读、写作或运动,提高工作效率。当倒计时结束时,记时器会自动提醒用户停止任务,以保证任务按时完成。 此外,Window桌面记时器还具有一些其他实用的功能。用户可以自定义记时器的外观和声音设置,以使其更符合个人喜好。同时,还可以设置多个记时器,方便同时进行多项倒计时或任务管理。 总结起来,Window桌面记时器是一种非常实用的工具,可以帮助用户测量时间、管理任务和提高工作效率。无论是在学习、生活还是工作中,它都能够提供准确的计时和及时的提醒,帮助用户合理安排时间,提高工作效率。 ### 回答3: Window桌面记时器是一种应用程序,可在计算机的桌面上显示计时器,用于测量时间段。它被广泛用于各种活动,如工作,学习,锻炼,烹饪等。 这种记时器具有许多有用的功能。首先,它可以设置定时器来提醒您何时完成任务或活动。您可以设置以小时,分钟和秒为单位的计时器,并在时间结束时自动发出音频或视觉提醒。这对于管理时间和提高效率非常重要。 其次,Window桌面记时器还具有计时模式。您可以使用计时模式来追踪某项活动或任务所花费的时间。例如,如果您正在学习或工作,可以使用计时模式来记录您投入的总时间。这对于评估和提高您的工作效率非常有帮助。 此外,记时器还可以显示当前时间,并提供一些基本的时钟功能。这是因为它的界面是类似于传统时钟的样式,您可以从中读取当前的日期和时间。 总之,Window桌面记时器是一个功能强大且易于使用的应用程序,可帮助用户管理和追踪时间,提高工作效率和时间管理。无论您是需要一个提醒器还是一个计时器,这款软件都能满足您的需求。它是一个非常方便实用的工具,适用于各种场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值