Windows 长久以来在 CIM 实施领域一直傲立桥头,而这一切都是从 WMI(Windows 管理基础结构)开始的。分布式管理任务组 (DMTF) 通用信息模型 (CIM) 是一种开放式标准,用于定义如何通过一组通用对象来表示接受管理的元素,并使用关联定义它们之间的关系。WMI 最初在 Windows NT 4.0 中引入并与操作系统捆绑安装,其中实施了早期版本的标准和架构。WMI 使用 DCOM 进行远程管理,因为当时尚未制订标准协议。在 Windows Server 2012 中,我们在标准和远程管理方面投入了大量精力,在 WMI 中加入了最新的 DMTF 标准和协议。
     CIM 标准具备足够的复杂度和灵活性,可用作所有设备的管理模式,尤其是数据中心设备。尽管这些 DMTF 标准已经存在多年,但仍旧难以实施,并且现有实施对于移动和嵌入式设备来说过于庞大。为了解决这些难题,Microsoft 构建了一种名为 OMI 的 CIM 对象管理器,OMI 具备高度便携、占用资源少和性能极高的优点,并且专门设计用于实施 DMTF 标准。随后,微软与 The Open Group 展开合作,以便通过 Apache 2 许可向所有用户提供 OMI 的源代码。OMI 的源代码可以在 Linux 和 UNIX 系统中轻松实施。

采用 OMI 的合作伙伴将获得以下优势:

  • DMTF 标准支持:OMI 根据 DMTF 标准实施其 CIMOM 服务器。
  • 小型系统支持:OMI 在设计时也考虑到了在小型系统中的实施(包括嵌入式和移动系统)。
  • 易于实施:显著简化在设备/平台中实施 Web service 管理和 CIM 的过程。
  • 支持远程管理:可通过 Windows 和非 Windows 客户端及服务器,以及其他支持 Web service管理的平台实时进行远程管理。
  • API 兼容 WMI:可在 Linux 和 Windows 上使用相同的 API 编写提供程序和管理应用程序。
  • 支持 CIM IDE:用于生成和开发 CIM 提供程序的工具,例如 Visual Studio 的 CIM IDE
  • 可选的 PowerShell 支持:如果 OMI 提供程序使用一系列编档的约定,Windows PowerShell 将自动发现这些约定,并根据它们自动生成 Cmdlet(Windows Server 2012 中的 2300 余条 Cmdlet 就是如此实施的)。微软刚在Github上发布了Linux上的 PowerShell Desired State Configuration Takes on Linux

OMI 详情
OMI 较低的资源占用(250KB 的基本大小,外加 1MB 的工作集内存使用)和高质量的代码将有助于开发人员更轻松地开发具备高性能和高稳定性的基于标准的管理堆栈。对于 IT 专业人员,OMI 将增加您能够管理的设备数量和类型,并通过基于标准的管理和自动化工具(例如 Windows PowerShell 和 System Center,以及其他管理解决方案)统一管理体验,从而大幅提升您的工作效率和效力。
OMI 在其 CIM 服务器的实施中包含了以下组件和工具。


可扩展

OMI 采用了一种Provider程序模型,允许开发人员将 OMI 扩展到其具体的设备或平台中。在过去,编写Provider非常困难,通常成本较高且不甚稳定。OMI 利用了一种大幅简化的Provider程序模型,该模型也在 Windows Server 2012 和 Windows 8 的 WMI 中使用。简而言之,OMI 通过向开发人员提供以下功能简化了实施:

  • 下一代Provider程序接口
  • 兼容 Windows Server 2012 和 Windows 8 中的新 WMI 提供程序接口
  • 生成Provider程序骨架 (omigen)
  • 生成具体 CIM 类数据结构和代码
  • 提供Provider注册工具 (omireg)

该模型首先需要定义接受管理的内容。根据定义的接受管理内容,omigen 工具会生成一系列用于实施管理模型的 C 语言数据结构和代码。开发人员可将这些代码添加到骨架中并注册该Provider程序。

OMI 适用于嵌入式和移动系统
嵌入式和移动设备管理可能是对于管理技术来说要求最高的任务之一,因为它们的处理器和内存约束最为显著。我们认为,如果我们能构建一种满足其需求的管理技术,那么 OMI 就应该能够满足任何设备的管理需求。因此,为了确保 OMI 较低的资源占用和嵌入式系统适用性,我们实施了以下设计特征:

  • 小于 250 千字节的服务器对象大小
  • 服务器实施完全使用 C 语言
  • Provider程序接口使用 C 语言
  • 无存储库服务器
  • 具体Provider程序类产生较少代码
  • 迭代式大小优化
  • 无盘操作

安全
安全问题。自从 Bill Gates 著名的可信计算备忘录以来,我们一直在致力于完善安全开发生命周期模型。安全性在我们开发和编码流程的所有方面都是首要考虑因素。OMI 虽然体积小巧,却实施了以下安全功能:

  • HTTPS (SSL)
  • HTTP 基本身份验证
  • 本地身份验证
  • 可插入身份验证模块 (PAM) 支持
  • 进程外Provider程序
    • 作为请求程序运行
    • 作为服务器运行
    • 作为指定用户运行

