什么是开源软件和不开源软件?
简单来说,"开源软件"就是源代码开放的软件,因为源代码开放了,只需要稍做修改就可以嵌入到产品中去.开源软件将使全球软件工程师和软件开发爱好者在开放源代码的环境中,以较低的开发成本,为用户提供大量更为安全、稳定的高品质软件,以满足新软件时代人类对软件极其丰富的应用要求.
什么是开源软件?
1997春天,自由软件社团的一些领导者聚集到加利福尼亚州。
这个社团包括EricRaymond,TimO'Rerlly,VA Research的总裁Larry Augustin等人,他们所关心的是一种寻找方式,来向以前躲避自由软件思想的人们推广这种思想。
他们担心,自由软件基金会的反商业信条会让人们对自由软件敬而远之。
在Eric Raymond的坚持下,这群人同意他们所缺乏的是市场营销活动,这个活动的目的是赢得思想,而不仅仅是市场份额。
最后讨论的结果产生了一个新的术语来描述他们所推进的软件:Open Source(开烦扰软件)。
他们制定了一系列的指导原则,用来描述哪些软件可以有资格被称为开源软件。
Bruce Perens 为制定开源软件的定义做了很多基础性的工作。
GNU工程的正式目标之一就是创造一个自由可用的操作系统,以作为平台来运行GNU软件。
从软件引导(softwera boottstrapping)的传统观点来看,Linux已经成为那个平台,L inux是在GNU工具的帮助下创造出来的。
Perens曾经是Debian工程的领导者,它所管理的Linux发行版本,只包括那些符合GNU精神的软件。
Perens已经在“Debian社会契约”(Debian Social Contract)中明确地阐明了这一立场。
开源软件的定义是“Debian社会契约”的直接产物,因此开源软件是与GNU的精神一脉相承的。
与GPL相比,开源软件的定义允许更大授权自由。
特别是当软件中混合了专有软件和开源软件时,开源软件的定义允许在它们的基础上生成更大的混合。
结果是,开源软件许可证能令人信服地允许使用和再分开开源软件,而不必考虑补偿或者信用问题。
举例来讲,你可以得到伟大的Netscape浏览器的源代码,并且把它作为连同另一个软件(可能是专有软件)一起发布出去,而用不着去通知网景(Netscape)公司。
网景为什么会希望如此呢?原因很多,最引人注目的是,这样做可以为他们的客户端代码赢得更大的市场份额。
这些代码与他们的商业软件一起工作得的非常好。
从这个角度来说,奉送源代码是建立平台的一个很好的方式。
这也是网景的人不使用GPL的原因之一。
这在社团中可不是小事一桩。
1998年下半年,曾经有一场重要的争论对Linux威胁极大,几乎Linux社团破裂。
裂痕是因出现了两个软件系统GNOME和KDE而引发的,它们两者都试图建立一个面向对象的桌面界面。
一方面,KDE利用了Troll Technology公司的Qt库,其中的一部分属于专有代码,但是很稳定、很成熟。
另一方面,GNOME决定使用GTK+库,尽管它不如Qt成熟,但是它是完全自由的库。
过去,Troll Technology不得不在使用GPL和维持他们的专有软件立场之间进行选择。
GNOME和KDE的裂痕本来会持续下去。
然而,在开源软件出现后,虽然Troll仍然控制他们想要的技术,但是Troll可以为希望Qt符合开源软件定义的人改变他们的许可证。
Linux社团两个重要部分的裂痕看来要弥合了。
开源软件的意义 在AMD追赶英特尔的漫漫长途中,一句广为流传的话是这样说的:“AMD的存在,不仅深受AMD客户的拥护,也是英特尔用户的福气,因为它打压了英特尔的高价垄断。
”同样,开源软件相对于商业软件也是同样的道理,尤其是对那些具有垄断性质的软件来说,开源软件更显其深远意义。
君不见在IBM、Sun等公司推动OpenOffice系统成为业界标准的进逼下,顽固如微软者也不得不把MS Office拿出来充公。
显然,随着开源软件的流行,商业软件不仅被压缩了发展空间,同时也促使软件商们不断地降低软件价格,给消费者带来了显而易见的利益。
身兼开放源代码应用基金会(OSAF)总裁和主席以及Mozilla基金会主席的Kapor先生就表示,这两个基金会并不是要创建新的杀手程序,而是要利用开源软件的模式削弱微软在网络浏览器和电子邮件软件领域的垄断地位。
事实上,对一些发展中国家,或者说那些软件业欠发达国家来说,开源软件还为他们制造了后发优势,提供了追赶和超越发达国家软件业的机会。
毕竟,对于像中国这样的发展中国家,软件业的发展严重滞后,完全依靠国内的资金和人才要想赶超像美国这样的软件大国,几乎是没有机会的,充其量只能是一种理想。
但是,如果能在基于开源软件的基础上加大投入的话,这种理想就有了实现的可能。
当然,不得不提的是,业界也有人怀疑,开源软件是否会扼杀国内软件人士的努力。
就像AMD前段时间向我们提供X86技术一样,有人担心会使国人失去研究龙芯的兴致。
还有人认为,像MS Office这样的软件如果都开源的话,那么微软们就不可能再投入大量的资金进行开发和升级,从而也会间接地阻碍软件业的发展。
这些言论有一定道理,但开源的意义就是为了挖掘新的产业模式,这种探索精神正是我们世代所鼓励的。
软件开源有什么作用
开源软件的意义 在AMD追赶英特尔的漫漫长途中,一句广为流传的话是这样说的:“AMD的存在,不仅深受AMD客户的拥护,也是英特尔用户的福气,因为它打压了英特尔的高价垄断。
”同样,开源软件相对于商业软件也是同样的道理,尤其是对那些具有垄断性质的软件来说,开源软件更显其深远意义。
君不见在IBM、Sun等公司推动OpenOffice系统成为业界标准的进逼下,顽固如微软者也不得不把MS Office拿出来充公。
显然,随着开源软件的流行,商业软件不仅被压缩了发展空间,同时也促使软件商们不断地降低软件价格,给消费者带来了显而易见的利益。
身兼开放源代码应用基金会(OSAF)总裁和主席以及Mozilla基金会主席的Kapor先生就表示,这两个基金会并不是要创建新的杀手程序,而是要利用开源软件的模式削弱微软在网络浏览器和电子邮件软件领域的垄断地位。
事实上,对一些发展中国家,或者说那些软件业欠发达国家来说,开源软件还为他们制造了后发优势,提供了追赶和超越发达国家软件业的机会。
毕竟,对于像中国这样的发展中国家,软件业的发展严重滞后,完全依靠国内的资金和人才要想赶超像美国这样的软件大国,几乎是没有机会的,充其量只能是一种理想。
但是,如果能在基于开源软件的基础上加大投入的话,这种理想就有了实现的可能。
当然,不得不提的是,业界也有人怀疑,开源软件是否会扼杀国内软件人士的努力。
就像AMD前段时间向我们提供X86技术一样,有人担心会使国人失去研究龙芯的兴致。
还有人认为,像MS Office这样的软件如果都开源的话,那么微软们就不可能再投入大量的资金进行开发和升级,从而也会间接地阻碍软件业的发展。
这些言论有一定道理,但开源的意义就是为了挖掘新的产业模式,这种探索精神正是我们世代所鼓励的。
赢利模式是开源软件发展的根本 以火狐(Firefox)浏览器闻名于世的Mozilla基金会,宣布成立一家子公司Mozilla Corporation,以便投入可创造收益的商业活动。
作为一家著名的开源软件组织,Mozilla的行为招致大量质疑。
人们之所以有这样的反应,就是因为认定开源软件出现的初衷就是免费和开放源代码,Mozilla的行为看起来无疑是违背了二大法条之一的免费。
但是,开源软件的免费说至少就目前看来,可能是人们的一种误解。
让我们简单地扫描一下当前开源软件的运营模式:第一种,软件完全免费,后续服务收费。
像当前的Red Hat Linux就是使用这样的模式。
但是,这种模式并不是每一家开源企业都能使用的,也只有像Red Hat这样的行业领先者才有这样的资本。
第二种,软件免费,没有售后服务,在软件市场成熟后,靠出售专利谋生。
这种方式的代表是Foxmail。
第三种,应用服务提供模式。
在这种模式下,软件和服务都是免费,企业按时间交纳使用费。
最主要的运营模式也就是这几种,其他种类的模式其实都是这几种模式的演化和变种。
从中我们可以看出,开源软件本身的确是免费的,但开发者最初的意图其实是为了通过后续服务或出售专利等方式获利。
从这个层面来说,天下的确没有免费的误餐。
当然,不排除一些真正的免费的开源软件,不过这只能是一些小型的软件。
这些软件不需要集中太多人的就能开发出来,后续也不需要太多人的来维护和升级。
而对一些大型软件诸如操作系统等,当前不可能成为免费的开源软件。
因此说,如果开源软件找不到自己的赢利模式的话,就很难生存下去,更别提发展了。
上海中标软件有限公司常务副总经理秦勇就表示,“在中国国内Linux市场上,虽然现在起得很快,但是整个市场容量、整个市场还不够大,还不足以养活号称国内有9家企业的庞大的Linux家族。
”这句话背后的潜台词,很显然企业还是要靠Linux赢利的。
在笔者看来,开源软件的意义就在意源代码的开源,免费只能说是它的一种说法,并不代表实质性意义。
因此说,开源软件企业要想生存和发展下去,肯定得寻找自己的赢利模式。
然而,就目前来说,能通过开源软件赢利的太少了,即使像Red Hat这样的业界巨头,2004年才实现2亿美金的营业额,别的企业业绩如何可想而知。
事实上,当前无论是国际还是国内的开源软件组织和企业都是少之又少,原因何在,就是因为这些组织和企业没有找到可行的赢利模式,从而没有足够的资金支持企业持续发展下去。
高级人才是开源软件发展的瓶颈 就像本文开篇时说的那样,国内外开源软件业都存在缺乏高级人才的问题。
当前,开源软件业的一致观点就是:人才数量不缺,缺的是质量。
实际上这句话更准确地表示应该是:人数不缺,缺的是人才。
据业内人士分析,开源软件目前能够想到的赢利模式都是为企业服务的。
但是,目前的开源企业总体上规模很小,由几个人到几十人公司都有,然而,大型企业对这样的小企业,包括几百人的软件企业,都会持不信任的态度。
Novell中国区市场与渠道总监罗威就表示,在两年前,Novell之所以收购SUSE,一方面当然是业务发展的需要,另一方面其实也有扩大规模的动机。
当前,Novell公司在全球已有数千人。
Novell通过这种扩张,就是想把非常好的技术放到坚实的企业平台上,两者...
开源软件是怎样赚钱的
源软件在发展历程中,已经不仅仅是开放源代码的免费软件。
开源软件与商业并不冲突,它是一种新兴的商业模式。
与传统的商业软件相比,开源软件采用了开放源代码、免费分发等形式,减少了营销与销售成本,更易于广泛传播。
在开源软件领域中,常见的盈利模式一共有7种。
下面让我们来逐一列举和分析。
● 盈利模式之一:多种产品线如 MySQL 产品就同时推出面向个人和企业的两种版本,即开源版本和专业版本,分别采用不同的授权方式。
开源版本完全免费以便更好的推广,而从专业版的许可销售和支持服务获得收入。
● 盈利模式之二:技术服务型JBoss就是这种模式的典型代表。
JBoss 应用服务器完全免费,而通过提供技术文档、培训、二次开发支持等技术服务而获得收入。
● 盈利模式之三:应用服务托管(ASP)例如,PHP Live! 就是一种构架于 PHP、MySQL 之上的开源软件,它可为企业用户提供实时交谈服务。
目前已经有数十家公开提供 PHP Live! 托管服务的应用服务提供商。
● 盈利模式之四:软、硬件一体化比如 IBM HP 等服务器供应商巨头,通过捆绑免费的 Linux 操作系统销售硬件服务器。
SUN 公司近期将其 Solaris 操作系统开放源码,以确保服务器硬件的销售收入,也是这种模式的体现。
● 盈利模式之五:附属品O'Reilly集团是销售开源软件附加产品公司的典型案例,他出版了很多优秀的开放源代码软件的参考资料。
● 盈利模式之六:品牌战略、服务至上康比尔公司的 Compiere ERP & CRM 软件是这种模式的典型案例。
● 盈利模式之七:市场策略比如,微软宣称部分的公开 Office 的源代码,就是执行这种策略。
事实上,一家公司可能混合采用其中的几种盈利模式,比如康比尔公司不仅采用了第六种品牌策略,同时也采用了第二种提供技术服务的方式。
在开源软件大潮的冲击之下,包括微软在内的商业软件公司,也开始认可开源软件"软件成为服务"的本质。
开源软件和不开源软件哪个质量更高
这个就是所谓的王婆卖瓜自卖自夸了,各说各得好。
开源方面认为开源软件的质量一定高于闭源的,尤其是驱动程序,《深入Linux内核架构》这本书里多次坚持此观点,这显然不对,看开源的那个半残NVIDIA驱动……微软方面当然是踩开源,但至少从我的经验看,代码质量上Linux内核是比Windows要高的(参见Windows 2000泄漏源码,至少代码规范上,Linux内核就更好)。
客观点说,像Linux内核这样有大量大公司和大牛参与,软件工程管理也比较上轨道的,代码质量就比较好。
而大量其他的开源项目,找他们的bug易如反掌,到处都是,我正在维护的一个开源密码学库,已经让我有整体重构的冲动了。
哪种开源许可证下的软件可以用于商业
哪种开源许可证下的软件可以用于商业开源的软件大家应该不会陌生,它帮助我们可以迅速的了解一个技术的实现过程。
并且可以加快我们的开发速度。
但是不同的开源软件遵守各自的许可证协议,有些开源软件是不能用作商业用途的。
经过Open Source Initiative 组织通过批准的开源协议目前有60多种,那么哪种许可证下的开源软件可以用于商业,哪种又不能呢?下面就我个人的理解做个介绍。
下面这个博客介绍的非常详细:http://univasity.iteye.com/blog/1292658拜读了上面这个链接的博客后,我总结一下:Apache License 2.0要点:Apache Licence是对商业应用友好的许可。
使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。
BSD开源协议(Berkerley Software Distribution)要点:商业软件可以使用,也可以修改使用BSD协议的代码。
GPL ( GNU General Public License )要点:商业软件不能使用GPL协议的代码。
LGPL ( GNU Library or "Lesser" General Public License )要点:商业软件可以使用,但不能修改LGPL协议的代码。
MIT ( MIT license )要点:商业软件可以使用,也可以修改MIT协议的代码,甚至可以出售MIT协议的代码。
MPL ( Mozilla Public License 1.1 ) 要点:商业软件可以使用,也可以修改MPL协议的代码,但修改后的代码版权归软件的发起者。
CDDL (Common Development and Distribution License ) 要点:商业软件可以使用,也可以修改CDDL协议的代码。
EPL (Eclipse Public License 1.0 )要点:商业软件可以使用,也可以修改EPL协议的代码,但要承担代码产生的侵权责任。
从上面的总结看出来,只有GPL许可证的开源软件是不能作为商业用途的,其他虽然有限制但是也是可以的。
所以如果你要为一个商业软件寻找一个开源的软件工具,那么就不要找GPL许可证下的软件。
如果使用了,在产品商业化的时候就会遇到麻烦。
软件为什么要开源
开源软件有许多好处,总结起来,最重要的有三点。
首先,开源软件对用户的权利保护得更充分一些。
举例来说,如果有一天微软公司不复存在了,那么 Windows、Office 这些本来由微软公司负责维护的软件很可能由于没人维护下去而被淘汰,但开源软件却不存在这样的问题,开源软件不会因某个人不存在而变得停滞不前。
用户曾经花费巨资购买的 386、486 微机,现在却只能作为一堆废品来处理,原因就在于缺乏性能优异的应用软件来持续支持,但功能强大的自由软件却可以在这些 386、486 微机上跑得很好。
其次,开源软件由于发布很广,开源软件的问题更容易暴露出来,这使得当这些问题解决以后开源软件就变得更加完美。
最后,开源软件对用户个性化的需求更容易满足。
由于软件过多地引进了工程化管理,使得软件的标准化程度越来越高。
这固然可以增加软件的开发效率,但却使得人们都需要按照一个模式去操作软件。
正常人使用着很方便的软件,左撇子使起来就很别扭。
随着手机、PDA 等新产品的出现,这种个性化的需求会表现得更加强烈。
开源软件由于源代码是公开的,所以这些个性化需求更容易得到满足。
软件不能单纯用工程表现,在这个问题上,开源软件的开发方式给了人们很深的启示。
共创软件联盟的刘澎则指出,开源文化是人类几千年的智慧结晶,是一种必然的历史发展趋势,这种发展趋势是谁也阻挡不了的。
今天,已不可能有人会否认互联网所蕴含的价值,但人们有没有注意过互联网发展初期是一个什么样子呢?几十年前的互联网只是具备了一些核心的协议,应用价值也并没有显现出来,但这根本不会妨碍互联网发展成今天这个样子。
互联网在发展初期实质上就是一种开源的形式,今天的开源软件与此非常类似。
发展趋势本身就具有一种力量,Windows 之所以应用得这么广,在于它符合现代操作系统的标准。
现代操作系统的标准就是一种趋势,Linux 也符合这些标准,这使得 Linux 也将注定成为了一种优秀的操作系统。
刘澎同时认为:“目前开源软件的发展进入到了一个低谷的时期,这其实是开源软件发展的必经阶段。
因为开源软件的商业推广模式在创立初期就出现了问题,所以才有今天的发展低谷,可见这个低谷并没有超越于发展趋势之外。
我们在二十世纪九十年代中期就采用开源技术解决了路由技术,这个项目在商业上也获得了巨大的成功。
事实上,国内有许多开源项目,如 Hopen 等,都做得非常成功。
因此,面对暂时的困难,就认为中国无开源,认为开源没有希望,是一种敷浅的表现。
中国工程院院士倪光南指出:“从产业层面看,以 Linux 为代表的开源软件增强了我国软件业讨价还价的能力,并且使得软件的市场空间增大了。
我们必须看到,国产 CPU 必须有 Linux 支持,否则就会因使用范围太窄而不能投入实际应用。
” 开源的本质 在许多人眼中,开源就意味着只有付出而没有任何回报,然而,开源的本意却是“ When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves ”(只要程序员对软件的某一部分实现阅读、重新分发和修改代码,即可称作开源)。
既使是要求极为严格的GPL协议,也仅要求使用GPL源码这个部分开源,而 BSD 协议则仅仅要求在 End User License 中,保留原来的协议就可以了。
由此看来,开源软件同样可以做到“别人怎么赚钱,我们也怎么赚钱”,开源与商业利益并是完全对立的。
在国内保障体系还不完善的情况下,国内的软件公司和程序员完全可以利用开源软件解决吃饭和生存的问题。
而开源软件也并不只包含 Linux 这样的系统软件,目前热门的 ERP、CRM 乃至知识管理、商业智能同样可以基于开源软件开发。
对程序员个体而言,加入开源社区也并非一无所获。
国外许多程序玩家通过社区的锻炼获益匪浅,功成名就者也不乏其人。
国内的软件工程技术人员参与过大型开发项目的少而又少,中软 COSIX 项目尽管归于失败,但通过这个项目培养出来的参与过大型项目开发的人员已被几大外资软件公司瓜分殆尽。
而现实的问题却是,一方面程序人员抱怨没有项目可供练手,另一方面却又不愿加入开源社区得到锻炼。
无论国内的程序员有着什么样的想法,开源社区却绝对不失为获得大型开发项目经验和扬名立万的良好场所。
对软件公司来说,开源还是增加软件需求的好方法。
软件发展到今天,由于过多地引入了工程方法,使得软件越来越趋于标准化。
对个人用户而言,同样的软件,用惯右手的人使用起来得心应手,然而左撇子用起来却怎么使怎么别扭。
而对企业用户而言,管理软件的使用必然伴随着管理方式的变化,然而,并不是说管理软件带来的总是适合用户的管理变革,这时用户就会提出系统必须要和管理实现互动的要求,显然,开源软件处理这类问题更为方便。
与国内软件公司远离开源的情况相反, Sun 公司把 Solaries 操作系统的源代码毫无保留地公开给了业界,微软也已宣布将把投入巨资开发的 Windows CE 的 70% 的源代码以 5 美元的象征性价格出让给业界。
微软公司和 Sun 公司当然明白这样做带来的好处,源代码开...
软件开源是什么意思?
开放源代码与自由软件许多人将开放源代码与自由软件(freeSoftware)视为相同,但若以定义条件而言,自由软件仅是开放源代码的一种,也就是自由软件的定义较开放源代码更为严格,并非开放源代码的软件就可称为自由软件,要视该软件的授权条件是否合乎自由软件基金会对自由软件所下的定义。
开源软件定义Version 1.9 开源不仅仅表示开放程序源代码。
从发行角度定义的开源软件必须符合如下条件:1、自由再发行许可证不能限制任何团体销售或赠送软件,软件可以是几个不同来源的程序集成后的软件发行版中的其中一个原件。
许可证不能要求对这样的销售收取许可证费或其他费用。
2、程序源代码程序必须包含源代码。
必须允许发行版在包含编译形式的同时也包含程序源代码。
当产品以某种形式发行时没有包含源代码,必须非常醒目的告知用户,如何通过 Internet免费的下载源代码。
源代码必须是以当程序员修改程序时优先选用的形式提供。
故意地扰乱源代码是不允许的。
以预处理程序或翻译器这样的中间 形式作为源代码也是不允许的。
3、派生程序许可证必须允许更改或派生程序。
必须允许这些程序按与初始软件相同的许可证发行。
4、作者源代码的完整性只有当许可证允许在程序开发阶段,为了调整程序的目的将“修补文件”的发行版与源代码一起发行时,许可证才能限制源代码以更改后的形式发行。
许可证必须明确地允许按更改后的源代码所建立的程序发行。
许可证可以要求派生的程序使用与初始软件不同的名称或版本号。
5、无个人或团体歧视许可证不能都有针对任何个人或团体制在专门奋斗领域内的任何人使用该程序。
例如不能限制程序应用于商业领域,或者应用于遗传研究。
7、许可证发行伴随程序所具有权力必须适用于所有的程序分销商,而不需要这些团体之间再附加许可证签字盖章。
8、许可证不能特制某个产品如果程序是某个特殊的软件发行版中的一部分,伴随该程序所具有的权力不能只以来于这一发行版。
如果程序是从那一发行版中摘录出来的,使用或发行时用的都是那个程序的许可证,分销程序的所有团体都应拥有与初始软件版所允许的所有权力。
9、许可证不能排斥其他软件许可证不能限制随该许可证软件一起发行的其他软件。
例如,许可证不能要求所有与之一起发行的其他软件都是开源软件。
10、许可证实例GNU GPL、BSD、X Consortiun和Artistic许可证都是我们认为符合开源软件定义的许可证。
MPL也是一样。
有一个疑惑,开源软件源码都知道了,那我做二次开发为什么还需要包...
BSDBSD开源协议是一个给于使用者很大自由的协议。
基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。
但”为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:◆如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。
◆如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。
◆不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。
BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。
BSD由于允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发商业软件发布和销售,因此是对 商业集成很友好的协议。
而很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。
AL2.0Apache Licence是著名的非盈利开源组织Apache采用的协议。
该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件)。
需要满足的条件也和BSD类似:◆需要给代码的用户一份Apache Licence◆如果你修改了代码,需要在被修改的文件中说明。
◆在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
◆如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。
你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。
Apache Licence也是对商业应用友好的许可。
使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。
开源软件的“开源”是什么意思?
1997年,开放源码促进会(Open Source Initiative, www.opensource.org)正式成立,它给予了开放源码一个官方的、正式的定义。
它指出,开放源码并不只是意味着对源码的存取访问,而且还要遵守许多原则,总结为以下几条: 1.允许自由再分发——排除了为了短期的销售额而放弃长期收益的诱惑。
2.允许对源码和已编译的程序一同进行分发——要使程序改进变得容易,首先使修改变得容易。
3.允许修改和衍生该作品——只具有阅读源码的权力,不足以支持独立的同行评价和快速的进化选择。
4.作者源码的完整性——用户有权知道正在使用的软件由谁来负责;作者和维护者也有权利支持和维护声誉。
5.无歧视对待对个人和群体——为了从整个过程中得到最大的收益,禁止把某些人排除在外。
6.不能限制任何人在某一特定领域使用程序——让商业人士加入社区,而不是被排除在外。
7.程序上的权利必须适用于任何再分发的程序——禁止以间接的方式封闭软件。
8.许可证不能特殊对待一个产品——预先防止了其他类型的许可证的陷阱。
9.许可证不能限制其他软件——分发者有对自己的软件进行选择的权利。
10.许可证必须保持技术中立——任何条款都不能根据任何个人技术或者接口的样式来推断。
这就是说,只有基于以上原则的源代码可公开访问的软件才能被称作开放源代码软件,即开源软件。
开源软件虽然源自自由软件,但一般而言,自由软件有时更接近于基于哲学思想的理想主义,而开源软件则更注重程序本身的质量提升。