信息来源:搜狐IT
开源软件Linux / OSS
Linux操作系统是开源软件(OSS)的重要组成部分,是OSS的龙头。虽然Linux仅占OSS源程序代码行的3-5%,Linux技术应用也已成为OSS技术应用的同义词。“企业级Linux”标志着Linux已从“玩家”手中走上了工程应用,形成了Linux/OSS产业(作为现代软件产业的重要组成部分)。
全球Linux发展
据IDC预测,全球Linux市场每年以25%速度增长,到2008年将达350亿美元(其中桌面Linux将达10亿美元,占3%),其中对三大操作系统在未来服务器市场占有率变化的预测如下:
中国Linux发展
近年来,国内Linux发展很快,高于国际平均水平。据“赛迪”统计,2004年中国Linux销售增长率为45%,高于同期全球销售增长率34%,高出约1/3。电信级(GCL)的应用,中国走在世界前列,电信、金融、能源、铁路、邮电、政府、企业、学校等领域Linux的应用正在逐步扩大,中国市场容量和潜力很大;但在人才、技术、投资、商业模式和市场成熟度方面与欧美先进国家比尚有一段距离。
在OSDL的支持下,目前我们正在组织DTL、DCL、CGL和MLI的开发。中国政府颁发3G牌照的准备工作已可望完成,NGN/NGI的建设已提到日程上来,为CGL和MLI应用带来了福音。
信息化应用解决方案的产业链
采用Linux OS后,针对信息化应用解决方案,可提供开源、混合、商业软件三种可供选择配套的产品/产业链;开源产品/产业链发展很快,但有些产品尚未完全成熟;在中国,相对于Linux OS,OSS产品/产业链发展存在滞后现象。
开源软件LAMP架构
由于开源软件LAMP架构(即Linux操作系统,Apache-开源web服务器或内涵Web、应用、业务中间件的服务器,MySQL-开源数据库,PHP或PHP、Perl、Python脚本语言)的崛起,与IBM、Sun主导的J2EE架构(Java语言)和微软主导的.Net架构(C#语言)形成了三角鼎立的竞争态势,打破了某些软件巨头的垄断局面,迫使他们降低产品价格,改善服务,拿出应对方案。
开源软件为中国软件提供了发展机遇
近来,国内出现一股反对开源软件的言论,他们说什么:“自由/开源软件由于其倡导的GPL规则的限制,它们将不具有多少商业价值”,形成“软件免费,服务收费”的畸形模式,“压低了包括商业软件在内的全体软件的价值”,“自由/开源软件只是一个科技神话,是一场过眼云烟,成不了气候”,“自由软件这种开发和经营模式将来也不会成功”,“迄今为止软件产业发展史主要是商业软件的发展史”,“开源软件业务的商业模式或盈利模式长期以来一直是未获解决的难题”,“开源/自由软件对现行知识产权法律制度持有‘怀疑’或‘对抗’态度,使知识产权归属处于混乱和复杂状态,使包括Linux在内的不少开源软件处于被‘侵权’的高风险之下”,“Linux的总成本(TCO)要大大高于Windows”,“过去的经验表明,政府和行业组织‘偏爱’和‘过度的倾向性支持’不符合市场经济规则”,“社会上过度宣扬‘开源软件’的‘免费’和‘自由使用’迎合了社会上轻视和低估软件价值的错误思潮,不利于我国软件产业的发展和信息化建设”,“靠盗版或其他途径‘免费’使用软件,永远发展不了我国的软件产业”……等等。这些言论不符合历史和事实。今年9月,Bill Gates说“软件产业是自由软件和商业软件的混合物”。我赞成Gates这个迟来的表态,这说明全球整个软件产业的发展史并不只是商业软件或私有软件的发展史。我一直主张发展开源软件是为用户提供多一种选择,今年8月我应邀访问微软,他们很多高级主管都同意我这个意见,他们现在也提出了“共存”这个概念。他们还说,微软应向开源软件学习:(1)如何控制并降低软件模块化或集成成本的激增,(2)如何学习社区开发机制的有益经验,(3)如何增加软件的透明度以赢得用户信任度的增加。
自由/开源软件在全球发展很快,这是不可否认的事实。最近英国政府出台了一项关于开源软件的扶持政策,要求公共部门的IT采购,以及凡是由公共资助的开发项目涉及的采购,一定要考虑采用开源软件解决方案,要采购开源软件。这时跑出来一个人叫Stephen Marshall,他提出了一些不同意见,其中有“所谓开源软件知识产权的归属在现行的英国法律中可能形成混乱”的说法,这就变成了被国内某些人引用并用来论证所谓“开源软件破坏了软件产业发展”的根据。
社区和企业两种互相补充的开发机制
为了加快中国Linux和开源软件的发展,我们认为,在开发机制方面,要形成社区开发和企业开发互为补充的两种机制,前者主要是搞创新,后者主要是做稳定,即做好工程化、产品化工作。国内至今尚未形成社区开发的机制,多是关起门来做,缺乏开放性,无法充分利用全球高达数千名有能力、有智慧进行开发创新的人才及其成果。
建设Linux生态系统
对于Linux或OSS来说,孤立地开发或推出一个产品(发行版)是不行的,必须形成围绕该产品平台的生态系统,即把大量丰富的应用软件移植到这个产品平台上来,该产品必须能预装到一些必要的硬件体系结构中去,必须能与众多外围设备匹配衔接。而移植、预装、匹配是需做大量测试、修改工作的,涉及成百上千个企业协同工作,需耗费大量人力、物力、财力和时间。为做到这一点,首先必须开发出产品性能好、技术水平高、运行稳定、销售价格低,符合用户需求的、在全球能进入主流的产品,否则要吸引或取得全球广大企业、社区的支持,共同来营造一个生态系统是不可能的。当然在营建生态系统过程中,还要取得广大企业、特别是拥有丰富资源和影响力的跨国公司,以及有关社区的大力支持。我认为,以Linux为例,能成为全球的主流产品的数量估计不会多于3~4个,在全球,Linux核心联盟(LCC)或Debian核心联盟(DCC)正在争取推出第3个主流产品,我看希望并不大,因为不能用纯技术观点来看待这个问题;我认为中国要争取成就一个。
走联合、合作之路
中国现有Linux企业主要有红旗、共创、中标软等5~6家,他们多具有在艰苦创业环境中拼搏的精神,与国内主要用户也有密切联系、互动的良好条件,这几年在政府支持下相继开发、完善推出一批Linux产品,市场占有率也逐年扩大,甚至在一些大客户订货招标中一度还击败了外国同行,共创开源公司等企业与CSIP合作开发,推出桌面Linux升级版,并已与联想计算机公司协议在其PC中预装3000套。但总的来说,国内Linux企业规模还不大,力量也较弱,资金不雄厚,只有实行国内联合、国际合作才能把Linux/OSS做大做强(当然联合不能搞立刻相互兼并那样的简单化,要探索大家能够接受并取得共赢的模式)。
建立持续发展、不断升级的能力
产品开发决不能寄希望于“一次成功”,要建立产品持续发展、不断升级的能力。无论在开源软件或商业软件中出现缺陷(Bug)是很自然的、经常的,关键在于要很快找到解决对策,为用户及时提供补丁(Patch),这个周期不能太长,这方面的服务必须跟上。我们在有关应急处理高档技术人才和服务意识上尚有差距。
为了提供完全由开源软件集成的解决方案(当然开源软件也可与商业软件组成混合共存的解决方案),关于Linux与其他开源软件的系统集成,需要进行协同测试,找出最佳组合或优化集成,特别是对不同开源软件、在不断升级中的不同版本,要在集成条件下进行追踪、测试,并不断升级为最佳组合或最新版本的集成,我们在这方面也要建立相应的开发机制与之适应。
开源软件(技术)-工程化技术-服务技术
必须指出,开源软件包括系统软件、应用程序以及编程工具等其所有软件的源代码都是公开的、开放的。但其体系结构(即Profile,不是Architecture或FrameWork)、软件模块配置/包装等工程化、产品化技术是可以不公开的。Linux开发技术还包括服务技术。整个Linux开发技术由开源软件技术、工程化技术和服务技术所组成。在全部开发技术中,公开的和不公开的部分均拥有核心技术,在不公开的部分中自然拥有自主知识产权。这里提到的体系结构,指架构文档的细部,即环绕产品功能的稳定性、高效、灵活扩展性在各软件模块间协同工作、耦合情况、调用方式等依赖关系的处理方式;它主要仰赖于底层技术、工程经验和隐性知识。
全部Linux开发技术表现为:
开源软件推出的各种商业模式
有人说,自由/开源软件由于受其倡导的规则(如GPL)的限制,它将不具有多少商业价值,形成了“软件免费、服务收费”的“畸形模式”,甚至压低了包括商业软件在内的全体软件的价值。似乎需要进行口诛笔伐。这些人认为,自由/开源软件是过眼云烟,成不了气候。他们根本不明白开源软件的技术构成,即“开源软件(技术)-工程化技术-服务技术(纠错、升级等)”,以及在此基础上形成的商业模式。他们这样的认识是十分浅薄和模糊的。
目前Linux或OSS均进入了产品化、产业化、持续发展阶段,已经出现了十几个不同的、成功的商业模式,如其中有RedHat(GPL)模式、Mozilla模式、MySQL模式、SugerCRM模式等。它们都立足于开放源代码软件与工程化技术相结合,立足于在软件开放条件下的不同的、可执行的许可证授权方式,从而出现了在“薄利多销、扩大市场”战略指导下,依托有效的开源商业模式,开始走上盈利的良性循环,这也为中国Linux或OSS产业持续发展带来了机遇。可喜的是,一些中国的Linux企业也开始走上了扭亏盈利之路。
中国软件产业发展之路
(一)一些奇谈怪论
自2000年以来,中国软件取得长足发展,但表现出来的主要不足是中国企业和产品同时缺乏国内和国际竞争力,近年来更是利润下降。于是一些人就把开源软件作为替罪羊,说什么:“自由/开源软件压低了包括商业软件在内的全体软件的价值”,“自由/开源软件的发展不利于我国软件产业的发展和信息化建设”……等等。对这些奇谈怪论,我在2005年10月26日的《科技日报》上发表了一篇文章对此进行了批驳。文章的中心思想是:“开源软件为中国软件的发展提供了难得的机遇,开源软件的出现搞活了全球软件产业”。
(二)创造自主品牌
中国软件发展中存在最大的问题是什么?是人才问题,体制问题,外部市场环境问题,发展战略问题,要进行综合分析。人才问题特别是高档次的人才,严重缺乏系统架构师和高级软件管理人员,我看可以算一条。中国软件发展战略提出要上规模上水平,这个原则是对的,但如何实施有待研究。关于学习印度模式搞外包业务,以及采用CMM管理模式来管理软件开发过程,在业界是有争论的,有人认为通过外包、代工方式可以学习,但不可能超越;CMM方式不适合小企业,负担过重。我想有一点要特别注意,衡量中国软件发展战略成功与否要看是否能够突破和掌握多少核心技术,是否能够成长多少自主品牌,如果说外包方式人家将架构、定义、规范等均已确定,你只要按CMM方式搞明细,完善后续具体的开发过程,那就不可能掌握核心技术、产生自主品牌。而采用开源软件模式,可以充分利用全球开源的资源,为我们开发自主品牌创造捷径,从而实现跨越性发展。众所周知,影响软件产品与应用的关键是成本与质量。把采用开源软件充分利用社区开发成果纳入中国软件发展战略,也有利于解决软件质量与成本这样的关键问题。