开源技术发展介绍-开源技术发展介绍

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

12019/8/26Inspurgroup开源技术发展介绍集团企业发展部2013-12-2422019/8/26Inspurgroup1开源定义与区别2开源许可证介绍与分类3开源的发展趋势4开源软件快速发展并广泛应用的原因5开源软件发展历程6目录7国内开源软件的发展及社区现状开源软件如何盈利8开源中国开源世界3一、开源定义与区别1、定义OpenSource(即开放源代码)的定义由BrucePerens(曾是Debian的创始人之一)定义如下:●自由再散布(FreeDistribution):获得源代码的人可自由再将此源代码散布。●源代码(SourceCode):程式的可执行档在散布时,必需随附完整源代码或是可让人方便的事后取得源代码。●衍生著作(DerivedWorks):让人可依此源代码修改后,在依照同一授权条款的情形下再散布。●原创作者程式源代码的完整性(IntegrityofTheAuthor’sSourceCode):意即修改后的版本,需以不同的版本号码以与原始的程式码做分别,保障原始的程式码完整性。●不得对任何人或团体有差别待遇(NoDiscriminationAgainstPersonsorGroups):开放源代码软件不得因性别、团体、国家、族群等设定限制,但若是因为法律规定的情形则为例外(如:美国政府限制高加密软件的出口)。4一、开源定义与区别●对程式在任何领域内的利用不得有差别待遇(NoDiscriminationAgainstFieldsofEndeavor):意即不得限制商业使用。●散布授权条款(DistributionofLicense):若软件再散布,必需以同一条款散布之。●授权条款不得专属于特定产品(LicenseMustNotBeSpecifictoaProduct):若多个程式组合成一套软件,则当某一开放源代码的程式单独散布时,也必需要符合开放源代码的条件。●授权条款不得限制其他软件(LicenseMustNotRestrictOtherSoftware):当某一开放源代码软件与其他非开放源代码软件一起散布时(例如放在同一光碟片),不得限制其他软件的授权条件也要遵照开放源代码的授权。●授权条款必须技术中立(LicenseMustBeTechnology-Neutral):意即授权条款不得限制为电子格式才有效,若是纸本的授权条款也应视为有效。5一、开源定义与区别2、区别开源软件与自由软件的区别许多人将开放源代码与自由软件(FreeSoftware)视为相同,其实不然。以定义条件而言,自由软件仅是开放源代码的一种,也就是说自由软件的定义较开放源代码更为严格。并非开放源代码的软件就可称为自由软件,要视该软件的授权条件是否合乎自由软件基金会对自由软件所下的定义。61开源定义与区别2开源许可证介绍与分类开源的发展趋势开源软件快速发展并广泛应用的原因开源软件发展历程目录34567国内开源软件的发展及社区现状开源软件如何盈利8开源中国开源世界7二、开源许可证的介绍与分类1、开源许可证介绍开放源代码定义给出了开放源代码软件的基本性质。不幸的是,术语开放源代码遭到了滥用,并且由于它的描述性,它不能作为一个商标被保护。由于社团需要一种可靠的方式以确定一份软件是否真正是开放源代码软件。OSI为此目的而注册了一个认证标志,OSICertified。如果在一份软件上看到了该标志,那么该软件就是必定是按照遵从开放源代码定义的许可证发布的,否则,该发行人就是在滥用该标志而且违反了法律。许可证将特定的权利赋予用户,但同时也会规定用户必须遵守的约束。开源软件通常使用开源许可证。所有的开源许可证由开放源代码促进会标准组织(OpensourceInitiative,OSI)认证。8二、开源许可证的介绍与分类2、开源许可证的分类按照使用条件的不同,开源软件许可证可以分为三类(严苛程度递减)(1).使用该开源软件的代码再散布(redistribute)时,源码也必须以相同许可证公开。代表许可类型:GPL,AGPLGNU通用公共许可协议(英语:GNUGeneralPublicLicense,简称GNUGPL或GPL),是一个广泛被使用的自由软件许可证条款,最初由理查德·斯托曼为GNU计划而撰写。GPL是自由软件基金会的主打许可证,常用的是1991年的第2版和2007年的第3版。GPL授予程序接受人以下权利:一、以任何目的运行此程序的自由;二、再发行复制件的自由;三、改进此程序,并公开发布改进的自由(前提是能得到源代码)。GPL许可协议具有强Copyleft,有“病毒效应”,意味着用户如果要对GPL许可的软件或基于GPL许可的软件的作品做再发行即Redistribution(例如作为用户的产品的一部分发行),那么必须以不强于GPL许可证限制的条款发行,即必须也是开源和免费,这就是所谓的“传染性”。GPL许可协议是目前最流行的开源许可证,被诸多有名的开源软件使用,例如Linux内核、MySQL数据库等。9二、开源许可证的介绍与分类(2).使用该开源软件的代码并且对开源代码有所修改后再散布时,源码必须以相同许可证公开。代表许可类型:LGPL,CPL,CDDL,CPL,MPL等例:LGPLGNU宽通用公共许可协议(英语:GNULibraryGeneralPublicLicense,简称LGPL),又名GNU库通用公共许可证,同样出自自由软件基金会,有1999年的2.1版和2007年的3.0版。LGPL是GPL的宽松版,它对产品所保留的权利比GPL少,总的来说,LGPL适合那些用于非GPL或非开源产品的开源类库或框架。因为GPL要求,使用了GPL代码的产品必须也使用GPL协议,开发者不允许将GPL代码用于商业产品。LGPL绕过了这一限制。LGPL具有弱Copyleft效力,较商业友好:允许动态链接;有条件地允许静态链接对于LGPL许可的代码本身做了修改,那么再发行就必须使用LGPL或GPL许可证进行。10二、开源许可证的介绍与分类(3).使用该开源软件的代码(包括修改)再散布(redistribute)时,没有特殊限制,只需要明记许可。代表许可类型:ASL,BSD,MIT等例:MITMIT协议可能是几大开源协议中最宽松的一个,由麻省理工学院在1988年推出,又名X11许可证或者X许可证,有不少变种。核心条款是:该软件及其相关文档对所有人免费,可以任意处置,包括使用,复制,修改,合并,发表,分发,再授权,或者销售。唯一的限制是,软件中必须包含上述版权和许可提示。这意味着:你可以自由使用,复制,修改,可以用于自己的项目。可以免费分发或用来盈利。唯一的限制是必须包含许可声明。MIT协议是所有开源许可中最宽松的一个,除了必须包含许可声明外,再无任何限制。111开源定义与区别2开源许可证介绍与分类开源软件快速发展并广泛应用的原因开源软件的发展历程目录3开源的发展趋势4567国内开源软件的发展及社区现状开源软件如何盈利8开源中国开源世界122019/8/26Inspurgroup1、发展趋势随着计算机技术的发展,尤其是互联网技术和相关企业的兴起,开源软件在操作系统、编译工具链、数据库、WEB服务器、移动操作系统等各个方面已经成为主流。而且许多企业利用开源软件形成了独特的商业模式。比如谷歌的Android操作系统,从2007年开源发布第一个版本起,到今天已经发展到4.4版本,占据了智能手机操作系统一半以上的市场份额,谷歌也通过Android操作系统在移动互联网这一新兴行业中占据了领先和主导地位。再比如在服务器端广泛使用的关系型数据库MySQL,在以开源软件和商业许可并行的模式下,得到了快速发展,并在2008年作价10亿美金由Sun收购(后者又在2009年被Oracle公司以74亿美金的高价收购)。相反,以前一直和开源软件做斗争的微软公司,却因为无法快速推出适应市场的WindowsPhone操作系统,在移动互联网竞争中处于下风。为顺应潮流,微软也开始拥抱开源,比如向Samba项目贡献代码,放弃自己研发多年的大数据项目而选择Hadoop为其大数据的核心等。三、开源的发展趋势132019/8/26Inspurgroup三、开源的发展趋势2、Android发展各版本及LOGO142019/8/26Inspurgroup三、开源的发展趋势3、Android结构图151开源定义与区别2开源许可证介绍与分类3开源软件快速发展并广泛应用的原因5开源的发展趋势目录4开源软件发展历程67国内开源软件的发展及社区现状开源软件如何盈利8开源中国开源世界162019/8/26Inspurgroup四、开源软件的发展历程1、开源软件发展历程开源软件的发展,和互联网的发展密不可分。真正有规模的开源软件,应该是从上个世纪90年代开始进入公众视线,也就是互联网开始兴起的年代。我们大致可以将开源软件的发展分为如下三个阶段:(1)、萌芽阶段(上世纪九十年代之前)。这个阶段主要以个人和大学为主,因为发布条件受限,大多数开源软件无法得到有效传播,而仅仅流传于互相熟悉的程序员和老师、学生之间。这个阶段的典型开源软件为BSD操作系统。(2)、以非盈利组织为主的阶段。这个阶段应从上个世纪九十年代算起,说起这个阶段,我们不得不提到RichardStallman发起的自由软件基金会,还有Apache基金会等。前者发起的GNU项目(1983年发起,九十年代后随Linux普及),成就了Linux操作系统;后者维护的ApacheWEB服务器,在互联网上几乎占据了统治地位。(3)、以大型IT企业为主的阶段。这个阶段出现于2005年之后,以谷歌为代表的大型互联网企业,开始以各种方式发布开源软件,最为著名的是Chrome浏览器以及Android操作系统;当然还有Intel、Nokia等企业主导的Moblin、MeeGo等基于Linux的智能手机操作系统。172019/8/26Inspurgroup四、开源软件的发展历程2、开源软件发展历程图182019/8/26Inspurgroup四、开源软件的发展历程3、Linux发展历程图191开源定义与区别2开源许可证介绍与分类3开源软件的发展历程4开源的发展趋势目录67国内开源软件的发展及社区现状开源软件如何盈利8开源中国开源世界5开源软件快速发展并广泛应用的原因202019/8/26Inspurgroup五、开源软件快速发展并广泛应用的原因1、疑问很多人不理解,既然作者这么大方地将源代码都公开了,只是为了“有用”,且不提供任何“担保”,看起来原作者是无法直接获利的,那为什么没有直接的利益驱动,开源软件却能够得到这么快速的发展和广泛应用呢?212019/8/26Inspurgroup五、开源软件快速发展并广泛应用的原因2、原因(1)、开源软件虽说不提供任何担保,但既然原作者愿意公开源代码,说明作者对代码的质量还是非常有信心的。实际上,开源软件的作者通常都是编码高手(俗称“黑客”),其质量甚至超过某些商业软件。(2)、开源软件因为其免费特征,能够得到大量用户的使用和验证,通过形成和用户(往往也是编码高手)之间的互动和交流,能够以最快的速度修复可能的缺陷,改善软件设计。Linux内核的发展就形成了一个以全世界内核高手为主的松散社区,通过快速迭代开发,加上其免费特征,迅速占据了原先由商业UNIX系统控制的服务器操作系统领域。(3)、因为任何人都可以得到其源代码,所以很多用户就可以自行修改其源代码,以满足自己的一些特别需求。(4)、因为开源软件的涉及面非常广,利用已有的各种成熟开源软件,任何具有一定实力的组织,均可在较短时间内形成一个基本成熟的软件平台,进而可和已有的商业软件平台进行竞争。谷歌的Android系统属于此种情况的典型。所以,尽管开源软件的发展历程并不是一帆风顺的,但基于以上原因,开源软件显现出了其强大的生命力。各种基于开源软件的成功商业模式,也为开源软件的发展注入了加速剂。222019/8/26Inspurgroup1开源定义与区别2开源许可证介绍与分类3开

1 / 36
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功