作者:Sun公司 马君海 来源:赛迪网-软件世界
Sun目前的软件策略可以总结为一个词:开放源代码。Sun已经使Solaris Unix操作系统开放源代码化,Sun公司CEO乔纳森表示,Sun将最终使其所有软件技术开放源代码化,甚至包括Java编程语言。Sun的目的是用开放源代码商业模式的“破坏力”蚕食其它软件厂商的市场份额。
与两年前相比,现在的Sun有了很大变化—在Solaris的开放源代码化、NetBeans开发人员社区、Sparc架构向多内核技术的发展等方面取得了很大的进展。
Sun过去的一个重大失误是只偏重硬件,而现在业务要平衡得多。Sun不是“将放弃硬件业务而优先发展软件业务”,而是“Sun将把软件作为Sun业务中的一个重要组成部分,利用它积极地影响的硬件业务”。
Open Solaris:开源重要一步
2005年1月25日,Sun宣布将Solaris 10进行开放源代码。该源代码在由开放源代码促进会(Open Source Initiative,OSI)批准的“通用开发和发布许可”(Common Development and Distribution License,CDDL)协议下提供。
Sun公司还创建了一个社团网站—opensolaris.org,Solaris源代码在2005年第二季度在这个新的社团网站上提供。
除此之外,Sun公司还在CDDL协议下发布了Solaris Dtrace技术的源代码。Dtrace、动态跟踪技术是Solaris 10操作系统最通用的新特性之一。Dtrace的源代码已经可从opensolaris.org网站下载。
Sun设立了一个社团咨询董事会,以帮助监管OpenSolaris OS技术的进展与社团开发等相关事务。最开始,董事会由五人组成,其中两人来自OpenSolaris试用社团,两人是Sun公司雇员,一人从更广泛的开放源社团中选出。该社团咨询董事会在2005年3月最后确定,并在不断地发展,以满足整个社团迅速发展的需求。
由OSI(开放源代码促进会)董事会在1月14日批准的CDDL协议,是以受到广泛关注的Mozilla公共许可(MPL)协议为基础的。
Sun通过与开放源社团中其他成员的合作,基于MPL许可协议创立了一个新的许可协议。CDDL许可协议更简短、更清晰,且简化了通告要求,对专利诉讼提供了更强劲的保护。CDDL还是一个可重复利用的许可协议,因此它对其他开放源有很大的吸引力。有了CDDL,同类社团的其他项目和许可就无需再创建新的许可协议了。
OpenSPARC:处理器也开源
2005年12月13日,Sun公司宣布了OpenSPARC项目,即开源其新的具有突破性的UltraSPARC T1处理器的设计要点。
在成功进行Solaris 10的开源项目之后,Sun将在长期的源代码共享机制的基础上创建相关社团,第一就是创建一个新的64位、32线程的SPARC/Solaris社团,以激励在多线程系统和“片上系统”设计方面的创新。OpenSPARC项目已经于2006年第一季度启动。
此外,Sun公布了基于UltraSPARC的芯片的技术规范,其中包括Verilog中的设计源代码、一个验证工具包和模拟模型、指令集架构的技术规范(UltraSPARC Architecture 2005),以及一个Solaris OS端口。该计划的目标,是让社团成员能够基于可行的技术,以低成本进行研发,不受限制地进行创新。UltraSPARC T1的源代码将在OSI批准的开源许可下发布。
通过这一具有突破性意义的UltraSPARC T1代码开源举措,Sun提高了在处理器体系结构设计和应用设计中的参与程度,消除Internet下一波发展中的障碍。该项目将围绕硬件的设计开展更多的协作,使采用不同技术进行设计时的成本降低,并促使新产品快速推向市场。
OpenSPARC项目与OpenSolaris项目一起,预示着64位行业标准计算新时代的来临。社团可以借助设计良好的构建模块进行创新,在硬件和软件两个方面增添创新价值。此外,Sun正在积极地与开源社团一道努力,使Linux和FreeBSD运行在UltraSPARC T1平台上。
在今年的2月27日的开放源代码企业大会(OSBC)上,Sun公司宣布其OpenSPARC项目发布了UltraSPARC Architecture 2005 和 HyperVisor API技术规范,以帮助Linux、BSD和其他操作系统、中间件和应用程序向基于“酷线程”技术的UltraSPARC T1处理器移植。
这些技术规范的发布将扩大UltraSPARC T1的用户群体,让他们享用T1处理器的大吞吐量的性能优势,以及性能、功耗和占用空间诸方面创新技术带来的好处。Sun发布的相关文档可从网站opensparc.net免费下载。
Sun对以上相关文档的提供有助于一个新的“芯片多线程”技术社团的形成和发展,并对那些希望将操作系统和其他应用程序移植到基于UltraSPARC T1处理器的多线程环境的公司提供帮助。
现在,这一开放社团拥有将Linux向CoolThreads架构移植所需的信息,并可享用芯片多线程技术的优势。对基于UltraSPARC T1处理器源代码的共享,反映了Sun继续承诺支持开源研发模式,并为客户提供更多的选择。
十年前,Sun公司的创始人之一Bill Joy发布了UltraSPARC 1,而今他是风险投资机构Kleiner Perkins Caufield and Byers的一个合伙人。为了将来的创新而分享处理器代码,这种想法令他感到欣慰。
Java:呼声最高的开源
在历届Java One大会上,都有人在问Sun何时将Java开源?
在今年5月份的JavaOne2006大会上, Sun公司宣布将通过关键Java技术的公布,提供一个完全开放的SOA平台,以进一步履行它在开源方面的承诺。
Sun计划在开源方面的项目有:Sun Java Studio Creator、Sun Java System Portal Server(系统门户服务器)、Sun Java Composite Application Platform Suite(Java组合应用平台软件)、 Java CAPS中的业务流程执行语言(BPEL)引擎、NetBeans企业工具包、Sun基于Java Message System的消息序列,以及Web服务互操作性技术(WSIT)等。
作为Sun一直执行的开源其整个中间件软件产品包战略的组成部分,Sun将发布Java Enterprise System的下一代组件。
Sun将通过互联网上的OpenJava门户项目把Sun Java System Portal Server 7(系统门户服务器第7版)中的所有组件和技术发布出来。一开始,Sun将创建一个开源Portlet库,然后发布其标准化的Portlet Container,以及执行Web Services for Remote Portlets (WSRP,针对远程门户的Web服务)。
并购SeeBeyond后第一个开源发布的产品是Java CAPS BPEL引擎。
该引擎目前作为OpenJava ESB社团的部分内容在java.sun.com。Sun公司的BPEL引擎可使复杂的业务流程和工作流、Web服务、系统、人员和公司自动地协调起来。
Sun公司还宣布了一项计划,即将Sun Java Studio Development Tools开发工具作为NetBeans.org社团的部分内容发布出来。
具有创新性的重要产品Java Studio Creator工具包,主要用于基于标准的Web应用的快速可视化开发。其源代码将在今年晚些时候开放。
NetBeans企业工具包的代码来自Java Studio Enterprise产品。其完整的源代码可从www.netbeans.org/products/enterprise获得。NetBeans企业工具包包括一个完整的UML包、基于BPEL的Web服务协调工具和高级XML编辑工具。
基于Java平台企业版(Java EE)和Java系统应用服务器企业版的发布,在市场上产生的巨大影响,Sun将Project Glassfish扩展到OpenJava EE社团,并增加新的Java平台组件,以支持Java技术的更大进展。
通过mq.dev.java.net上主办的OpenJava MQ项目,开发人员和最终用户将能够使用基于企业级Java消息系统的消息序列。
Web服务互操作性技术(WSIT)是一组WS-*实现,它专注于安全性、消息、服务质量和元数据支持,能促进Java技术和.NET框架之间的互操作性。WSIT将在wsit.dev.java.net上提供。
开源:风物长宜放眼量
对Sun公司来说,开源短期内不能够取得明显的效益,甚至指望通过开源来刺激硬件销售,也不是短期内所能够达成的目标。
是否能够刺激销售,不仅仅是有没有代码的问题。在获得、分析、试用软件前,甚至是在它上面开发软件前,人们不会购买软件。软件采购模式已经由“预先分析”向“事后分析”过渡。
无论是查阅源代码还是试验一些项目,企业都可以按照自己的节奏来做,而不会受到Sun 的任何干预。一旦项目规模扩大时,客户就会与Sun接触,寻求支持服务。这才是Sun在开源问题上所要获得的利益:软件及服务。
因此,Sun在开源领域的成效将是多元化的。到目前为止,Solaris 的下载量达到了500万次,而这件事发生在短短的一年时间内。
衡量开源目标和成效的标准非常有趣:它们是下载量、使用者、开发人员、财务目标。
Sun并没有以兼容性为理由拒绝使Java开放源代码化。现实情况是,大多数个人已经能够获得Java的源代码。担心影响许可途径和灵活性,是Sun采取措施限制Java完全开放源代码化的原因。
在标准化过程之外还存在许多Java、Solaris、SPARC开放活动。不能总是以历史的眼光来看待问题。在开放源代码时代之前,标准在软件产业中是重要的,因为它是提高产品兼容性的惟一途径。在开放源代码时代,出现了不同的创新、开发模式和不同的标准概念。时代要求容许所有可能性存在,而不能只看眼前的短期利益。
在将产品和技术开源的征途中,Sun将继续扮演着先驱者的角色。Sun承诺,将通过业界标准的开源许可模式,开源其整个软件产品包,让客户能方便地、广泛地获得它所有的源代码。Sun集成软件平台中的许多组件已经开放了源码,包括Solaris OS、Sun Java应用服务器、NetBeans软件工具,和若干重要的基础服务,如单点登录功能和通过标准方式连接多个独立应用的功能。