`
lovnet
  • 浏览: 6721460 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

Windows Vista 桌面窗口管理器(2)

阅读更多

在DWM中,我们的每个窗口都用一个Surface表示,都可以看到为是3D的网格。虽然每个窗口还是一个矩形,但它们都位于一个3D空间之中。窗口的操作,比如最大化,还原等等,都发生了变化,它们都是对网格进行3D变换实现的。与以往有了很大的区别。

在Windows Vista中窗口的毛玻璃效果非常绚丽。在窗口的边界,我们可以看到窗口下面的内容。这其中同时具有一个的透明和模糊效果。但是,在实现毛玻璃时,为了不让下面的窗口内容过于清晰影响上面的窗口,DWM组还对下面的窗口实现了模糊效果。其中的实现要点有:

1、模糊下面的内容,这是由自定义的象素Shader实现,这个Shader是一个完全运行在GPU的小程序,它可以并行处理多个象素。
2、模糊只是针对窗口边界下的部分内容。这些内容需要从不同的缓冲提取出来。
3、摸索的方法类似于平均值处理:一个象素的值等于其邻居象素的平局值。

众所周知,Direct3D支持多个Surface,最后显示不同Surface时是通过Flip(翻转)实现的,DWM也是如此。这样实现的结果就是不会在出现以前的Tearing。使得桌面变得更平滑。

现在,我们的桌面虽然称得上是一个全屏幕的Direct3D应用程序。不管是老式只支持帖图加速的图形处理器还是新型的高速图形处理器,我们都需要操作图形处理器的存储系统。这就出现了两个重要的问题:

1、在窗口很多时,运行DWM需要的内存将是一个问题,它随着用户的窗口数增加而增加。
2、DWM会与其它的应用程序共享内存资源。比如DirectX应用程序、视频回放和WPF应用程序等等。

解决这些问题,微软提出了Windows显示驱动模型(Display Driver Model)。WDDM是Vista及以后操作系统的新的DirectX驱动模型。WDDM主要提供三项功能:1、虚拟化视频内存。2、允许与GPU的交互。3、允许DirectX表面可以跨进程共享。

在WDDM中,显示内容是虚拟化的。这就表示显示内容与系统内存一样。我们知道,在系统内存中如果内存分配完毕,此时还有新的分配要求,就会产生第二存储页面,然后由系统管理存储页面和主存储的页面算法和机制。现在,主存储是显示内存,而第二存储页面是系统内存。在显示存储和系统内存都分配完后,将使用磁盘作为视频内存表面。当然,这种情况比较少见。但是这样的设计使得WDDM足够的健壮,应用程序的可靠性也得到增强。在WDDM而言,它将实现非常关键的功能:执行内存的分配、实现分配内存和真正的显示内存的控制。WDDM本身也在不断的改进中。

既然WDDM已经实现了显示内存的虚拟化,那么这就意味着WDDM具有调整应用程序的GPU命令优先级的功能。这种功能通常是由WDDM调度程序实现。因此WDDM必须能中断GPU的某些操作,并保存操作的上下文,以备在必要时恢复操作继续运行。基于这项功能,WDDM提供了两种级别的调度支持:

1、基本调度。它是基于DirectX9的WDDM驱动和硬件所支持的调度粒度。也就是说单独的Primitive和Shader程序不能被中断,上下文交换必须在它们完成后进行。

2、高级调度。它是基于DirectX10的WDDM驱动和硬件所支持的调度粒度。这种调用支持比Primitive和Shader更细粒度的中断。注意,虽然DirectX10支持高级调度,但是它并不是DirecX10所必须的。也就是说,只有部分硬件支持高级调度。桌面窗口管理器使用DirectX9,因此它是支持基本调度。

分享到:
评论

相关推荐

    Vista界面仿真器 1.90┊将XP的各种界面元素变为Vista样式┊绿色版

    本程序可以将Windows XP的界面外观完全模拟成为Windows Vista的超炫样式。您只需要点击一个按钮,本程序就可以将XP的各种界面元素,如窗口外观(可视风格...赶快下载Vista界面仿真器吧,数分钟后您就能拥有Vista的界面了

    使用VB6.0在Windows Vista下实现全磨砂玻璃窗口

    使用过Windows Vista 的用户都会对Vista窗口的磨砂玻璃效果印象深刻,而如果你在Windows Vista 下使用过 Windows Media Player 11 更会发现微软把这种效果扩展至WMP11的底部区域,使得WMP的底部按钮区域成为一条...

    Vista界面仿真器 V2.2

    本程序可以将Windows XP的界面外观完全模拟成为Windows Vista的超炫样式。您只需要点击一个按钮,本程序就可以将XP的各种界面元素,如窗口外观(可视...赶快下载Vista界面仿真器吧,数分钟后您就能拥有Vista的界面了!

    windows启动管理器关闭取消

    windows 启动管理器关闭 取消软件NTBOOTautofix v2.5.3- NT系统引导菜单自动修复工具 ------------------------------------------------------------------------------------------------------------------------...

    Vista界面仿真器

    本程序可以将Windows XP的界面外观完全模拟成为Windows Vista的超炫样式。您只需要点击一个按钮,本程序就可以将XP的各种界面元素,如窗口外观(可视...赶快下载Vista界面仿真器吧,数分钟后您就能拥有Vista的界面了,

    Vista界面仿真器 加载多种Vista版本的界面哟

    本程序可以将Windows XP的界面外观完全模拟成为Windows Vista的超炫样式。您只需要点击一个按钮,本程序就可以将XP的各种界面元素,如窗口外观(可视...赶快下载Vista界面仿真器吧,数分钟后您就能拥有Vista的界面了!

    从Windows服务监视桌面窗口

    从Windows服务捕获并保存桌面窗口。

    雪桌面日历绿色版

    采用分层透明度调节,确保与桌面背景良好的融合,并且在Vista及Windows7下可以嵌入桌面、可以在开启UAC保护时正常运行。 [升级记录]: 6.6 更新至 6.61 1.修改了定时运行的判断 2.修正隐藏最顶端后再显示时窗口...

    opDesk (XP下模仿vista3D界面) 绿色特别版 V1.4.1

    尽管多任务多进程的Windows操作系统的确给我们的工作和生活带来了不少的方便,但随着我们电脑配置越来越强劲,因此同时 打开的运行的程序也越来越多,如何在众多窗口中快速切换到目标也就成为众多用户所急需解决的...

    3D虚拟桌面

    特色和优势: 在多个桌面下工作娱乐。 以炫目的 3D 形式显示多个桌面。 使用鼠标键盘快速在桌面间切换。 通过拖动窗口到屏幕边缘将窗口...Windows XP、Windows Vista 或 Windows Vista x64。 800 Mhz CPU。 256 MB RAM。

    鱼鱼桌面秀 2010 ZOL版

     2、选项窗口增加对脚本的支持,可以用脚本创建出任意功能和界面的选项  3、为小工具在桌面创建快捷方式的时候改用其icon.png来作为图标,更加美观  4、默认不启用IESharp,可以从 属性-其他 中勾选启用  5、修正...

    飞雪桌面日历 2.62 绿色版

    16.修正Vista/Windows7下放大窗口时桌面花屏问题。 17.修改了几个节日,增加1个电台 3.8 To 3.81 1.修正壁纸任务添加超过256个图片程序出现错误问题 2.修正3.76-3.8版本在非管理员用户下程序无法正常运行问题 ...

    [原创]unix2dos dos2unix 批量 windows升级版

    unix2dos批量转换工具(双向) MS桌面版 前一版描述较不祥细,以至于很同朋友不知道可以选择多个文件拖放,故在此多啰嗦几句。 注明:1、窗口支持拖放,单文件或多文件同时拖放均可 2、新版本添加文件列表窗口中点...

    Dexpot 中文免费的虚拟桌面软件

    除了桌面管理,Dexpot 还提供了一些很酷的类似Mac的窗口预览和全屏的方式,酷还是其次,提高使用体验最重要。如果你是一个电脑重度使用者,经常需要开启n>10个不同程序或窗口的人,或者希望能把工作环境分类,那么 ...

    Uniko Windows 7 直角玻璃主题 一款磨砂质感的玻璃主题.zip

    它包括桌面背景、屏幕保护程序、窗口边框颜色和声音方案。某些主题也可能包括桌面图标和鼠标指针。 Uniko Windows 7 直角玻璃主题 win7的设计有别于XP系统等以往的windows系列,它通过的是Windows 7的个性化设置...

    飞雪桌面日历 7.6绿色

    Vista系统在开启Aero时不支持桌面嵌入,如果任何一个功能窗口使用了“嵌入桌面”功能,本软件会暂时关闭系统的Aero特效,来实现嵌入效果。如果您不想关闭系统Aero,则必须关闭本软件所有窗体的“嵌入桌面”功能。...

    windows7操作系统专项习题.doc

    ( ) A.windows server 2003 B.win 7 C.linux D.vista 2.win 7的各个版本中,支持的功能最少的是( ) A.3 B.4 C.5 D.6 3.在windows 7的各个版本中,支持的功能最少的是( ) A.家庭普通版 B.家庭高级版 C.专业版 D...

    Displayfusion Pro 7.0中文注册版.rar

    软件介绍: ...Vista/Windows7用户:您必须将 DisplayFusion 安装到您的"Program Files"或"Program Files (x86)"文件夹中,否则 DisplayFusion 将无法管理高特权窗口,例如 MMC 控制台窗口。

    DDrawCompat:Windows Vista,7、8和10的DirectDraw兼容性和性能增强

    要求Windows Vista,7、8或10 仅适用于Windows Vista和Windows 7的附加要求: 兼容WDDM的图形驱动程序-不再支持旧版XPDM驱动程序(自v0.3.0起) 必须启用桌面合成(尤其是对于窗口模式应用程序)安装从页面下载最新...

Global site tag (gtag.js) - Google Analytics