当前位置: 首页>>技术问答>>正文


自由软件和开源软件之间有区别吗?

, , ,

问题描述

我对这两个术语有点困惑。他们之间有区别吗?

最佳解决方法

术语自由软件和开源软件确实意味着不同的东西,尽管它们所指的软件类别几乎完全相同。

什么是免费软件?

Free softwarefreedom(非price)定义,与freeware不同。这个想法是,自由软件尊重的用户有一定的自由(但是哪个non-free软件,也称为proprietary software,不尊重)。这包括自由使用和研究软件,以及分发和改进软件。

Free Software Foundation是一个自由软件,基金和支持GNU project(它开发了进入GNU/Linux distributions的软件的很大一部分,如Ubuntu)的倡导和活动组织,并且是许多最流行的免费软件licenses的组织作者,包括GNU General Public License。 FSF defines free software作为尊重four freedoms的软件,我在这里引用[linkifications mine]:

(0)出于任何目的(自由0)自由运行程序。

(1)自由学习程序如何工作,并根据自己的意愿对其进行更改(自由1)。访问source code是此的前提​​条件。

(2)redistribute复制的自由,这样你就可以帮助你的邻居(自由2)。

(3)将修改版本的副本分发给他人的自由(自由3)。通过这样做,您可以让整个社区有机会从您的变化中受益。访问source code是此的前提​​条件。

什么什么,不构成自由软件是Debian Free Software Guidelines另一个有用和重要来源(来自Debian工程,GNU/Linux distributionUbuntuderived,也看到this article)。

人们不需要订阅任何特定的意识形态来使用和倡导自由软件。但是,自由软件的意识形态基础是这些自由本质上是好的(或至少对于软件质量和盈利能力技术问题之外的重要政治原因有利),人们有义务尊重这些自由,而软件应该在很大程度上取决于它是否尊重这些自由。并非所有自由软件的用户都坚持这些自由,有些人相信它们的重要性,但只是在有限的范围内,但许多用户都专注于它们,并且包含free software movement

什么是开源?

一些自由软件的支持者认为它有其他原因 – 特别是,由于自由促进协作的方式,自由软件优于专有软件,并且往往在技术上更优越。有些人认为自由本质上是重要的,但不如开发技术上优秀的软件那么重要,或者自由与开发技术上优秀的软件一样重要或更重要,但是提倡以其他理由采用自由软件以便有效。

因此,open source运动诞生了。进入this movement的一个想法是,针对企业的倡导应该强调开放(免费)开发模型的技术优点和盈利能力,而不是谈论道德或政治问题。 Open Source Initiative成立为开源运动的倡导组织,并确定并正式批准licenses作为开源。 OSI的Open Source Definition是Debian自由软件指南中的based directly,这应该不足为奇,因为被认为是免费的软件的实际类别几乎与被认为是开源软件的实际软件类别完全相同。

old Open Source Initiative FAQ表达了自由软件和开源思想之间的实质相似性和不同观点:

The Open Source Initiative is a marketing program for free software. It’s a pitch for “free software” on solid pragmatic grounds rather than ideological tub-thumping. The winning substance has not changed, the losing attitude and symbolism have.

自由软件和开源的意识形态在实践中如何比较/对比?

虽然自由软件和开源软件背后的意识形态是不同的 – 或至少有不同的说法 – 具体确定这些术语在社区实际使用时的差异有点复杂。由于它们指的是几乎完全相同的软件类别,人们倾向于选择他们认为最好的术语,无论是出于清晰,意识形态,社会认可,习惯还是其他原因。此外,虽然自由软件和开源思想是截然不同的,但也有一些观点似乎弥合了两者,或者至少在一端和另一端开始时模糊。例如,在Eric S. RaymondThe Cathedral and the Bazaar(ISBN 0-596-00108-8)的平装纲要中,Bob Young写道:

Freedom is not an abstract concept in business.

The success of any industry is almost directly related to the degree of freedom the suppliers and the customers of that industry enjoy. Just compare the innovation in the U.S. telephone business since AT&T lost its monopoly control over American consumers with the previously slow pace of innovation when those customers had no freedom to choose.

