WMI 基础结构

在 WMI 基础结构中,WMI 服务 (Winmgmt) 是充当管理应用程序和 WMI 数据提供程序之间的中介的操作系统组件。 WMI 存储库是 WMI 相关静态数据的存储区域。

WMI 服务在共享服务主机进程 (SVCHOST) 中作为服务进程实现。 有关详细信息,请参阅提供程序托管和安全性

当第一个管理应用程序或脚本通过调用来连接到 WMI 名称空间时,WMI 服务会启动。 根据设置,WMI 服务可能会在未被管理应用程序调用时关闭,或者会进入低内存配置文件中。

WMI 服务通过 COM 接口与管理应用程序交互。 当应用程序通过接口发出请求时,WMI 会确定该请求是针对静态数据的还是动态数据的。 如果请求涉及静态数据(例如托管对象的名称),WMI 会从存储库中检索数据。 如果请求涉及动态数据(例如托管对象当前使用的内存量),WMI 会将请求传递给提供程序。

提供程序会将其位置注册到 WMI 服务,这样 WMI 就可以路由数据请求。 提供程序还会注册对特定操作(例如数据检索、修改、删除、枚举或查询处理)的支持。 WMI 服务会使用提供程序注册信息将应用程序请求与适当的提供程序匹配。 WMI 还会根据需要使用注册信息加载和卸载提供程序。 提供程序在处理完请求后会将结果返回给 WMI 服务。 然后,WMI 会通过 COM 接口将结果转发给应用程序。 有关详细信息,请参阅向 WMI 提供数据

WMI 使用事件跟踪 (ETW) 来记录 WMI 服务活动。

由于基础结构会处理提供程序和管理应用程序之间的所有流量,因此基础结构提供以下功能:

WMI 体系结构