开源是什么意思?

店主向顾客展示收款二维码。18新利最新登入"width=
开源概念允许任何有兴趣的人修改源代码。Cravetiger / Getty Images

您购买或下载的大多数软件都只提供编译随时可以运行的版本。已编译的是指开发人员创建的实际程序代码,称为源代码经过一个叫做编译器的特殊程序,该程序将源代码翻译成计算机可以理解的形式(参见18新利最新登入C语言编程原理有关编译器的详细信息)。修改大多数应用程序的编译版本是极其困难的,几乎不可能确切地看到开发人员是如何创建程序的不同部分的。18新利最新登入大多数商业软件制造商认为这是一个优势,可以防止其他公司复制他们的代码并在竞争产品中使用它。它还使他们能够控制特定产品的质量和功能。

开源软件则是另一个极端。源代码包含在编译后的版本中,实际上鼓励进行修改或自定义。支持开源概念的软件开发人员认为,通过允许任何有兴趣的人修改源代码,从长远来看,应用程序将更加有用,并且没有错误。

广告

要被软件开发行业视为开源软件,必须满足某些标准:

  • 该程序必须是免费分发的(它可以是软件包的一部分,但出售,如红帽所做的Linux在下面的例子中)。
  • 必须包括源代码。
  • 必须允许任何人修改源代码。
  • 修改后的版本可以重新分发。
  • license不能要求排除其他软件,也不能干扰其他软件的运行。

让我们看一个开放源码软件的真实例子。1991年,芬兰赫尔辛基大学的学生莱纳斯·托瓦尔兹(Linus Torvalds)基于Minix开发了一种新的操作系统,Minix是Unix的衍生物,他给它起了个名字Linux.Torvalds在GNU通用公共许可证下发布了0.02版Linux,这为开源软件提供了一个很好的法律定义。世界各地的许多人下载了Linux并开始使用它。这些用户中有许多人本身就是程序员,他们对Torvalds所包含的源代码进行了修改。在接下来的三年里,Torvalds从其他程序员那里收到了这些修改后的版本,并将许多更改合并到基准版本中,并于1994年发布了Linux 1.0版本。

对于希望使用开源软件的最终用户来说,一个常见的问题是缺乏保证和技术支持。因为该软件的许可证鼓励修改和定制,所以几乎不可能支持它。这就是为什么红帽软件成立于1994年的红帽公司创建了“官方红帽Linux”,并能够销售这种通常“免费”的软件。红帽公司为该软件包增加的主要价值是保修和技术支持。对于大多数企业来说,技术支持的保证是决定购买Linux而不是简单地免费下载Linux的关键因素。除了红帽,还有其他几家公司打包了Linux,通常附带额外的软件,用于转售。

除了Linux,Mozilla(Netscape浏览器核心),Apache(Web服务器),PERL(Web脚本语言)和PNG(图形文件格式)都是基于开源的非常流行的软件的例子。

这里有一些有趣的链接:

广告

常见问题解答

开源意味着什么?
开源意味着项目可以自由使用、自由发布和自由修改。任何人都可以对开源项目做出贡献,任何人都可以获得一个开源项目,并按照自己的意愿使用它。18新利最新登入
开源是什么意思?为什么它很重要?
开源意味着一个软件的源代码可以免费提供给任何人使用、修改和发布。这很重要,因为它允许广泛的人进行协作和反馈,并且允许对软件进行改进和定制,以满足不同用户的需求。
举个例子,什么是开源?
开源是一种软件许可,允许免费分发和访问软件的源代码。开源软件通常以协作的公共方式开发。开源软件的一个很好的例子是Linux操作系统。
特色

广告

加载……
Baidu