知名百科  > 所属分类  >  百科词条   

开放源代码

开放源代码(Open source code代码代码)也称为源代码公开,指的是一种软件分发模式。一般软件只能获得编译好的二进制可执行文件,通常只有软件的作者或著作权人拥有程序的源代码。一些软件作者会将源代码公开,这被称为“源代码公开”,但这不一定匹配“开放源代码”的定义和条件,因为作者可能会对源代码的公开设置限制,例如限制可以读取源代码的对象、限制衍生品等。

开放源代码开放源代码
目录

定义简介 编辑本段

开源软件起源于自由软件开源运动,简称开源软件。指的是那些源代码开放,可以免费使用的、复制、一组修改和重新分发的软件。开源软件许可是对开源软件进行标准化的授权合同,也可以称为授权协议。有很多种,互相理解权利转移的程度是选择和运用它们的关键因素。

开源软件是在开源许可下发布的软件,目的是保护软件用户自由使用和接触源代码的权利。同时也保证了用户可以自己修改、复制和再分发的权利。简而言之,所有发布软件源代码的程序都可以称为开源软件。开源有时不仅指开源软件,也指一种软件开放模式的名称。使用开源和开放模式的软件代表是GNU/Linux操作系统

严格来说,开源软件和自由软件是两个不同的概念,符合开源软件定义的软件才能称为开源软件(开源软件)自由软件是一个比开源软件更严格的概念,所以所有的自由软件都是开源的,但并不是所有的开源软件都可以被调用“自由”但在现实中,大多数开源软件也符合自由软件的定义。例如,符合GPL的软件是开放和免费的。

定义

Open Source[开放源码]

Open Source来源来源[开放源码]

开源代码由Bruce Perens定义(Debian 的创始人)定义如下:

1)自由的再散布

符合开放源代码定义的授权不得限制任何一方出售或转让已成为其一部分的开放源代码,即使聚合软件包含来自许多不同来源的程序。这种授权不应要求版税或其他费用。

2)程序源代码

程序分发必须包括源代码及其编译形式。如果程序在发布时不附带源代码,则必须在不超过合理的复制成本的情况下,以开放的方式使人们可以获得源代码,例如,可以在互联网上免费下载。这里所谓的“源代码”一定是程序员修改程序最容易的形式,故意混淆源代码或者以所谓的中间形式,比如预处理器、或者编译器处理的结果不允许。

3)衍生作品

符合开放源代码定义的授权必须允许修改程序和衍生作品”的产生.这种授权必须允许在相同的条件下发布衍生作品。

4)原作者的完整性及的程序源代码

符合开放源代码定义的授权可以禁止其他人以修改的形式分发源代码,除非该授权允许以修改程序为目的使用源代码“附加档案”为了区分这部分非原作者 s创作。该授权必须明确允许被许可人有权分发修改后的软件。此外,许可内容要求衍生作品必须附有不同于原软件的名称或版本号。

5)不要歧视任何个人或团体

符合开源代码定义的授权不得歧视任何人或任何团体。因为包括美国在内的一些国家对某类软件的出口进行管制,这类软件通常会有警示标语来揭示这种管制规定;但是这个警告标语并没有包含在符合开源定义的许可证本身中。

6)不要歧视任何领域中程序的使用

符合开源代码定义的授权不得禁止任何人在特定领域使用本程序。例如,它不得禁止程序的商业用途或在遗传研究中的使用。

7)授权的散布

开源许可证中的权利适用于所有再分发的程序,不需要通过其他许可证来行使。换句话说,符合开源代码定义的许可必须具有适用于所有衍生作品的连续性,以防止被许可方通过附加其他许可间接影响软件的开放性。

8)授权不得专属于特定产品

程序附带的权利不应局限于特定软件分发的需要。所有程序的被许可人在发布时享有与原始程序相同的权利。

9)授权不应限制其他软件

符合开放源代码定义的授权不得对随本软件发布的其他软件施加任何限制。例如,不允许规定在同一媒体L中分发的其他软件应受本许可证和开放源代码的约束。

10)授权必须是技术中立的

任何规定不得基于任何独特的技术或类型12。比如不应该局限于点击包的使用(Clik-Wrap)下载,否则会阻碍文件传输协议、CD-通过ROM或网站映射下载和使用源代码的可能性。

