WPF图形系统


  在Windows NT中,图形多媒体系统基于层次结构。应用程序与顶层的API(实际上是多个用户模式的系统DLL,比如GDI32.DLL)交互,这些系统DLL最终会通过系统服务调用处于内核模式的系统服务。

NT系统的详细信息可参考《Windows 图形编程》的第一、二章。在Windows Vista中,图形系统已经移出了内核模式,并有自己的空间--WPF。 WPF移出内核除了全面提高稳定性(内核模式中通常需要共享资源),也使得实现内核模式高级控制成为可能。

    首先,WPF不再唯一依靠GDI图形API,Vista更多的依靠Direct3D处理图形操作,这样允许更多的D3D特征,实现更酷的外观和效果。当然,为了实现这样的效果,Vista的设计上也有所改变。Windows Vista尽量不用CPU进行显示,而是用显示卡的图形处理单元(Graphics Processing Unit, GPU),用矢量图代替位图。 Windows Vista还采用了另外一种驱动模型--Windows显示驱动模型(WDDM)。实现操作系统和图形卡GPU之间更复杂的通信。为了处理操作系统更高的3D处理请求,新的WDDM驱动类型需要更多的显示卡内存。Vista能尽可能的利用显示卡以达到最好的性能。

     现在基本了解了Windows Vista图形系统,再看看其可测量性。Windows Vista可提供非常高的终端图形,据此很多人都错误的认为:为了运行Windows Vista操作系统,必须要非常高端的图形硬件。事实上并不完全如此。Windows Vista图形系统一个关键好处就是可以检测显示卡的性能。Vista根据不同的性能和驱动模型(WDDM,XPDM)提供给用户不同的用户体验。

    在Windows NT中,图形多媒体系统基于层次结构。应用程序与顶层的API(实际上是多个用户模式的系统DLL,比如GDI32.DLL)交互,这些系统DLL最终会通过系统服务调用处于内核模式的系统服务。NT系统的详细信息可参考《Windows 图形编程》的第一、二章。在Windows Vista中,图形系统已经移出了内核模式,并有自己的空间--WPF。

    WPF移出内核除了全面提高稳定性(内核模式中通常需要共享资源),也使得实现内核模式高级控制成为可能。首先,WPF不再唯一依靠GDI图形API,Vista更多的依靠Direct3D处理图形操作,这样允许更多的D3D特征,实现更酷的外观和效果。当然,为了实现这样的效果,Vista的设计上也有所改变。Windows Vista尽量不用CPU进行显示,而是用显示卡的图形处理单元(Graphics Processing Unit, GPU),用矢量图代替位图。

    Windows Vista还采用了另外一种驱动模型--Windows显示驱动模型(WDDM)。实现操作系统和图形卡GPU之间更复杂的通信。为了处理操作系统更高的3D处理请求,新的WDDM驱动类型需要更多的显示卡内存。Vista能尽可能的利用显示卡以达到最好的性能。

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3