Microsoft 已与 The Open Group 结为合作伙伴,共同致力于打造针对利用、支持和强化 OMI 的硬件、软件和开发人员社区。您可以从 The Open Group 的项目网站下载 OMI 和/或了解更多详情:http://omi.opengroup.org

相关文章:

通用信息模型 CIM 开发介绍

开放式管理基础结构 OMI的更多相关文章

  1. Gradle 1.12用户指南翻译——第五十章. 依赖管理

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上 ...

  2. Windows Azure公有云服务相关方案

    http://www.cnblogs.com/sennly/p/4139675.html 1.公有云平台服务简介 Windows Azure 是一个灵活而开放的云平台,通过该平台,您可以在数据中心快速 ...

  3. 应用服务器Glassfish任意文件读取漏洞

    catalogue . 前言和技术背景 . Glassfish安装配置 . 漏洞利用 . 漏洞缓解(修复) 1. 前言和技术背景 0x1: GlassFish是什么 GlassFish 是用于构建 J ...

  4. iOS-马上着手开发iOS应用应用程序-第一部分介绍

    教程:基础 main 中的 main.m 函数会调用自动释放池 (autorelease pool) 中的 UIApplicationMain 函数. @autoreleasepool { retur ...

  5. Hyper-V介绍

    Hyer-v主机是高端虚拟主机用户的最佳选择.您不再受其他用户程序对您造成的影响,您将得到的是更加公平的资源分配,远远低于虚拟主机的故障率.Hyper-V的分区包含两种:父分区和客户分区.Hyper- ...

  6. Docker 生态概览

    Docker 和容器技术的发展可谓是日新月异,本文试图以全局的视角来梳理一下 docker 目前的生态圈.既然是概览,所以不会涉及具体的技术细节. Docker 自从发布以来发生了很多的变化,并且有些 ...

  7. Docker系列01—容器的发展历程---Docker的生态圈

    本文收录在容器技术学习系列文章总目录 Docker 和容器技术的发展可谓是日新月异,本文试图以全局的视角来梳理一下 docker 目前的生态圈.既然是概览,所以不会涉及具体的技术细节. Docker ...

  8. Yarn vs npm: 你需要知道的一切

    Yarn 是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具.就像我们可以从官方文档了解那样,它的目的是解决这些团队使用 npm ...

  9. [No0000197]Windows用户都应该知道的运行命令

    通过"运行"命令,运行Windows丰富工具的方法.如果您知道工具或任务的相应"运行"命令,那么您就知道访问所述工具或任务的最快方法. 以下是我们最喜欢的Run ...

随机推荐

  1. MongoDB聚合运算之mapReduce函数的使用(11)

    mapReduce 随着"大数据"概念而流行. 其实mapReduce的概念非常简单, 从功能上说,相当于RDBMS的 group 操作 mapReduce的真正强项在哪? 答:在 ...

  2. 【转】SqlServer将没有log文件的数据库文件附加到服务器中

    原文链接: http://www.cnblogs.com/xdotnet/p/attach_sqlserver_database_file_without_log_files.html 原作者删除了原 ...

  3. 【Hibernate框架】关联映射(一对一关联映射)

    一.整理思路: 之前,小编总结过Mybatis的关联映射,接下来,再来总结一下hibernate的相关的关联映射,直接上图: 这张图,就是小编整理总结整个Hibernate的关联映射的一个大致思路. ...

  4. shell命令大全

    请跳转至:http://www.lampweb.org/linux/2/3.html

  5. 《DSP using MATLAB》示例Example6.1

    今天是2016年最后一天了,看到其他博友都写年终总结,做了这个,做了那个,收获满满,再看看自己, 恍恍惚惚一年,不知道干了些什么,惭愧.刚才接到老妈远方的电话,弟弟就在一小时前做爸爸了,我在 这里祝福 ...

  6. Codeforces 144D Missile Silos 最短路

    time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standa ...

  7. 【刷题笔记】--lintcode木头加工(java)

    木头加工 题目描述 有一些原木,现在想把这些木头切割成一些长度相同的小段木头,需要得到的小段的数目至少为 k.当然,我们希望得到的小段越长越好,你需要计算能够得到的小段木头的最大长度. 注意事项 木头 ...

  8. 基于Proteus仿真的Arduino学习(2)——LED点阵探究A(LED点阵基础)

    一.前言: 随着LED的普及,以LED点阵为基础的显示设置层出不穷.例如,公交车的线路提示牌.高速公路的信息提示牌,安装在大楼上的广告屏幕等.下面,我们将由简单到复杂地探索各种LED点阵的使用方法,同 ...

  9. XV Open Cup named after E.V. Pankratiev. GP of Tatarstan

    A. Survival Route 留坑. B. Dispersed parentheses $f[i][j][k]$表示长度为$i$,未匹配的左括号数为$j$,最多的未匹配左括号数为$k$的方案数. ...

  10. bing的简单英文字典工具

    今天看到园友心白水撰写的<简单翻译工具--必应字典第三方API使用方法>,感觉很不错,所以用Python也写了一个.源码如下: import urllib.request import j ...