这可以说不直接提到道德和政治问题。但考虑一下秘鲁国会议员Edgar Villanueva在解释他推动国家使用免费而非专有软件(Graham Seaman的English translationhosted hereoriginal here)时引用的一些类似的考虑因素:

In respect of the jobs generated by proprietary software in countries like ours, these mainly concern technical tasks of little aggregate value; at the local level, the technicians who provide support for proprietary software produced by transnational companies do not have the possibility of fixing bugs, not necessarily for lack of technical capability or of talent, but because they do not have access to the source code to fix it. With free software one creates more technically qualified employment and a framework of free competence where success is only tied to the ability to offer good technical support and quality of service, one stimulates the market, and one increases the shared fund of knowledge, opening up alternatives to generate services of greater total value and a higher quality level, to the benefit of all involved: producers, service organizations, and consumers.

由于采用自由软件的实际后果包括政治和道德后果(在这种情况下,维拉纽瓦认为,秘鲁人民的智力和经济赋权),自由软件和开源思维中存在一些重叠(以及几乎完全重叠)在软件推荐中)。

开源运动最初的明确目标之一是de-emphasizing explicitly pro-liberty advocacy,正如this article早期所阐述的那样:

The implication of this label is that we intend to convince the corporate world to adopt our way for economic, self-interested, non-ideological reasons.

但是采用替代术语的另一个原始动机理由是术语开源比术语自由软件更少混淆,因为英文单词”free”也可以表示”gratis,”,即“具有零价格”。请参阅this foundational essay。这吸引了一些人因为出于道德或政治原因而更多地被自由软件所吸引,而不是认为这是一个更好的发展模式或商业模式,但他们同意”free software”一词缺乏并且应该被替换。虽然这个术语已被证明令人困惑,但术语”open source”也被证明是混乱的,而且Richard Stallman(自由软件基金会的创始人)有argued,术语”open source”本质上更混乱,描述性较差。

我应该使用什么术语?

正如我(开始)写的那样,这个问题已经发布了五个答案。其中两个(thisthis)在开源特性方面基本正确,而one of them在其自由软件的表征和another one几乎正确的基​​本正确。 (请注意,这些答案可能已被编辑,因此不应将其视为当前状态的判断。)虽然我承认这里的抽样几乎没有定论,但我建议我们每个人都应该使用任何一个术语。 /他更喜欢清晰以外的原因,因为这两个术语都被大量的混淆所包围。

对于需要同时引用自由软件和开源软件(已经重叠)概念的情况,存在F /OSS(免费/开源软件),FOSS(免费[和]开源软件)的同义词和FLOSS(免费/自由/开源软件)。有关这些条款,请参阅this article,以及有关自由软件备选术语的更一般主题的this article

有没有开源的免费软件吗?

可能不会。通过Free Software DefinitionOpen Source Definition,自由0可能需要OSD标准5,6,7,8,9和10;自由1要求OSD标准2(可能是7);自由2可能需要OSD标准1,7,8和9;和自由3可能需要OSD标准1,2,3,4,7,8和10。

是否有免费的开源软件?

遵循定义,是的,因为除了提供源代码的要求之外,Open Source Definition仅关注许可可能需要的内容。相比之下,根据Free Software Definition,要使软件免费,实际上必须能够实现四种自由。

实际上,绝大多数开源软件也是免费软件。然而,tivoization的现象至少在实践中呈现了一些open-source软件non-free。当软件被设计为在特定设备上运行,并且该设备旨在防止修改版本实际工作时,用户无法行使自由1。

最近一期运行开源软件的设备实际上并不是免费的,这再次引发了开源和自由软件概念的支持者之间的分歧。开源运动吹捧FOSS的技术优势。但是,当软件的功能实际上不在其用户的控制之下时呢? Richard Stallman writes [省略号]:

