什么是开源软件,OSS 是什么意思?

如果您是 Internet 的狂热用户,并且在网络上搜索过免费软件,那么您很可能会遇到“开源”这个词。今天,互联网上有大量的开源软件可用。如此之多,事实上,我们常常认为这是理所当然的。

但并非总是如此。

虽然该术语对某些人来说可能不言自明,但了解该术语、它的历史以及开源软件 (OSS) 的真正含义仍然很重要。本文帮助您更好地定义OSS。

什么是开源软件 (OSS)?

传统上,用于商业目的的大多数软件都是闭源的。这实质上意味着制作它所使用的代码,即源代码,完全掌握在制作软件的公司手中。像我们这样的普通用户无法访问代码,我们也无法对其进行任何更改。另一方面,开源软件与此完全相反。

从本质上讲,要将软件归类为开源软件,其源代码必须可供公众免费使用。源代码通常以免费下载的形式通过软件的官方网站或通过 GitHub 等平台提供。

相关:什么是 GitHub?一个介绍

除此之外,将软件标记为开源还有许多其他先决条件。

什么使软件开源?

开源计划 (OSI) 概述了软件成为真正开源软件需要满足的各种条件。下面列出了一些必须满足的条件。

  1. 可免费获得的源代码:如前所述,相关软件的源代码应该是公开可用的。
  2. 重新分发:最重要的条件之一是软件应该可以自由重新分发。这意味着您可以与朋友共享任何开源软件的副本,并且这样做不会违反任何法律条款和条件。
  3. 修改:除了重新分发软件之外,您还可以根据自己的需要自由修改源代码,并分发您自己的软件版本。如果这是他们想要的,用户还可以使用源代码创建完全不同的软件。
  4. 无歧视:在开源软件方面,OSI 非常重视无歧视政策。本质上,不应歧视任何特定的人或任何群体。在人们选择如何使用该程序时也不应有任何歧视——您可以在任何您想要的领域使用它。
  5. 许可证:根据 OSI,开源软件不应成为特定软件分发的一部分,以便用户享有权利。所有用户,无论他们如何获得软件,都享有相同的权利。此外,许可证不应对通过同一媒体分发的其他软件强加任何条件。

相关:如何创建自己的软件许可协议

开源软件和闭源软件的区别

上述部分详细介绍了软件开源的原因。但是,还有许多其他因素将开源软件和专有软件分开:

类别 开源软件 专有软件
源代码 每个人都可以免费下载和修改他们认为合适的内容。 除了软件的创建者之外,任何人都无法获得源代码。
测试 该软件以开放的方式开发,最终用户通常会帮助对其进行微调。 专有软件经过公司内部测试的各个阶段。公众根本不参与。
成本 开源软件可供组织和个人免费使用。 公司通常会为专有软件收费。这可以是订阅或一次性付款的形式。
安装 OSS 可以安装在任意多台计算机上。 专有软件公司通常提供只能激活一次的单一许可证密钥。
补丁 由于社区和开发人员一起工作,实际上可以更快地发布错误修复。用户找到解决各种错误的创造性方法。 在这种情况下,一个组织或一组开发人员负责软件的维护。用户只能报告错误,但不能做任何事情来解决它们。

另一个普遍谈论的开源软件和专有软件之间的区别因素是安全性。

相关:开源软件到底有多安全?

“开源”一词从何而来?

有很多人因将开源软件的概念推向大众而受到赞誉。值得注意的是,强烈倡导开源开发的麻省理工学院学生理查德·斯托曼 (Richard Stallman) 于 1983 年推出了 GNU。

简而言之,GNU 是一个庞大的免费软件集合,任何人都可以修改。通过使用 GNU,世界上最流行的操作系统之一 Linux 诞生了。

斯托曼还是自由软件运动 (FSF) 的创始人。自然地,FSF 成为促进开发人员之间开放协作并鼓励他们在 GNU 通用公共许可证下创建自由软件的社会运动。

相关:为什么几乎没有人称 Linux 为“GNU/Linux”

然而,开源运动中最重要的事件是 Netscape 决定在 1990 年代免费提供 Netscape Communicator(一组 Internet 应用程序)。这是一件大事,因为 Netscape Navigator 是当时使用最广泛的网络浏览器。此外,源代码是导致创建 Mozilla Firefox 的原因。

Netscape 的决定是开源软件滚雪球效应的开始,不久之后,即 1998 年 2 月 3 日,术语“开源”被创造出来。这发生在加利福尼亚州帕洛阿尔托的一次会议上。不久之后,名为 Open Source Initiative (OSI) 的组织诞生了,其使命是教育大众了解开源软件及其优势。

开源:软件世界的重要组成部分

所以,现在您知道开源软件的含义了。

很明显,开源运动和 OSS 总体上塑造了当前的技术格局。如今,我们大多数人都在使用一种形式的开源软件,甚至没有意识到这一点。无论是 Android、Linux 还是 VLC 媒体播放器,如果没有开源软件,生活就会不一样。