X視窗管理器

X視窗管理器是X窗口系统中,用來控管視窗外觀和放置方式的視窗系統软件,主要用於類Unix系統。
X视窗管理器和苹果公司的Macintosh和微软公司的Windows的操作环境具有不同的使用模式。后两者都有长期固定的用户界面和操作模式,而这些都是由开发商决定的,用户无法更换或者只能作微小调整。X视窗管理器提供完全开放的,和图像显示软件无关的用户界面。用户可以自由选用窗口管理器。这些管理器可以拥有完全不同的特性,包括:
- 外观和功能的可配置性
 - 用于启动程序或者进行设置的菜单
 - 启动程序的方式,可能是命令行式的,也可能是图形化的,比如停靠栏。
 - 多桌面、虚拟桌面(比显示器尺寸要大的桌面)和用于切换桌面的桌面切换器(pager)。
 - 内存和系统资源的消耗
 - 和桌面环境的整合程度。部分X窗口管理器提供更加完整的用户界面、系统软件和应用程序。
 
X視窗管理器的運作原理
[编辑]當視窗管理器開始運作時,X伺服器和客戶端之間的互動,會重新導向到視窗管理器。每當要顯示一個新視窗時,這個請求便會被重新導向到視窗管理器,它會決定視窗的初始位置。此外,大部分較新的視窗管理器會改變視窗的親屬關係,通常會在視窗頂部加上標題列,並在視窗周圍加上裝飾性的框架。這兩個部分皆由視窗管理器來控制,而不是其它程式。因此,當使用者點擊或拖曳那些元件時,視窗管理器會進行適當的動作(如移動或改變視窗的大小)。
視窗管理器也負責處理圖示,圖示並不存在於X Window核心協議的層次中。當使用者將視窗最小化時,視窗管理器會取消視窗的映射(使其不可見),並完成適當的動作,將視窗改顯示成圖示。某些視窗管理器並不支援圖示功能。
視窗管理器主要的目標,就如同其名,是用來管理視窗的。許多視窗管理器提供附加的功能,如處理滑鼠在根視窗上的點擊,呈現出窗格以及其它的視覺化元件,處理按鍵(例如 Alt-F4 可關閉視窗),判定哪一個應用程式在啟動時執行等等。
特殊的視窗管理器
[编辑]幾種特殊的視窗管理器如下。
虛擬視窗管理器
[编辑]虛擬視窗管理器使用了虛擬的螢幕畫面,其解析度可大於顯示器的解析度。當希望有較多的視窗時,這個功能也很有用。虛擬視窗管理器包括有 FVWM、Tvtwm、HaZe 等等。
平铺式视窗管理器
[编辑]平铺式视窗管理器是以不重疊畫面的方式組織螢幕畫面(故稱為平铺式),相對於傳統的方式,它更近似於以坐標為基礎的疊置物件(視窗),其嘗試模仿辦公桌的式樣。
第一個平铺式视窗管理器是 larswm,隨後是 Ion。以下是平铺式视窗管理器的列表:
- Awesome [1] (页面存档备份,存于互联网档案馆)
 - dwm [2] (页面存档备份,存于互联网档案馆)
 - i3 [3] (页面存档备份,存于互联网档案馆)
 - Ion [4] (页面存档备份,存于互联网档案馆)
 - larswm
 - Musca [5]
 - Ratpoison [6] (页面存档备份,存于互联网档案馆)
 - Stumpwm [7] (页面存档备份,存于互联网档案馆)
 - wmii [8][永久失效連結]
 - Xmonad [9] (页面存档备份,存于互联网档案馆)
 - bspwm [10] (页面存档备份,存于互联网档案馆)
 
主流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 [11] (页面存档备份,存于互联网档案馆)(複製 九號計畫 原先的視窗系統)
 - aewm [12]
 - AfterStep
 - amiwm [13] (页面存档备份,存于互联网档案馆) Amiga workbench unix clone.
 - Awesome [14] (页面存档备份,存于互联网档案馆)
 - Compiz (a compositing window manager) and Beryl (window manager) an under development fork of it
 - CTWM
 - cwm
 - dwm [15] (页面存档备份,存于互联网档案馆)
 - EvilPoison [16] (a fork of evilwm with Ratpoison-like keybindings)
 - evilwm [17] (页面存档备份,存于互联网档案馆)
 - Flwm [18] (页面存档备份,存于互联网档案馆)
 - FVWM95
 - hackedbox [19]
 - HaZe
 - i3[20] (页面存档备份,存于互联网档案馆)
 - Ion (平铺式窗口管理器,为键盘用户设计) [21] (页面存档备份,存于互联网档案馆)
 - JWM (Joe's Window Manager)
 - Kahakai
 - larswm
 - Luminocity (experimentation in compositing)
 - LWM [22] (页面存档备份,存于互联网档案馆)
 - Matchbox [23]
 - Musca [24]
 - OLWM(and OLVWM [25] with virtual desktops, OPEN LOOK window managers)
 - Oroborus
 - PekWM[26] (页面存档备份,存于互联网档案馆)
 - PLWM
 - PWM
 - Qvwm (Windows 95/98 look-alike) [27] (页面存档备份,存于互联网档案馆) (list of forks)
 - Ratpoison [28] (页面存档备份,存于互联网档案馆)
 - Scwm (the Scheme constraints window manager)
 - Stumpwm [29] (页面存档备份,存于互联网档案馆)
 - Orion A nested (tiled or floating) window manager written in Scheme and scsh
 - swm (the original virtual desktop implementation)
 - Toy'd(HomePage GoogleProject (页面存档备份,存于互联网档案馆) a portable window manager for MS-Windows & UNIX / Linux platforms)
 - TrsWM
 - uwm
 - Waimea [30] (页面存档备份,存于互联网档案馆)
 - WindowLab
 - Window Maker
 - wm2 [31] (页面存档备份,存于互联网档案馆)
 - WMI
 - wmii [32][永久失效連結]
 - XPwm(for XPde,Windows XP Look alike)
 - Xmonad(平铺窗口管理器) [33] (页面存档备份,存于互联网档案馆)
 - XWEM [34]
 
參閱
[编辑]- 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
 
外部連結
[编辑]- Window Managers for X by Matt Chapman
 - The Other Window Managers (页面存档备份,存于互联网档案馆) - extensive review of window managers (2003)
 - Window Managers - list of window managers with minimal comments (2004)
 - Software List:Window Managers - list of window managers with summaries
 - 名詞解釋:Matchbox(繁體中文)