Under pressure from the movie and record companies, software for individuals to use is increasingly designed specifically to restrict them. This malicious feature….is the antithesis in spirit of the freedom that free software aims to provide. And not just in spirit: since the goal of DRM is to trample your freedom, DRM developers try to make it hard, impossible, or even illegal for you to change the software that implements the DRM.

Yet some open source supporters have proposed “open source DRM” software. Their idea is that, by publishing the source code of programs designed to restrict your access to encrypted media and by allowing others to change it, they will produce more powerful and reliable software for restricting users like you. The software would then be delivered to you in devices that do not allow you to change it.

This software might be open source and use the open source development model, but it won’t be free software since it won’t respect the freedom of the users that actually run it.

关于自由软件在实践中必须尊重什么才能获得自由,存在着不同的想法。但是关于tivoization是否使软件non-free的争议仍然是对自由的争议。例如,Linus Torvalds认为Linux的tivoization(他不喜欢这个术语)应该是not be prohibited,但这并不是说它实际上并没有阻止人们自由使用该软件(在另一台设备上)。

自由软件和开源如何应用于Ubuntu?

Ubuntu中的大多数软件都是免费软件和开源软件。 Ubuntu中的一小部分软件都不是。 (无是一个而不是另一个。)Ubuntu project旨在生成一个尽可能免费的系统,同时as many users as possible仍可完全使用。

安装Ubuntu时,您可以选择安装non-free软件来执行播放MP3文件等功能。在Ubuntu中,Additional Drivers建议并促进为某些设备(如视频和网卡)安装non-free驱动程序。 Non-free软件(如Adobe Flash和Skype)也可以在多元宇宙和合作伙伴存储库中使用。此外,根据一个人对”includes,”的定义,Ubuntu可能被认为包含non-free软件,因为软件中心提供了安装专有付费软件的能力。

虽然these and other factors渲染Ubuntu(以及大多数其他非常受欢迎的GNU /Linux发行版)并非完全免费,并且可以说有分布式的more thoroughly free,Ubuntu及其社区已经为数千人(如果不是数百万)带来了免费软件 – 并且支持它)否则可能永远不会使用它的人,并为全世界自由软件的传播以及人们使用自己语言使用自由软件的能力做出了积极贡献。 Ubuntu philosophy在自由度和用户能力方面表达:

We believe that every computer user:

  • Should have the freedom to download, run, copy, distribute, study, share, change and improve their software for any purpose, without paying licensing fees.
  • Should be able to use their software in the language of their choice.
  • Should be able to use all software regardless of disability.

Our philosophy is reflected in the software we produce, the way we distribute it and our licensing terms, too – Ubuntu Licence Policy.

Install Ubuntu and you can rest assured that all our software meets these ideals. Plus, we are continually working to ensure that every piece of software you could possibly need is available under a licence that gives you those freedoms.

然后继续讨论和赞扬自由软件和开源运动,并说:

Although some people regard ‘free’ and ‘open source’ as competing movements with different ends, we do not. Ubuntu proudly includes members who identify with both.

无论您认为您的目标是与自由软件,开源,两者,还是两者都不一致,我们都鼓励您使用Ubuntu满足您的需求。只要您愿意遵循code of conduct来练习humanity toward others,我们鼓励您加入Ubuntu社区!

次佳解决方法

“Free”可以表示两种情况中的一种(或两种):如”costs nothing”中的”free”(“gratis,”“啤酒中不含”),或”free”,如“可自由修饰”(“libre,”“在言语中不含”)。

“Open source”仅仅意味着源代码由开发人员提供,并且不一定是“像啤酒一样免费”,也不一定是“像言论中一样免费”(尽管它可以是其中之一或两者)。

这是一个有用的维恩图:http://www.gnu.org/philosophy/categories.html

第三种解决方法

没有权限可以定义单词的含义。它是由如何使用来定义的,因此一个词的含义可以随着时间的推移而改变,或者一个词可以同时对不同的人群意味着不同的东西。

那说:wikipediathe Free Software FoundationThe Debian ProjectThe Ubuntu ProjectGNU都同意一件事:”free software”是关于自由,而不是成本。自由软件可以花钱或不花钱。

