DWM

DWM是英文“Design Wondrous Myth”的簡稱。Design,動詞,譯為“設計、繪製、製圖、構思、構想、構想”、Wondrous,形象詞,譯為“完美的、出色的”、Myth,名詞,譯為“神話”。以上三個單詞的開頭字母組成DWM,譯為“設計完美神話”。

Design wondrous Myth

DWM是英文“Design Wondrous Myth”的簡稱。Design,動詞,譯為“設計、繪製、製圖、構思、構想、構想”、Wondrous,形象詞,譯為“完美的、出色的”、Myth,名詞,譯為“神話”。以上三個單詞的開頭字母組成DWM,譯為“設計完美神話”。

桌面視窗管理器(DWM)

Desktop Window Manager (dwm.exe) 是視窗管理器的組成部分, 是它給Vista系統(同 Windows7)提供視覺效果: 設定窗體的透明度,動態的系統列預覽, 甚至是3D任務切換。

DWM的外部特徵

DWM當然之後Vista的一部分,它的特點包括在Windows Vista Aero體驗中。這裡將拉出來幾個可識別的特點。

桌面組合

到目前位置Vista最大的改變就是引進桌面組合。這成為一切都由DWM執行的基礎。桌面組合的主要特點

dwm效果界面dwm效果界面
是:應用程式取得螢幕上像素的方法已經本質的改變。
在Windows的各個版本,直到XP,程式通過視窗來paint他們的可見區域,並且它們直接paint到buffer,然後顯示到顯示卡。有了Vista,程式通過視窗來paint它們的整個表面到一個離屏(offscreen)的表面(可能叫做點陣圖,緩衝區或紋理),並且DWM處理所有這些offscreen表面,並且組合在一起放到onscreen緩衝區。一些例子:

訪問視窗
現在程式是render到offscreen,這些offscreen表示能用在其他地方。這就是Flip,Flip3D和小圖片特性怎么樣工作的,並且其他的特性也能利用這個點。
不要在視窗操作中將背景程式牽涉進來
當視窗移動通過XP或以前的螢幕時,背景視窗部分僅僅在背景視窗甦醒並且開始paint的時候可見(相應WM_PAINT訊息,其收到頂級視窗的移動訊息)。對於非回響背景程式,或即使是回響的程式但正好是page out的,也會導致很差的用戶體驗。
考慮移動paint程式視窗通過一個IE視窗。在XP或之前的OS中,下面的症狀是不幸的但也是非常普通的:兩個case中下面的IE程式不能足夠快的repaint它自己來避免由移動Paint視窗留下的尾巴。
在Vista下,就不是這樣的情況了,下面的視窗不會收到WM_PAINT訊息,並且不會被請求要render,由於它們的內容已經在DWM中,並且用來組合這個screen的。

Tear free體驗:

假定,DWMrender到screen,DirextX提供的典型地用在遊戲上最新技術能用來整個桌面體驗。特別的,圖形卡flip前緩衝區能在螢幕上移動,增加了用戶體驗的平滑行和質量。

高解析度的支持:

主要的程式輸出都是對監視器解析度(DPI)不可知的。隨著高解析度監視器的增加(120 DPI,144DPI),程式出現在非常小的物理空間會帶來比較壞的體驗。因為DWM有訪問程式視窗的offscreen,DWM是唯一縮放這個DPI無知程式的地方,將其最終展現給用戶,提高高解析度監視器上的體驗。

記憶體的使用情況

因為每個視窗都需要在記憶體中有一個緩衝區來存儲視窗的上下文, 所以這個 dwm.exe 進程所占的記憶體大小是由打開視窗的個數控制的. 如果打開了大量的視窗, dwm.exe 則會占用更多的記憶體. 在大多數情況下, 相比占用相對較少的記憶體, 使用複合視窗管理器是值得的.

關閉 dwm

關掉 dwm.exe 的唯一方法是停止這個服務運行. 在控制臺或者開始選單中打開"服務", 然後找到列表里的 "Desktop Window Manager Session Manager", 然後點擊"停止"按鈕, 注意在點了"停止"按鈕後你會切換到系統的基本主題(Basic Theme) .
可以以管理員模式運行控制台然後使用下面的命令:
Stop Service net stop uxsms
Start Service net start uxsms
Disable Service sc config uxsms start= disabled
Enable Service sc config uxsms start= auto

將來可能的topic

桌面組合是DWM提供的最基礎的方面,但我們已經僅僅簡單說了一下表面的主題,那裡仍然有許多關於探索和完全理解我們在Vista中正在做什麼的topic。這裡錯略列了幾個topic:
1.DWM使用 DirextX, GPU和硬體加速
2.Vista顯示驅動模型對DWM的重要性和影響
3.重定向GDI和DirextX程式
4.怎么樣揭示正在使用的WPF概念和技術
5.DWM怎么樣paint視窗邊界和其他非客戶區
6.DWM遠程,顯著和訪問性
7.高DPI支持
8.公共的探索DWM API
9.rener和可視性的最佳化
10.DWM的記憶體使用

其他DWM相關的源信息

最技術的理解討論關於DWM的WEB是可能的,確實有其他地方那個有相關的信息和新聞:
1.Kam VedBrat維護的log,常常給DWM內部的描述,特別是DWM的特性和Vista Aero。
2.microsoft.public.windows.developer.winfxaero新組討論所有Aero相關的東西

相關詞條

相關搜尋

熱門詞條

聯絡我們