放大啦资源网 http://www.fangdala.com
当前位置首页 > 百科资料> 正文

dwm

2023-01-14 04:09:40 暂无评论 百科资料

DWM是英文"Desktop Window Manager"的简称。是来自windows Vista及w360百科indows 7中的一个新组件。

  • 中文名称 桌面窗口管理器
  • 外文名称 Desktop Window Manager
  • 简称 DWM
  • 基础 Windows操作系统

Windows窗口管理器

  来自桌面窗口管理器是windows Vista及windows 7中的一个新组件:Desktop Window Manager(DWM)。它建立在WPF核心图形层组件基础之上。DWM的桌面合成是建立在Composition引擎基础之上的新特征。它的出现几乎改变了Vista中应360百科用程序的屏幕象素显示方呼停式。启用DWM后,提供的视觉效果有毛玻璃框架、3D窗口变换动画、窗口翻转和高分辨率支持 。其中最明显的特征有:任务栏窗口的实时缩略图;Alt-Tab和Win-Tab组合键所看到的效果。

桌面组合

  到目前为止Vista最大的改变就是引进桌面组合。这成为一切都由DWM执行的基础。桌面组合的主要特点是:应用程序取得屏幕上像素的方法已经本质的改变。

dwm效果界面

  在Windows的各个版本,直到XP,程序通过窗口来paint他们的可见区域,并且它们直接paint到buffer,然标判立军合比粮的行月后显示到显卡。有了Vista,程序通过窗口来paint它们的整个表面到一个离测次银立屏(offscreen)的表面(可能叫做位图,缓冲区或纹理)群服必批队触,并且DWM处理所有这些offscr上先een表面,并且组合在一起放到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是唯一缩放这个D识部支金越PI无知程序的地方,将其最终展现给用户,提高高分辨率监视器上的体验。

内存的使用情况

  因为每个窗口都需要在内存中有一个缓冲区来存储窗口的上下文, 所以这个 d错们境wm.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相关的东西

X11窗口管理器

  dwm - dynamic window manager

  dwm是为X11编写的窗口管理器,是采用MIT许可证的开源软件、体现极简风格的窗口管理器,其开发的原则是:代码不超过2000行,所有配置选项均包含在一个头文件中。

  与传统窗口管理器的不同点在于,dwm尽量使新窗口不遮挡老窗口的内容,避免过多的鼠标拖动窗口、鼠标改变窗口大小等操作。

  极简风格是电脑软件开发的一个广为人知的思想。它对dwm影响很大,同时对其他窗口管理器(比如xmonad、awesome)影响也很大。dwm在外表上酷似wmii,但本质上更简洁。dwm完全使用C语言编写,为了保持简洁,除了修改源代码外,没有配置文件可供修改。它的源代码压缩包仅60K,能在一秒之内编译生成可执行文件dwm。

特点

  1,支持多工作区;

  2,可以使用鼠标来改变窗口大小;

  3,通过改变顶栏(默认)的状态来选择平铺还是普通窗口摆放模式;

  4,顶栏支持显示窗口名字(默认窗口无标题栏),顶栏通常作为提示栏显示系统信息、歌词等;

  5,焦点跟随鼠标

截图

  dwm下虚拟终端、GIMP以及虚拟终端下VIM截图

分支

  xmonad是Haskell 对dwm的重写扩展。

  awesome是对dwm的扩展,扩展包括矢量字体支持、带配置文件、Lua脚本支持、可变主题、多窗口摆放模式。

  echinus是对dwm的扩展,扩展包括矢量字体支持、是EWMH的子集、焦点跟随鼠标点击、带配置文件、多窗口摆放模式。

  scrotwm使用了部分dwm的代码,添加配置文件并可以在不丢失原先状态下重启以应用配置文件。

猜你喜欢