开放源代码 百科内容来自于: 百度百科

指的是一种软件散布模式。一般的软件仅可取得已经过编译的二进制可执行档,通常只有软件的作者或著作权所有者等拥有程序的原始码。有些软件的作者会将原始码公开,此称之为“源代码公开”,但这并不一定符合“开放原代码”的定义及条件,因为作者可能会设定公开原始码的条件限制,例如限制可阅读原始码的对象、限制衍生品等。

简介

开放源代码软件就是在开放源代码许可证下发布的软件,以保障软件用户自由使用及接触源代码权利。这同时也保障了用户自行修改、复制以及再分发的权利。简而言之,所有公布软件源代码的程序都可以称为开放源代码软件。 开放源代码有时不仅仅指开放源代码软件,它同时也是一种软件开放模式的名称。使用开放源代码开放模式的软件代表就有GNU/Linux操作系统。
严格地说来,开放源代码软件与自由软件是两个不同的概念,只要符合开源软件定义的软件就能被称为开放源代码软件(开源软件)。自由软件是一个比开源软件更严格的概念,因此所有自由软件都是开放源代码的,但不是所有的开源软件都能被称为“自由”。但在现实上,绝大多数开源软件也都符合自由软件的定义。比如,遵守GPL的软件都是开放的并且是自由的。
开放源代码软件运动是一个主要由程序工程师及其它电脑用户参与的声势浩大的运动。它是自由软件运动的一个分支,但两者的差别并不明显。一般而言,自由软件运动是基于政治及哲学思想(有时被称为所谓黑客文化)的理想主义运动,而开放源代码运动则主要注重程序本身的质量提升。

定义

开放原始码的定义由Bruce Perens(Debian创始人之一)定义如下:
自由再散布(Free Distribution):允许获得原始码的人可自由再将此原始码散布。
原始码(Source Code):程序的可执行档在散布时,必需以随附完整原始码或是可让人方便的事后取得原始码。
衍生著作(Derived Works):让人可依此原始码修改后,在依照同一授权条款的情形下再散布。
原创作者程序原始码的完整性(Integrity of The Author’s Source Code):意即修改后的版本,需以不同的版本号码以与原始的程序码做分别,保障原始的程序码完整性。 不得对任何人或团体有差别待遇(No Discrimination Against Persons or Groups):开放原始码软件不得因性别、团体、国家、族群等设定限制,但若是因为法律规定的情形则为例外(如:美国政府限制高加密软件的出口)。
对程序在任何领域内的利用不得有差别待遇(No Discrimination Against Fields of Endeavor):意即不得限制商业使用。 散布授权条款(Distribution of License):若软件再散布,必需以同一条款散布之。 授权条款不得专属于特定产品(License Must Not Be Specific to a Product):若多个程序组合成一套软件,则当某一开放原始码的程序单独散布时,也必需要符合开放原始码的条件。 授权条款不得限制其他软件(License Must Not Restrict Other Software):当某一开放原始码软件与其他非开放原始码软件一起散布时(例如放在同一光碟片),不得限制其他软件的授权条件也要遵照开放原始码的授权。 授权条款必须技术中立(License Must Be Technology-Neutral):意即授权条款不得限制为电子格式才有效,若是纸本的授权条款也应视为有效。

重要人物

Richard Stallman——自由软件运动的精神领袖
林纳斯·托瓦兹——Linux操作系统的创造者

协作计划

GNU—— 公用操作系统开发组织
Linux——第一个采用开放源代码软件开放模式的软件协作计划
Debian——开放源代码开放模式下的Linux套件
Mozilla——开放源代码的浏览器——开放源代码的办公软件
开放源代码促进会(Open Source Initiative)——促进开放源代码运动发展的组织
OSDN——专门发布与开放源代码运动有关新闻的网站

开源企业

IBM、Red Hat、HP、SUSE、Google

开源软件

GNU —— 提供大量系统基础工具,比如GCC、BASH、Emacs
Linux —— 内核
X11 —— 视窗系统
TeX——强大的排版软件
Apache——非常流行的HTTP服务器
Zope——应用服务器
Plone——内容管理系统
Eclipse——软件开发平台

发展缓慢

1、中国教育依旧落后
虽然中国的IT职业教育学校和全日制的本专科院校每年可以向中国IT界输入大量的新人,但是整个IT教育依旧处在落后地位。大多数的学校的教学内容非常偏重于C/S程序(比如非常热门的java,.net)这些内容相比真正的开发真的太过简单。如何让学生可以学到更多复杂的程序开发技术是中国教育界多年来始终无法解决的一大问题,如果中国的教育还是跟不上全球的技术发展和全球的消费者行为的话,社区还依然没有机会实现繁荣。
2、个性的缺失是中国oss社区发展最大的悲哀
中国是一个有着五千年文化的传统型国家,个性创新在中国这个特定的环境中并不能得到更好的发展。越来越多的人希望自己可以成为和别人一样的人,这将让这些本有机会个性创新的人才们在他们人生最重要的时刻错过了最重要的事情,所以个性的缺失是中国oss社区发展最大的悲哀。
3、英语水平
目前OSS的概念在国外是最火热的,所以如果没有良好的英语基础是难以推动OSS发展,跟上世界技术潮流的。虽然小学从三年级开始就学习英语,但是相比里最基本的OSS英语基础还有了不小的距离。
4、中国人不够主动
很多OSS社区的领导人,oss活动的发起人都是外国人,中国人一般都不太乐意去发起甚至参加这类可以学到更多技术的活动。哪怕要他们作为一名本地的东道主去外国人发起的OSS活动中分享一下自己的经验,他们也会觉得中国人的技术不应该外流,但其实正因为中国人不够主动,中国人也很难通过OSS社区了解到最新的技术。
$firstVoiceSent
- 来自原声例句
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定