注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

jasonyang9的博客

随便写写

 
 
 

日志

 
 

DWM、桌面组合、Windows Aero及其它  

2016-07-07 15:53:22|  分类: software |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
DWM、桌面组合、Windows Aero及其它 - jasonyang9 - jasonyang9的博客 

微软从Windows Vista起改变了应用程序将其内容显示到桌面上的方法,引入了“桌面组合”(Desktop Composition)技术,用DWM来负责将各个应用程序窗口的内容组合到一个显示缓冲中,经过加工后再一并展现到桌面上。 

Vista之前的Windows(包括XP),每个应用程序要在其窗口中输出内容时,会通过GDI接口,直接在系统显示缓冲中绘图。这个过程中,需要锁定缓冲,以防画面被其它程序的修改而破坏。这导致了瓶颈(总体效率很低,因为多个窗口同时更新会产生碰撞)。 

另外,由于没有为每个程序窗口保存自己的缓冲,导致被上方窗口遮挡的区域如果被重新显示出来(上方窗口移动或缩放或关闭等等),需要应用程序自己刷新这部份画面(Windows会对这些窗口发去WM_PAINT消息)。如果这些应用程序来不及响应(如:正在磁盘I/O或进行其它计算,阻碍了UI线程,或干脆没有分开工作线程与UI线程而又正在进行计算),则出现空白或无法更新画面的窗口内容破损情况(有人称之为撕裂现象)。 

DWM、桌面组合、Windows Aero及其它 - jasonyang9 - jasonyang9的博客 

DWM使用DirectXGPU与硬件加速,所以在显示卡的帮助下,可拥有极高的显示效率(GDI瞬间成为战五渣)。

“桌面组合”技术让每个应用程序在各自独立的窗口缓冲区域更新其内容,这些内容会被组合到一起,根据窗口的层叠顺序互相遮挡,经过加工(如:毛玻璃透明效果),再一并展现到桌面上。这些各自独立的窗口缓冲区还被利用在Windows Flip(就是Alt + Tab键出现的切换窗口指示)与Windows Flip3D(就是按Win + Tab键出现的3D翻转效果)以及任务栏上的预览小窗口。由于通过硬件加速处理,这些小窗口都具备实时预览效果(窗口中在播放视频也会同步显示成缩略图,感觉不到延迟)。 

DWM、桌面组合、Windows Aero及其它 - jasonyang9 - jasonyang9的博客

 P.S. Windows 7中需要打开Aero效果才能使用“桌面组合”,而Windows 8与后期的Windows 10中,这个“桌面组合”与DWM总是被打开的,无法关闭。 

其它优点就不多安利了,请看参考文档: 

https://en.wikipedia.org/wiki/Microsoft_Desktop_Window_Manager

https://blogs.msdn.microsoft.com/e7/2009/04/25/engineering-windows-7-graphics-performance/

https://blogs.msdn.microsoft.com/greg_schechter/2006/03/06/under-the-hood-of-the-desktop-window-manager/

http://blog.csdn.net/ntwilford/article/details/5656633

  评论这张
 
阅读(31)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017