X視窗管理器

将和窗口管理器保持为独立的部件]]
X視窗管理器是X窗口系统中,用來控管視窗外觀和放置方式的視窗系統软件,主要用於類Unix系統。

X视窗管理器和苹果公司的Macintosh和微软公司的Windows的操作环境具有不同的使用模式。后两者都有长期固定的用户界面和操作模式,而这些都是由开发商决定的,用户无法更换或者只能作微小调整。X视窗管理器提供完全开放的,和图像显示软件无关的用户界面。用户可以自由选用窗口管理器。这些管理器可以拥有完全不同的特性,包括:

*外观和功能的可配置性
*用于启动程序或者进行设置的菜单
*启动程序的方式,可能是命令行式的,也可能是图形化的,比如停靠栏。
*多桌面、虚拟桌面(比显示器尺寸要大的桌面)和用于切换桌面的桌面切换器(pager)。
*内存和系统资源的消耗
*和桌面环境的整合程度。部分X窗口管理器提供更加完整的用户界面、系统软件和应用程序。

X視窗管理器的運作原理
當視窗管理器開始運作時,X伺服器和客戶端之間的互動,會重新導向到視窗管理器。每當要顯示一個新視窗時,這個請求便會被重新導向到視窗管理器,它會決定視窗的初始位置。此外,大部分較新的視窗管理器會改變視窗的親屬關係,通常會在視窗頂部加上標題列,並在視窗周圍加上裝飾性的框架。這兩個部分皆由視窗管理器來控制,而不是其它程式。因此,當使用者點擊或拖曳那些元件時,視窗管理器會進行適當的動作(如移動或改變視窗的大小)。

視窗管理器也負責處理圖示,圖示並不存在於X Window核心協議的層次中。當使用者將視窗最小化時,視窗管理器會取消視窗的映射(使其不可見),並完成適當的動作,將視窗改顯示成圖示。某些視窗管理器並不支援圖示功能。

視窗管理器主要的目標,就如同其名,是用來管理視窗的。許多視窗管理器提供附加的功能,如處理滑鼠在根視窗上的點擊,呈現出窗格以及其它的視覺化元件,處理按鍵(例如 Alt-F4 可關閉視窗),判定哪一個應用程式在啟動時執行等等。

特殊的視窗管理器
幾種特殊的視窗管理器如下。

虛擬視窗管理器
虛擬視窗管理器使用了虛擬的螢幕畫面,其解析度可大於顯示器的解析度。當希望有較多的視窗時,這個功能也很有用。虛擬視窗管理器包括有 FVWM、Tvtwm、HaZe 等等。

平铺式视窗管理器
平铺式视窗管理器是以不重疊畫面的方式組織螢幕畫面(故稱為平铺式),相對於傳統的方式,它更近似於以坐標為基礎的疊置物件(視窗),其嘗試模仿辦公桌的式樣。

第一個平铺式视窗管理器是 larswm,隨後是 Ion。以下是平铺式视窗管理器的列表:

*Awesome [http://awesome.naquadah.org/]
*dwm [http://dwm.suckless.org/]
*i3 [http://i3wm.org/]
*Ion [http://tuomov.iki.fi/software/]
*larswm
*Musca [https://web.archive.org/web/20130315014341/http://aerosuidae.net/musca.html]
*Ratpoison [http://www.nongnu.org/ratpoison/]
*Stumpwm [http://www.nongnu.org/stumpwm/]

*Xmonad [http://xmonad.org/]

主流X視窗管理器
*Blackbox (minimalist)
*Enlightenment
*Fluxbox (轻量级,基于Blackbox)
*FVWM(twm基础上开发的的 虚拟窗口管理器)
*IceWM
*KWin(原名 KWM, KDE默認的窗口管理器)
*Metacity( GNOME 2.2後成為默認的窗口管理器)
*Mutter
*MWM (Motif Window Manager)
*Openbox( LXDE默認的窗口管理器,基于Blackbox)
*Sawfish (原名 Sawmill,前GNOME系统默认窗口管理器)
*twm (X Window系统X11R4以来的默认窗口管理器)
*Xfwm, (Xfce默認的窗口管理器)

其它X視窗管理器
*4Dwm
*5Dwm (derived from mwm, true SGI look&feel)
*9wm [http://unauthorised.org/dhog/9wm.html] (複製 九號計畫 原先的視窗系統)
*aewm [https://web.archive.org/web/20061213142305/http://www.red-bean.com/%7Edecklin/software/aewm/]
*
*amiwm [http://www.lysator.liu.se/~marcus/amiwm.html] Amiga workbench unix clone.
*Awesome [http://awesome.naquadah.org/]
*Compiz (a compositing window manager) and Beryl (window manager) an under development fork of it
*CTWM
*
*dwm [http://dwm.suckless.org/]
*EvilPoison [https://web.archive.org/web/20070321034106/http://www.darkarts.co.za/projects/evilpoison/] (a fork of evilwm with Ratpoison-like keybindings)
*evilwm [http://www.6809.org.uk/evilwm/]

*FVWM95
*hackedbox [https://web.archive.org/web/20070311170630/http://www.scrudgeware.org/projects/Hackedbox/index.html]
*HaZe
*i3[http://i3wm.org/]

*JWM (Joe's Window Manager)
*Kahakai
*larswm
*Luminocity (experimentation in compositing)
*LWM [http://www.jfc.org.uk/software/lwm.html]

*Musca [https://web.archive.org/web/20130315014341/http://aerosuidae.net/musca.html]
*OLWM(and OLVWM [https://web.archive.org/web/20081204203055/http://home.nyc.rr.com/twopks/olvwm/] with virtual desktops, OPEN LOOK window managers)
*Oroborus
*PekWM[http://www.pekwm.org/]
*PLWM
*PWM
*Qvwm (Windows 95/98 look-alike) [http://freshmeat.net/projects/qvwm/] (list of forks)
*Ratpoison [http://www.nongnu.org/ratpoison/]
*Scwm (the Scheme constraints window manager)
*Stumpwm [http://www.nongnu.org/stumpwm/]
*Orion A nested (tiled or floating) window manager written in Scheme and scsh
*swm (the original virtual desktop implementation)
*Toy'd([https://web.archive.org/web/20061210202702/http://www.toyd.org/ HomePage] [http://code.google.com/p/toyd GoogleProject] a portable window manager for MS-Windows & UNIX / Linux platforms)
*TrsWM
*uwm
*Waimea [http://www.freedesktop.org/Software/waimea]
*WindowLab
*Window Maker
*wm2 [http://www.all-day-breakfast.com/wm2/]
*WMI

*XPwm(for XPde,Windows XP Look alike)
*Xmonad(平铺窗口管理器) [http://xmonad.org/]
*XWEM [https://web.archive.org/web/20130605083134/http://www.xemacs.org/Documentation/packages/html/xwem.html]

參閱
*Re-parenting window manager for a popular implementation technique
*X Window System protocols and architecture for context
*Compositing manager for another kind of manager in X
*Compositing window manager that combines two roles in one program
*Windowing system for other platforms than the X Window System

外部連結

评论 (0)

  • 还没有评论,来抢沙发吧。