- 操作系统实用教程(Linux版)
- 吴艳 高君
- 989字
- 2021-03-29 08:13:08
2.1 自由软件简介
自由软件是基于信息技术的发展所引发的一场信息革命,主要以开放创新、共同创新为特点的创新2.0模式推动IT行业发展。自由软件的提出与知识社会的大发展相符合,其根本的意义在于——自由软件的提出更有利于人类之间的交流、合作和发展,促进科技进步。
2.1.1 自由软件含义
1984年麻省理工学院(Massachusetts Institute of Technology,MIT)的研究员理查德.马修.斯托曼(Richard Stallman)提出:“计算机产业不应该以技术垄断为基础赚取高额利润,而是应该以服务为中心。在计算机软件源代码开发的基础上,为用户提供综合的服务,与此同时取得相应的报酬。”简单地说,Richard Stallman认为一个好的软件,就应该自由自在地让需要的人取用。在此思想基础上他提出了自由软件(Free Software)的概念,并成立自由软件基金会(Free Software Foundation,FSF)实施GNU(GNU′s Not UNIX)计划。
自由软件基金会还提出了通用公共许可证(General Public License,GPL)原则,它与软件保密协议截然不同。GPL允许用户自由下载、分发、修改和再分发源代码公开的自由软件,并允许用户在分发软件的过程中收取适当的成本费用和服务费用,但绝不允许任何人将该软件占为己有。
目前,全世界范围内已经有许许多多的自由软件开发志愿者加入GNU计划,GNU计划主要包括两大类产品:操作系统和开发工具。
2.1.2 自由软件相关词语
自由软件中包含了以下一些相关的术语。
开放源代码(Open Source)软件:与自由软件是两个不同的概念,只要符合开源软件定义的软件就能称为开放源代码软件。
自由软件:“自由”就是自由软件的精髓,原意就是给予使用者运用软件的自由,它是一个比开源软件更严格的概念,因此所有自由软件都是开放源代码的,但不是所有的开源软件都能称为“自由”。
这里指的自由,并不是价格上的免费(价格无关性),而是软件对所有的用户来说使用是自由的,在软件发行时要求附上源程序代码,并允许用户对其进行更改。
GPL通过如下途径实现这一目标。
1)软件以源代码的形式发布,并允许任何用户将软件以源代码的形式复制、转发给其他用户。
2)若用户开发的软件使用某一软件的一部分,而这一软件又是受GPL保护的,那么该软件就成为GPL软件,必须随应用程序一起发布源代码。
3)GPL并不排斥对自由软件进行商业性质的包装和发行,也不限制在自由软件的基础上打包发行其他非自由软件。
GNU包含以下3个协议条款。
●GPL:GNU通用公共许可证(GNU General PublicLicense)。
●LGPL:GNU较宽松公共许可证(GNU Lesser General Public License),旧称GNU库通用公共许可证(GNU Library General Public License)。
●GFDL:GNU自由文档许可证(GNU Free Documentation License)。