对“开源软件”一词​​没有那么多的一致意见。虽然有人说这意味着源代码可用(wikipedia上的一些句子)和GNU。其他人则认为自由软件和开源软件的概念大致相同,例如: opensource.org。但是,分发修改后的软件的权利不一定是“开源软件”(wikipedia,但与此相反,又是Open source definition)的一部分。

将其他答案中的一些示例放入这些类别中:skype:both; Fedora:免费软件和开源软件;谷歌浏览器:两者(据我所知),但Chromium是免费软件和开源软件;

结论:

许多团体花费了大量时间和精力让人们对这些术语感到困惑。特别是自由软件基金会,它似乎有点使用“开源软件”一词​​,而不是开源倡议。开源计划引入并大力推广了一个新术语(开源软件),基本上与已经建立的术语”free software”相同。

您还可以阅读更多here

第四种方法

我要说的是,差异的一个例子,表明Shuttleworth比自由软件更开源,可以在以下引用中找到(为了回应与专有公司的合作):

If your way of seeing the world IS genuinely more productive, effective, efficient, insightful and usable, then you should be confident that you will win in the long term

(slashdot interview)

我认为自由软件的意见可能确实不会那么自信,从长远来看,事情会变得自由,而且在合作方面也不会认为它是如此相关。你可以将它与认为奴隶制必然会消失因为它没有效率的比较:人们在自由,更多创新和没有反抗风险时工作得更好。这是事实,但你也可以反对奴隶制作为一个更抽象的原则。

第五种方法

术语Free SoftwareOpen-source Software来自两个动作: –

  1. Free software movement

  2. Open-source movement

定义:-

GNU上有两篇与此相关的文章:

  • http://www.gnu.org/philosophy/open-source-misses-the-point.html(更新和更好)这两个术语描述了几乎相同类别的软件,但它们代表基于根本不同的值的视图。开源是一种开发方法;自由软件是一种社会运动。对于自由软件运动而言,自由软件是一种道德要求,对用户自由至关重要。相比之下,开源的哲学只考虑如何在实际意义上制作软件“better”。它说非自由软件是解决实际问题的一个较差的解决方案。

  • https://www.gnu.org/philosophy/free-software-for-freedom.html(旧的和被取代的)两种运动之间的根本区别在于它们的价值观,它们看待世界的方式。对于开源运动而言,软件是否应该是开源的问题是一个实际问题,而不是道德问题。正如一个人所说,“开源是一种开发方法;自由软件是一种社会运动。“对于开源运动,non-free软件是一个次优的解决方案。对于自由软件运动,non-free软件是一个社会问题,自由软件就是解决方案。

在OSI常见问题解答: – What is “free software” and is it the same as “open source”?

The FSF uses a shorter, four-point definition of software freedom when evaluating licenses, while the OSI uses a longer, ten-point definition. The two definitions lead to the same result in practice, but use superficially different language to get there.

我在这里附上详细信息:

How Free Software and Open Source Relate as Categories of Programs


       /----------------------------------------------\
      / |                                            | \
     /  |                                            |  \
    /   |                                            |   \
        |                                            |
        |       Source license is GNU *GPL, Apache,  |
        |        original BSD, modified BSD,         |
free    |        X11, expat, Python, MPL, etc.,      |
        |        and executable is not tivoized      |   open source
        |                                            | 
        |                                            |
    \   |                                            |
     \  |                                            |
      \ |                                            |   /
       \----------------------------------------------  /
        |     tivoized (tyrant) devices          | O | /
        ----------------------------------------------/

值得注意的(引用)注意事项: –

  • 在所有开源程序中,只有极小的部分不是免费的。如果底行是按比例绘制的,那么它的文本必须是一个很小的字体,可能太小而无法读取。

  • Tivoized或“tyrant” devices包含由源代码免费提供的非自由可执行文件。

  • “O”代表“other”,指的是源代码为开源但非免费的许可证的程序。


参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1100.html,未经允许,请勿转载。