开放源代码其实就是当程序员把软件写好后,不仅仅把软件公开给别人使用还把自己写程序时的源代码公开给别人学习、甚至是修改达到不断的升级象最著名的开源软件就是Linux和Unix这两个 *** 作系统。
开放源代码指的是一种软件发布模式。一般的软件仅可取得已经过编译的二进制可执行档,通常只有软件的作者或著作权所有者等拥有程序的原始码。有些软件的作者会将原始码公开,此称之为“源代码公开”,但这并不一定符合“开放原代码”的定义及条件,因为作者可能会设定公开原始码的条件限制,例如限制可阅读原始码的对象、限制衍生品等。
开放源代码的定义: 1. 免费重新发布
当软件是几个不同来源的程序集成后的软件发行版本中的其中一个组件时,许可证不能限制任何团体销售或分发该软件,并且不能向这样的销售或分发收取许可费和其他费用。
2. 源代码程序必须包含源代码,并且必须允许以源代码或已编译的形式发布。如程序在发布时未带源代码,则必须以一种非常公开的方式,在不超过合理重造成本的情况下,让人们获得源代码,例如可以在不收取费用的情况下,放在网络上供人们下载。源代码无疑是编程人员最容易修改程序的形式。不允许故意混乱源代码。也不允许使用中间形式,比如预处理器或转换器的输出。
3. 衍生产品许可证必须允许修改原产品和衍生产品,并且必须允许在与原始软件相同的授权情况下发布修改过的产品。
4. 作者的源代码的完整性许可证可以禁止他人以修改过的形式发布源代码,只在该许可证基于修改程序的目的时,才允许随源代码发布 “补丁文件”。该许可证必须明确允许发布根据修改过的源代码构建的软件。许可证可能要求衍生产品必须附加不同于原始软件的名称或版本号。
5. 不得歧视任何人或团体许可证不得歧视任何人或任何团体。
6. 不得歧视程序在任何领域内的使用许可证不得禁止任何人在特定领域内使用某一程序。例如,不得禁止程序在商业上的应用,或者在基因研究上的使用。
7. 许可证的发布附加在程序上的权利必须应用于那些使用重新发布的程序的人,无需通过其他人额外加以授权使用。
8. 许可证不得专属于特定产品附属于程序的权利不得仅限于作为特定软件发行版一部分的程序。如果程序衍生自该发行版并以获得该程序的授权的名义被使用或发布,则使用重新发布的该程序的其他所有人应该享有原始软件发行版本中所授予的那些权利。
9. 许可证不得对其他软件加以限制许可证不得对其他随已许可的软件一起发布的软件附加任何限制。例如,不得规定在相同媒体上发布的其他所有程序接受该许可证的限制。
10. 许可证必须是技术中立的任何许可证规定都不可以基于任何单独某项技术或界面风格。
开放源代码软件的价值:
没有版权问题: 客户无需支付软件License费用,便可授权使用。这同时极大地降低了解决方案的成本。
更加安全和稳定: 由于其开放性,开放软件源代码可以得到全世界众多同行的审查,因此更易具备类似Linux的安全性和稳定性
更强的生命力:开放源代码产品有更多的用户,因此她有着更强的生命力。 开放源代码软件不会因某个具体的公司的倒闭而结束。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)