从2001年认可“开放标准”但不赞成“开源模式”,到实施“共享模式”,到与Sun和解、和Novel携手,再到2007年向开源协会(OSI)申请“开源许可证”,微软拥抱开放的姿态似乎愈加明显。
微软“开放” 完成自我救赎
微软首席研究及战略官克瑞格·蒙迪(Craig Mundie)关于向中国开放互操作性源代码的承诺,在2007年底得以落实。
微软负责协议计划的总监Ajay Sikka在会晤中国开源软件推进联盟主席陆首群教授时表示,微软将执行欧盟的裁定,同意向开源竞争者开放互操作性源代码,开放范围将从欧盟扩大到包括中国在内的全世界。
据陆首群教授的博客透露,微软开放的是全部内外协议的源代码,开放形式既不同于2003年微软与国家计委签约的“只准看、不准拿”的“共享源码” 形式,也不是在网上自由免费下载的开源方式,而是向开源竞争者提供许可授权和技术支持。尤其值得注意的是,微软对用于商业性目的的开源竞争者,收取的特许费率由原来的5.95%大幅降低到0.4%。
此前,微软(中国)有限公司首席技术官李志霄在接受本报记者专访时明确表示,微软对开源的态度是“参与、合作、学习、成长”。尽管微软的开放标准OOXML在2007年9月没有通过ISO的快速通道,但是从2001年认可“开放标准”但不赞成“开源模式”,到实施“共享模式”,到与Sun和解、和Novel携手,再到2007年向开源协会(OSI)申请“开源许可证”,微软在开放这条路上似乎是越走越快了。
理性的选择
“在IT走向融合的潮流下,拥抱开放是一个理性选择。”业内资深分析师、计世资讯副总经理曹开彬表示。
在他看来,就微软而言,开放具有3个层面的含义: 试图与开源社区冰释前嫌进行合作,以满足各种软件互操作性的需求; 和各种开放标准组织接触、向他们靠拢,甚至自己牵头去做一个开放的文档标准OOXML; 与产业上下游的软硬件厂商协作,打造生态链。
“无论微软是迫于自身竞争的需要,还是用户互操作性需求的推动,任何人都希望微软越来越开放。” 曹开彬说。
李志霄也表示,今天必须承认的现实是,世界上永远不可能只由一家软件公司和一家硬件公司来提供所有的软件和硬件,因为用户需要在任何时间、任何地点、通过任何方式获得开放的信息。
因此,微软希望能够通过开放标准,使各个厂商的产品和服务实现高效率的互操作性。“值得注意的是,开放标准和开放源代码是两码事。” 李志霄反复强调,开源是一种商业运作模式,开源软件能确保用户可以获得修改和再发布源代码,但不能保证互操作性,因为开源软件可以实施开放标准,也可以不实施开放标准。
“时代呼唤开放标准。”陆首群在其博客中表示,“对开源与微软来说,互操作性是他们的共同追求,决不是‘一头热’的问题。”
据了解,开放标准是指通过在应用编程接口(API)、通信协议(Protocol)以及数据和文档格式(Format)方面使用公开发布的规范,来实现各种异构信息系统之间的互操作性。具体到文档格式,用户受封闭之苦已有多年。
一方面,由于封闭的文档格式只有用特定的专有软件才能完全读取其内部信息,用户使用起来非常麻烦; 另一方面,由于软件升级等原因也有可能造成文档内容的丢失,文档的长期保存 存在巨大的隐患。
越来越多的用户开始放弃“二进制”的文档格式。2005年9月,美国马萨诸塞州政府甚至宣布,从2007年开始,政府雇员所有保存和建立的电子文档必须全部使用开放文档格式。
在这一形势下,微软从封闭转向开放,宣布自Office 2007版本起放弃原有的文档存储格式,开始采用Open XML文档存储格式,并于2005年12月将Office Open XML文档格式规范提交给了ECMA(欧洲计算机制造商协会);一年后,OOXML被确立为欧洲行业协会标准。
开放的疑义
既然选择采用XML文档存储格式,为何ODF标准之外,微软还去牵头做一个OOXML标准?
“一个主观因素是微软不愿意受制于人,失去办公文档领域领先企业的地位,在ODF标准中,其对手IBM和SUN最具有话语权; 一个客观因素是,在微软牵头做OOXML时,ODF尚未成为国际标准。”一位不愿意透露姓名的业内人士表示。
李志霄则这样阐述微软的观点:“微软认为有几个标准同时存在,能丰富用户以及合作伙伴的选择。
对于OOXML,李志霄认为有几点希望业界能够了解: 首先,XML技术不只是用于文档,微软对XML的技术研究已经有非常久的历史,早在十几年前微软就贡献给了W3C标准。具体用到产品中,微软是随着XML 技术的成熟,在一代一代的产品中逐步应用。“在Office XP当中的.xls已经有XML的格式了,到Office2007全部都用XML的格式。”
其次,OOXML可以兼容以前微软“二进制”的文档。“世界上已有数以几十亿计的老文档存在,我们不可能抛弃它。” 李志霄说,“从‘二进制’转到现在的XML,微软当仁不让而且义不容辞,否则老客户会有意见。” 李志霄告诉记者,微软给客户和合作伙伴留有空间,采用的是自定义模式,他们可以根据自己的开发去创新,而不是被固定的文档格式所捆绑。
再者,“自OOXML提交给ECMA后,它不再属于微软的私有标准。” 李志霄表示,微软对ECMA做出的承诺是,微软在OOXML的知识产权全部免费,而且任何使用OOXML的人无需与微软签署协议。“我们通过转换器,与ODF、UOF实现互操作性。”
陆首群教授表示,OOXML要从一个企业标准、行业标准提升为国际标准,其条款要增加公开性、透明度,“因为将来一个国家存档的重要文件,如果绑定在一个企业‘暗箱操作’的条款之上,将会带来很大风险。”
或许,此次微软开放全部内外协议的源代码,就是一种积极的态度。
链接
澄清开源与开放标准的误区
开放标准主要定义应用编程接口、通信协议以及数据和文件格式,是公开发布并为公众认可的技术规范。它与开源具有本质的区别: 其一,概念领域不同。开放标准强调的是一种技术规范; 而开源则是一种软件的开发模式和应用方式。
其二,两者来源领域不同。开放标准可能来自于私有技术,也可能来自于联盟组织,只要得到产业或国际标准化组织的认可,均可提供完全的竞争可能性; 开放源代码则是源于遵循开发源码软件许可证的一种软件开发与发布的行为模式。其开放的源代码也并不意味着是开放标准。
其三,两者应用特点不同。开放标准的特点主要在于阐明与互操作性相关的技术和商业特征。开源则主要涉及提供企业级或桌面端的应用软件系统。
具体到文档标准,ODF、OOXML、UOF等都具备开放标准的特征。
(责任编辑:A6)
--------------------next---------------------