产生原因 编辑本段

知识产权模式极大地促进了软件产业的快速发展,软件产品的独占权被赋予了许多软件公司(尤其是规模 的软件公司)带来了巨大的商业利润,微软就是最好的例子。然而,随着软件产业的发展,传统的知识产权模式越来越显示出其不足。主要表现在以下两个方面:

1、软件成果专有权带来的弊端

基于知识产权保护的专有权阻止了他的公司进入这些市场“商业壁垒”,没有相关产品满足,没有市场竞争,从而形成垄断。

2、软件源代码保密的危害

由于保护知识产权,各公司对软件源代码保密,只有公司内部流传,使得软件技术专家学者无法学习研究,造成软件重复开发使用,浪费社会劳动力。而且软件的安全性和改进也是有限的。

由于软件行业的垄断,学术界强烈不满,于是出现了开源运动和自由运动。开源软件起源于自由软件运动。

优势缺点 编辑本段

优势

它的主要优势在于长期可靠性、平行除错、平行研发、完美的应用程序编程接口、版本发布速度等等。就长期可靠性而言,只要企业短期内不会被排除在竞争市场之外,就可以称之为长期可靠性。因为在开源软件开发模式下,源代码在很多地方都可以轻松获得,可以自己使用、修改源代码,这样即使软件不再开发,你也可以自己进一步使用源代码。另外,通过互联网技术的发展,开源软件的开放模式可以采用并行调试、平行研发的实践d使得网络上的潜在无限开发者免费使用,可以同时进行,不受时间限制、由于地域限制,最终只能选择合适的方案,所以只要有足够多的参与者,源代码发布速度通常会更快;就完善的应用程序接口而言,开源软件开发模式将基于源代码的开放性,让用户通过源代码来验证,而不像传统的闭源计算机软件,只能将其信心建立在软件公司的形象上。开源软件开发模式最大的优势就是可以得到大量开源社区的支持,就像拥有大量的免费软件开发者和测试者一样。这样,世界各地的优秀人才都被取为己用,而他们却没有 不用付高薪,这是传统的闭源软件开发模式不可能做到的。

劣势

当然,开源软件开发模式也有其缺点,主要表现在管理成本上、设计程序问题和组织可靠性等。首先,在管理成本方面,主要是因为一旦计划发展到一定程度,其创新、改版的质量必然会变大,参与人数多,肯定会造成一定的管理成本此外,整合、决策结构会增加管理成本;其次,就设计程序而言,新版本的不断发布会造成消费者需要不断重装的麻烦,而且因为他们通常不会 不要在意设计中的友好界面,这会增加用户访问它的难度;最后,在组织可靠性方面,用户会关心自己使用的计算机软件如何得到开发组织的支持,以及软件未来的发展方向。但是,由于开源软件是由不同社区的成员贡献的,不负责质量保证,与传统软件企业相比,确实有可能得不到完善的支持,无法保证软件未来的发展方向。另外,虽然新的开源市场开发模式已经在全球运行了一段时间,并且有很多典型的成功案例如Linux,可以说对计算机软件行业产生了一定的影响。但是,与传统的发展模式相比,它也有其不足之处。

放弃权利 编辑本段

开源软件放弃下列版权所有者享有的权利:

1、作品复制权:

接受开源软件公共许可协议的用户可以自由复制初始软件作品,也放弃了在初始软件作品被修改和改进后限制复制衍生软件的权利。

2、作品修改权:

接受开源软件公共许可协议的用户,在按照协议复制目标代码和源代码后,可以对原软件作品的源代码进行修改,修改后的衍生软件作品必须按照先前存在的公共许可协议明确放弃对后续用户的修改权,赋予后续用户继续修改的权利。

3、作品传播权:

接受开源软件公共许可协议的用户,在自由获得按照协议发布的软件作品并进行相关修改和改进后,有义务按照协议继续无条件向后续用户发布初始软件作品和修改后的软件作品。

附件列表


0

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。

如果您认为本词条还有待完善,请 编辑

上一篇 视频剪辑软件    下一篇 应用程序接口

同义词

暂无同义词