开放源码软件运动是计算机科学领域的一种文化现象,源自
黑客对智慧成果共享、自由的追求。
开放源码运动
开放源码运动的史前史包括了整个
Unix,
自由软件和
黑客文化的历史。“
开放源码”一词来源于1997年春天在
加州的Palo Alto召开的一个所谓“纯粹
程序员”参与的战略研讨会。参加会议的有Todd Anderson, 来自Foresight研究所Chris Peterson, 来自Linux国际协会的John Hall 和Larry Augustin,有硅谷Linux用户协会的Sam Ockman,以及Eric Raymond。 它们关系的是寻找一种方式,来像以前躲避自由
软件的人们来推广这种思想,自由软件和
自由软件基金会的反商业信条让很多人对自由软件敬而远之。在Eric Raymond的坚持下,他们一致通过了用新的术语:OpenSource(
开源软件)来描述他们所推进的软件。
1998年2月23日网景宣布它将发布Navigator
浏览器的
源代码成为
开源软件发展历史的转折点,经过一番激烈争辩,“
开放源码”取代“
自由软件”成为
黑客们对开放原始码软件的代名词。
开源软件与自由软件
Linus Torvalds创建Linux以来,开源思想在
软件由于开源思想源于计算机
软件界,所以发展至今,计算机类开源产品的种类、数量都是很多的,使用也比较广泛。如在
操作系统领域,
Linux在服务器市场就占据了相当大的份额,并持续扩张,
IBM公司销售的薄片式服务器中大约有75%就运行着
Linux操作系统;Web方面,全球有百分之五十以上的Web服务器在使用开源的Apache系统;数据库,有针对互联网应用的轻量级数据库MySQL,也有针对大型应用的PostgreSQL。
开源被很多
黑客认为是计算机科学的一种文化复兴,是计算机科学真正成为科学并能够与其他科学一起同步发展的手段。开源发展到今天,不仅仅有数以万计的
黑客在积极地参与,像IBM、HP、CA、SUN等一些软硬件厂商也在加大在开源方面的投入并积极向开源社区贡献优秀
开源软件,因为开源催化了软件业快速向服务也蜕变的速度并为IBM这样的硬件和集成服务提供商提供了新的商机。
开源软件与许可证授权
获得开放
软件源码是免费的,但对所获取源码的使用却需要遵循该
开源软件所作的许可声明。
开源软件常用的许可证方式包括BSD、Apache Licence、GPL等,其中GNU的GPL被最多的开源软件组织所采用。
开源软件许可模式主要分为两类:一类是
copyleft,一类是non-copyleft。
copyleft许可,
比如GNU GPL类型,坚持认为在
开源软件基础上作修改后的软件,仍旧是
自由软件。
著名开源许可类型
(1)BSD许可--它要求版权和著者身份申明;
(3)LGPL--库/次级GPL,它不同于GPL许可证,在这个许可证下,库(函
(4)Artistic许可--使作者保持对进一步开发的控制。
(5)Netscape公共许可(NPL)--基于GPL精神的新的许可证,但是保持
了对源码更多的控制和所有权;
(6)公共域(Public Domain)--通常用于决定性的算法以鼓励广泛使用,通常由
美国政府使用。
BSD
伯克利软件发行版的统称。从
软件发行版到
操作系统的演变是有历史过程的,这一点对FreeBSD很重要。
BSD于1983年8月正式发布,在18个月内就签发了1000多份站点许可证,是非常具有知名度的版本。到了1986年6月,4.3BSD发布,而到了1988年,CSRG发布了4.3BSD-Tahoe,这是第一个把BSD内核分解为依赖于机器和独立于机器的两部分的版本,这是非常有价值的,它使BSD得以移植到众多不同的体系结构中。
由于BSD使用了AT&T Unix的部分
源代码源代码或者二进制的形式发布修改过的或为修改过的代码,并且可以不向Berkely申报版税,唯一要求是在源代码文件
中原封不动的保留Berkely的版权声明,并且在含有以上代码的其他产品文档中声明其产品包括来自于
加州大学和其他贡献者的代码。这就是著名的
BSD许可证的起源。
GPL
GPL-是
自由软件的应用最广泛的
软件许可证,人们可以修改程式的一个或几个副本或程式的任何部分,以此形成基於这些程式的衍生作品。必须在修改过的档案中附有明显的说明:您修改了此一档案及任何修改的日期。 您必须让您发布或出版的作品,包括本程式的全部或一部分,或内含本程式的全部或部分所衍生的作品,允许第三方在此许可证条款下使用,并且不得因为此项授权行为而收费。
最普遍的是
开放源代码后,满足GPL许可,然后通过发行、咨询、增加用户定制功能来收费。另一种是将
开放源代码和有版权的
软件捆绑发行,这样,赚取版权费用。 一种是通过开放全部或部分
源代码,收集补丁程序,并满足用户知情权的要求。作为
商业软件的补充。通过发行多许可证的方式,从其他许可证赚钱。通过
开放源代码和免费使用赚取垄断标准的地位。
LGPL
LGPL是GPL的派生,它是微软件库尔设计的。与GPL不同,LGPL化的程序可以合并到专有版权程序中。与LINUX以其提供的C语言库就是LGPL许可的实例。
NPL
NPL是1998年
网景公司把Netscape开源之后,由Netscape公司以公众可以对他进行测试版本测试的形势提出的,它试图在商业企业推广
自由软件开发和保护自由软件开发之间达成一种妥协,受NPL约束的代码在授权给第三方时的条款与NPL的不同使NPL无法让开源社区接受。
开源教育
自由的交换想法? 协作创造一套健壮、对大家有益的系统?不仅仅Linux是开源哲学的受益产物,在学校教学领域也在探索开源模式的应用,以期能够为教学带来一个更高效、更先进、更丰富的教学体系——这就是开源教育。
开源教育模式下,教师们以互联网为媒介共享课件、协作开发课程、交流教学心得。
人类对世界的认识主要通过两种途径:学习他人经历或亲身体验。
教育的本质之一就是通过让人们通过学习多少辈先人积累下来的经验,更快更好的建立对世界的正确认识和树立良好的世界观。从这点看,科学的发展、教育的发展和开源的发展所采用的方法论是一致的,而开源正是这种方法论的代名词。