1.2.2 OSI开放源代码
对于软件开发者,Linux提供了按照自己的意愿改变操作系统的平台,并且在广泛的范围内开发所需的应用程序。Open Source Initiative(www.opensource.org)是开放源代码的监督者之一。在OSI网站上是这样描述开放源代码软件的:
开放源代码的基本思想很简单:在程序可以读、重新发布和修改软件源代码的同时,这个软件就得到了发展。人们改进它、适应它、修复bug。对于已经适应了传统软件开发速度慢的人而言,如此快速的发展让人感到不可思议。
在开放源代码社区里可以了解到,这种快速的发展过程比传统的封闭模式能制造出更好的软件。在传统的环境里,只有少数程序员能看到源代码,而其他人则盲目地使用不透明的二进制代码块。
开放源代码软件的主要目标是使所有人都能使用源代码,OSI在其开放源代码的定义中还定义了其他目标。对于可接受的开放源代码许可,下列大部分规则能够保护开放源代码的自由性和完整性:
●免费发行版:任何转售人不得向开放源代码许可索要费用。
●源代码:源代码必须包括在软件中,并且不能限制重新发行。
●衍生的工作:在同一条款下许可必须允许修改和重新发行代码。
●作者源代码的完整性:许可可能的要求,如果有人改变了源代码,可以移除原始项目的名字和版本。
●对个人或组织没有歧视:许可必须允许所有人都能平等地使用源代码。
●对使用领域没有歧视:许可不能因为某个项目是商业的或者是软件提供者不喜欢的领域相关的,就限制源代码的使用。
●许可发行版本:对于使用和重新发行软件,不需要额外的许可。
●许可不能特定于某个产品:许可不能限制源代码仅用于一个特定的软件发行版本。
●许可不能限制其他软件:许可不能限制开放源代码软件和非开放源代码软件处于同一介质上。
●许可必须技术中立:许可不能限制重新发行源代码的方法。
软件开发项目使用的开放源代码许可必须符合OSI可接受的开放源代码软件标准。OSI承认40多种不同的许可,这些使用许可的软件成为“OSI认证开放源代码软件(OSI Certified Open Source Software)”。除了GPL之外,其他流行的OSI认可的许可包括:
LGPL:GNU的Lesser General Pubiic(LGPL)允许重新发行某些软件,但是不能改变它的内容,这个许可通常用于发行一些应用程序所需的库。
BSD:Berkrley Software Distribution许可允许重新发行源代码,但是源代码必须保留BSD版权通知,并且在没有书面许可的情况下,不能使用贡献者的名字来支持或升级衍生的软件。
MIT:MIT许可和BSD类似,但是它不包括支持和升级要求。
Mozilla:mozilla许可包括使用和重新发行于Mozilla Web浏览器以及其他软件相关的源代码,这个许可比刚才提到的那些许可更长,因为它包括了更多贡献者和重用源代码的人应该如何使用的定义。这些包括提交修改时需要提交修改的文件,以及那些因为添加了自己代码而需要重新发布的软件的人们需要注意的专利问题和与代码有关的其他限制。
开放源代码的最终结果是促使软件更灵活地发展,并且在如何使用软件方面有更少的限制。很多人相信,更多的人检查项目的源代码一定会产生高质量的软件。正如开放源代码提倡者Eric S.Raymond常常引用的这句话:“无数眼睛让bug无处可藏。”
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。