窗口管理器
窗口管理器和桌面環境是用戶在 X Window 系統里的主要界面. 窗口管理器只是個程序, 它控制窗口的外表,位置和提供用戶去操作這些窗口程序的方法. 桌面環境為操作系統提供了一個較完整的圖形操作界面, 和提供了一定範圍和用途的實用工具和應用程序.[1]
原理
當窗口管理器開始運作時,X服務器和客戶端之間的互動,會重新導向到窗口管理器。每當要顯示一個新窗口時,這個請求便會被重新導向到窗口管理器,它會決定窗口的初始位置。此外,大部分較新的窗口管理器會改變窗口的親屬關係,通常會在窗口頂部加上標題列,並在窗口周圍加上裝飾性的框架。這兩個部分皆由窗口管理器來控制,而不是其它程式。因此,當使用者點擊或拖曳那些元件時,窗口管理器會進行適當的動作(如移動或改變窗口的大小)。
窗口管理器也負責處理圖示,圖示並不存在於X Window核心協議的層次中。當使用者將窗口圖示化時,窗口管理器會取消窗口的映射(使其不可見),並完成適當的動作,將窗口改顯示成圖示。某些窗口管理器並不支援圖示功能。
窗口管理器主要的目標,就如同其名,是用來管理窗口的。許多窗口管理器提供附加的功能,如處理鼠標在根窗口上的點擊,呈現出窗格以及其它的視覺化元件,處理按鍵(例如 Alt-F4 可關閉窗口),判定哪一個應用程式在啟動時執行等等。
主流X窗口管理器
AfterStep
Blackbox (minimalist)
Compiz (a compositing window manager)
evilwm
Enlightenment (window manager)|Enlightenment
Fluxbox (lightweight, based on Blackbox)
FVWM(a virtual window manager,derived from twm)
IceWMIon (window manager)|Ion tiling tabbed window manager designed with keyboard users in mind
Openbox( LXDE默認的窗口管理器)
KWin(最初叫 KWM, 是 KDE默認的窗口管理器)
Metacity( GNOME 2.2後成為默認的窗口管理器)
MWM (Motif (widget toolkit)|Motif Window Manager), Motif Window Manager
Sawfish (window manager)|Sawfish (a past default for GNOME, originally called Sawmill)
twm (default for the X Window System since version X11R4)
Window Maker
Xfwm, Xfce默認的窗口管理器
虛擬窗口管理器使用了虛擬的屏幕畫面,其分辨率可大於顯示器的分辨率。當希望有較多的窗口時,這個功能也很有用。虛擬窗口管理器包括有FVWM、Tvtwm、HaZe 等等。
平鋪式窗口管理器
平鋪式窗口管理器是以不重疊畫面的方式組織屏幕畫面(故稱為平鋪式),相對於傳統的方式,它更近似於以坐標為基礎的疊置物件(窗口),其嘗試模仿辦公桌的式樣。
第一個平鋪式窗口管理器是 larswm,隨後是 Ion。以下是平鋪式窗口管理器的列表:
Awesome
Larswm
Ion
TrsWM
Stumpwm
wmii
dwm
ratpoison
XWEM
Xmonad