2011年6月19日星期日
开源软件与自由软件的区别 zz
原文点击
自由软件是指使用者可以自由地运行、拷贝、分发、学习、改变和改善的软件。自由软件具有两大特征:一是可以免费使用,二是公布源代码,用户可以自己修改、发行。自由软件用户拥有三种层次的自由:
自由软件是指使用者可以自由地运行、拷贝、分发、学习、改变和改善的软件。自由软件具有两大特征:一是可以免费使用,二是公布源代码,用户可以自己修改、发行。自由软件用户拥有三种层次的自由:
·研究程序运行机制,并根据自身的需要修改它的自由;
·重新分发拷贝,以使其他人能够共享软件的自由;
·改进程序,为使他人受益而散发它的自由。
开源软件是基于社区开发的、非私有的代码,可令成本更低、开发效率更高、商业应用更加灵活的软件,并必须同时具备如下特征:
·自由发布,源代码开放;
·赋予使用者修改演绎作品的权利;
·可以要求修改后的版本以原始源代码和一组补丁文件的方式发布;
·不得歧视任何个人和团体;
·不得歧视任何应用领域;
·所有的权利必须跟随再发布的软件版本一同授予使用者;
·许可证适用于全部程序以及其中的全部组件;
·许可证不应限制其他软件,允许开源程序和封闭源代码一同发布。
可以看出,开源软件就是在开源许可证下发布的软件,保障了软件开发者自由使用软件及使用源代码的权利,同时也保障了其他用户自行修改、复制以及再分发的权利。
开源软件首先起源于自由软件,它和自由软件一样,具备可以免费使用、公布源代码的主要特征。但是,它们又是有区别的,主要体现在许可证对权利义务的规定的严与紧的程度上。有学者认为,自由软件指的是遵守通用公共许可证(GPL)的软件,自由软件包含在开源软件的概念中。而开源软件的理念不像自由软件那样极端,与GPL相比,开源软件的定义允许更大授权自由。特别是当软件中混合了专有软件和开源软件时,开源软件的定义允许在它们的基础上生成更大的混合。这样,开源软件许可证允许使用和再分开开源软件,而不必考虑补偿或者信用问题。
目前,越来越多的业界人士用"开源软件"的提法取代"自由软件",这已是不争的事实。
标签: Free, opensource
订阅 博文 [Atom]