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(繁體中文)