全站首页设为首页收藏本站

西虹市网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

社区广播台

    查看: 42|回复: 6
    打印 上一主题 下一主题

    明白:趣谈自由软件与开源软件

    [复制链接]
    跳转到指定楼层
    楼主
    发表于 2023-12-2 11:39:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    西虹网 西虹网  简而言之,自由软件是一种高尚的价值观,而开源软件则是一种实用主义。漏洞代码片段https://www.checode.cn/西安奇科厚德信息科技有限公司是一家专注于软件成分分析系统,开源代码合规性和安全性检测的高新技术企业,公司致力于开源软件测试技术的研究,开发了具有完全自主知识产权的Checode开源助手代码检测分析系统,漏洞猎手,开源助手,软件溯源,开源代码检查工具,成分分析测试软件,源代码安全检测系统,软件成分分析系统!
    西虹网 西虹网

    西虹网 西虹网
    西虹网 西虹网  今天的程序员,说起开源软件,相信没有人不知道。
    西虹网 西虹网
    西虹网 西虹网  开源生态已经成为一种强大的存在,从语言,框架,工具到各种软件,开源的东西可谓应有尽有,一应俱全。
    西虹网 西虹网
    西虹网 西虹网  但在开源软件之前,还存在另外一个很重要的概念,可能现在有非常多的程序员并不是非常熟悉这个概念,那就是:自由软件及其背后的自由软件运动
    西虹网 西虹网
    西虹网 西虹网  从本篇开始,我将谈论这个非常有趣的话题,那就是自由软件与开源软件
    西虹网 西虹网
    西虹网 西虹网  这是第一篇
    西虹网 西虹网
    西虹网 西虹网  其实,很长一段时间内,我也不太清楚什么是自由软件,对它也没有太多概念。更不知道它与开源软件的方方面面的有趣的事情。我相信这个现象在国内程序员或业界应该也是普遍存在的,许多人也并不非常了解或甚至没有听过自由软件这个概念及它背后的理念。
    西虹网 西虹网
    西虹网 西虹网  一直以来,国内更流行的概念是开源,使用开源,推广开源。从阿里2008年发起去IOE运动以来,开源的理念在国内业界早已深入人心。
    西虹网 西虹网
    西虹网 西虹网  阿里去IOE靠的是什么,当然就是开源了。
    西虹网 西虹网
    西虹网 西虹网  开源的理念对程序员来说早已是家喻户晓了,但与开源有千丝万镂关系的另一个概念自由软件,却处于一种相对较为尴尬的处境,它所倡导的理念及它本身在国内并不为人非常熟悉。
    西虹网 西虹网
    西虹网 西虹网  最开始听说与自由软件相关的理念,是FOSS这个概念。
    西虹网 西虹网
    西虹网 西虹网  在我浏览国外技术文章的过程中,最经常遇到FOSS这个词,后面无意间我才知道这个词代表的是Free and Open Source Software,由于不知道自由软件的概念,我一直认为这个代表的是“免费与开源软件”的意思。后面经过查阅才理解,原来它真正的意思是”自由与开源软件“
    西虹网 西虹网
    西虹网 西虹网  什么是自由软件?我第一次非常好奇这个概念
    西虹网 西虹网
    西虹网 西虹网  而后在寻找CentOS的替代服务器版本时,一路寻找到Debian这个发行版本。而在Deiban官网的首页中,它们对宣称自己是:
    西虹网 西虹网
    西虹网 西虹网  Debian是一个完全自由的操作系统
    西虹网 西虹网
    西虹网 西虹网  它们说自己是完全自由的操作系统,没有说自己是开源免费的操作系统。我一直以来对Linux这种操作系统的理解都停留在它们都是开源免费的,并没有自由的理解在内。
    西虹网 西虹网
    西虹网 西虹网  而后在Debian的"我们的理念“文章中,我真真正正看到了一个基于自由理念信念下的自由的操作系统是怎么一回事了。
    西虹网 西虹网
    西虹网 西虹网  这里,当我们使用自由(Free)这个词时,我们关心的不是金钱,而是软件自由。
    西虹网 西虹网
    西虹网 西虹网  首先可以肯定一点是,自由软件与开源软件肯定是不一样的,不然也不需要用另一个名字。事实上,开源软件是从自由软件中衍生出来的,这一点后面再说。
    西虹网 西虹网
    西虹网 西虹网  自由软件关注的是使用软件的自由
    西虹网 西虹网
    西虹网 西虹网  自由软件是由以下四个自由来定义的,它们包括
    西虹网 西虹网
    西虹网 西虹网  自由之零:无论用户出于何种目的,必须可以按照用户意愿,自由地运行该软件。自由之一:用户可以自由的学习与修改软件,那做为这个的前提,用户是要能自由的访问到软件的源码自由之二:用户可以自由的分发软件给别人,以帮助他人自由之三:用户可以自由的分发修改后的软件版本,以使整个社区从修改中受益。
    西虹网 西虹网
    西虹网 西虹网  当一个软件满足了上述四个要求之后,就可以称自己为自由软件
    西虹网 西虹网
    西虹网 西虹网  自由软件的倡导者认为,不满足上述要求的软件,就是非自由软件,按照上述标准,有非常多的开源软件并不完全满足这个标准。
    西虹网 西虹网
    西虹网 西虹网  自由软件的关注点在于使用软件的自由,它将专有软件或叫私有软件视为对立。
    西虹网 西虹网
    西虹网 西虹网  自由软件运动是为用户的计算自由而战斗。
    西虹网 西虹网
    西虹网 西虹网  自由软件带有比较明显的个人印记,直到现在仍是如此。推动自由软件的核心人物是:Richard Stallman
    西虹网 西虹网
    西虹网 西虹网  这里简要列出一些有关自由软件运动的历史,有助于大家对自由软件运动有更好的理解。
    西虹网 西虹网
    西虹网 西虹网  发起GNU运动 1983年
    西虹网 西虹网
    西虹网 西虹网  自由软件的创始人Richard Stallman在1983年,就发起了一个叫GNU的运动,也就是开发一套与Unix完全兼容,并且100%完全自由的操作系统。
    西虹网 西虹网
    西虹网 西虹网  这就是GNU运动。GNU是一个集合,代表着构建一个完全自由的操作系统的所有方面,从内核到编译器,到桌面等。比如Gnome属于GNU的一部分。GCC也属于GNU的一部分。GNU也有自己的内核 - Hurd (还在开发中)
    西虹网 西虹网
    西虹网 西虹网  事实上,现在大家熟知Linux系统中相当一部分的软件都属于GNU。
    西虹网 西虹网
    西虹网 西虹网  成立自由软件基金会 1985年
    西虹网 西虹网
    西虹网 西虹网  GNU并不是Richard Stallman一个人在开发,有许多的人参与到这个运动,为了开发一个完全自由的操作系统。Richard Stallman是其中的核心与精神领袖。
    西虹网 西虹网
    西虹网 西虹网  为了更好的推动GNU,使之可持续下去,Richard Stallman在1985年的时候成立了自由软件基金会。
    西虹网 西虹网
    西虹网 西虹网  GNU + Linux的双剑合并。1991年
    西虹网 西虹网
    西虹网 西虹网  事实上,在1990的时候,GNU运动已经开发出了一个操作系统几乎所有方面的软件,这确实是令人难以置信的工作。
    西虹网 西虹网
    西虹网 西虹网  但是,它们独独缺少一个稳定的操作系统内核。虽然GNU有自己的内核开发-Hurd。但直到现在,这个内核仍然没有稳定,内核工作的复杂度远超他们的预计。
    西虹网 西虹网
    西虹网 西虹网  但幸运的是,Linux的创始人Linus Torvalds在1991年时,编写了一个类Unix内核并开源出来。
    西虹网 西虹网
    西虹网 西虹网  对GNU来说,这是个很好的东西,于是GUN在做了大量修改与适配后,后面与Linux内核结合起来。形成了自由的操作系统。
    西虹网 西虹网
    西虹网 西虹网  对自由软件运动来说,他们认为这样的操作系统应该称呼为:GNU/Linux。
    西虹网 西虹网
    西虹网 西虹网  但今天,我们基本上称呼这样的系统为另一个名字:Linux
    西虹网 西虹网
    西虹网 西虹网  开源软件的兴起与发展 1998年
    西虹网 西虹网
    西虹网 西虹网  并非全部的自由软件用户和开发者都赞同自由软件运动的目标。1998年,自由软件阵营中的部分成员分裂出来,并以“开源”为名继续开展活动。
    西虹网 西虹网
    西虹网 西虹网  而后,我们都知道,开源的理念不断兴起,它不断的发展与壮大,其声势与影响力早已远超自由软件的运动。
    西虹网 西虹网
    西虹网 西虹网  现在,开源的理念早已远胜于自由运动的理念。
    西虹网 西虹网
    西虹网 西虹网  不要说普通计算机用户,就算对于大多数程序员来说,可能知道开源的也远胜于知道自由软件运动。
    西虹网 西虹网
    西虹网 西虹网  如果按照各自的理念与要求,自由软件一定是需要开放源代码,否则无法实现自由运动的四个自由。而开源软件有相当一部分也其实是满足这四个自由。
    西虹网 西虹网
    西虹网 西虹网  也就是它们之间有非常大的重叠。
    西虹网 西虹网
    西虹网 西虹网  但自由软件运动并不赞同开源软件运动,他们认为开源软件运动错失了自由软件的初衷与目标。
    西虹网 西虹网
    西虹网 西虹网  那究竟这两者之间有什么不同呢,它们到底各自在关注什么?
    西虹网 西虹网
    西虹网 西虹网  简而言之,自由软件是一种高尚的价值观,而开源软件则是一种实用主义。
    西虹网 西虹网
    西虹网 西虹网  最开始出现的是自由软件,在1983年的时候,自由软件的创始人Richard Stallman就发起了GNU运行,意图打造一个完全自由的操作系统并为此而付出努力。
    西虹网 西虹网
    西虹网 西虹网  而开源运动则是从自由软件运行中分化出来的,在1998年的时候,自由软件阵营的一部分成员因不赞同自由软件运动的目标,从自由软件运动中分裂出来,以开源的名言开展活动。
    西虹网 西虹网
    西虹网 西虹网  现在,开源的理念更深入人心,为人所熟知。而自由软件的理念仍在努力奋斗中,其影响力似乎比不上开源运动。
    西虹网 西虹网
    西虹网 西虹网  那究竟自由软件与开源软件运动两者之中的差异有哪些,它们到底有什么分歧?
    西虹网 西虹网
    西虹网 西虹网  在说分歧前,先说共同点:
    西虹网 西虹网
    西虹网 西虹网  共同点一: 它们的重叠性非常高
    西虹网 西虹网
    西虹网 西虹网  其实,绝大多数大家比较熟知或常用的开源软件,其理念是同时符合自由软件的理念的。
    西虹网 西虹网
    西虹网 西虹网  比如浏览器中的Firefox以及Chromium(Chrome的开源版本),Linux操作系统中的相当大一部分,以及开源的数据库MariaDB,Postgres等,它们本身同时符合开源软件的理念,也符合自由软件的四个理念。
    西虹网 西虹网
    西虹网 西虹网  自由之零:无论用户出于何种目的,必须可以按照用户意愿,自由地运行该软件。自由之一:用户可以自由的学习与修改软件,那做为这个的前提,用户是要能自由的访问到软件的源码自由之二:用户可以自由的分发软件给别人,以帮助他人自由之三:用户可以自由的分发修改后的软件版本,以使整个社区从修改中受益。
    西虹网 西虹网
    西虹网 西虹网  当然,开源软件中也存在一些不太符合自由软件的理念的,比如一些限制修改或商用的开源协议。
    西虹网 西虹网
    西虹网 西虹网  共同点二:它们都主张源码是开放的
    西虹网 西虹网
    西虹网 西虹网  开源软件这名称就是从源码开放这一点来的,这是它的核心主张。而自由软件的四个自由,若不能自由的获取源代码,也就无从谈起了。
    西虹网 西虹网
    西虹网 西虹网  所以无论是自由软件或是开源软件,其源码一定是开放并可以任意获取的。
    西虹网 西虹网
    西虹网 西虹网  共同点三:它们都将专有软件视为"另一边"
    西虹网 西虹网
    西虹网 西虹网  无论是自由软件或是开源软件,它们都拥有同一个核心的价值观:
    西虹网 西虹网
    西虹网 西虹网  我们与专有软件是不同的
    西虹网 西虹网
    西虹网 西虹网  当然,怎么个不同法,其实还是有区别的。 这点后面再说
    西虹网 西虹网
    西虹网 西虹网  共同点四:它们共同改变了行业的生态
    西虹网 西虹网
    西虹网 西虹网  我们得感谢自由软件与开源软件,它们的确改变了行业的生态。若是没有自由软件以及开源软件,如果我们的行业的生态全是由专有软件把持,很难想像今天的互联网能快速发展到如今的地步。
    西虹网 西虹网
    西虹网 西虹网  最大的分歧:理念与目标的差异
    西虹网 西虹网
    西虹网 西虹网  自由软件的理念是为用户的计算自由而战斗,用户应该能自由的使用任何计算资源,从操作系统到软件等一切。而专有软件这种是不合理的,限制了用户的自由,是不应该存在的。
    西虹网 西虹网
    西虹网 西虹网  而开源软件的理念是通过开放源代码,让更多的程序员参与进来的方式,使软件变得更加强大,并且通过开源的模式惠及更多用户。
    西虹网 西虹网
    西虹网 西虹网  所以,从上述理念上来看,就得出了我开篇的话语:
    西虹网 西虹网
    西虹网 西虹网  自由软件是一种高尚的价值观,而开源软件是一种实用主义
    西虹网 西虹网
    西虹网 西虹网  分歧二:对专有软件的立场不同
    西虹网 西虹网
    西虹网 西虹网  自由软件将专有软件视为敌人,是对立面。专有软件在自由软件运动中是不该存在的东西。
    西虹网 西虹网
    西虹网 西虹网  而开源软件运动对专有软件的立场是:不使用开源的方式,怎么可能构建出稳定可靠及惠及更多人的软件?
    西虹网 西虹网
    西虹网 西虹网  显而易见,两者的立场是有差异的。
    西虹网 西虹网
    西虹网 西虹网  而现实中,开源软件运动中有大量的专有软件公司参与,某种程度上说,开源软件与专有软件是有紧密联系的,密不可分的。
    西虹网 西虹网
    西虹网 西虹网  比如MySQL是开源的,但它还有个功能更强大的企业版。企业版在功能上更多更强大,而这些功能点也没有开源。类似的现象在开源的世界是其实是普遍存在的。
    西虹网 西虹网
    西虹网 西虹网  甚至相当一部分开源软件压根就是专有软件公司贡献的。
    西虹网 西虹网
    西虹网 西虹网  这种现象在自由软件运行中可能是不被接受的。
    西虹网 西虹网
    西虹网 西虹网  现在你应该对自由软件运动与开源软件运动有了解了,也能理解为什么开源软件发展的更好,而自由软件运动却不是特别好的原因所在了。
    西虹网 西虹网
    西虹网 西虹网  开源软件运动的理念,其实是对专有软件的一种有益的补充,它其实并没有反对专有软件,也不会去谈软件自由的问题,这是它迅速发展的原因所在,它与专有软件形成了良好的互动,也就是大家各有市场。
    西虹网 西虹网
    西虹网 西虹网  而自由软件运动则其实是一种抗争,它试图定义一种完全不同的软件生态,这种行为稍微想像下,会有多少软件商业公司支持呢?它试图颠覆当前的软件生态,重新构建一个不同的生态,这种做法的当然是举步为艰的。
    西虹网 西虹网
    西虹网 西虹网  我们仍然要向它们表达敬意,自由软件运动是先行者,它也实实在在的改变了我们软件的生态。
    西虹网 西虹网
    西虹网 西虹网  在自由软件与开源软件中,一个非常有意思也有有争议的话题就是:
    西虹网 西虹网
    西虹网 西虹网  到底我们通常叫Linux服务器的这种操作系统,是该叫Linux还是该叫GNU/Linux?
    西虹网 西虹网
    西虹网 西虹网  而这个有意思的点在于,自由软件的创始人Richard Stallman以及Linux内核的创始人Linus Torvalds都卷入到其中。
    西虹网 西虹网
    西虹网 西虹网  下一篇继续聊:趣谈自由软件与开源软件(三):一个名称的争议,究竟是该叫Linux还是GNU/Linux
    西虹网 西虹网
    西虹网 西虹网  作者:御剑 ,原文:https://taoofcoding.tech/blogs/
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏 转播转播 分享分享
    回复

    使用道具 举报

    沙发
    发表于 2024-2-26 01:49:12 | 只看该作者
    学习了,谢谢分享、、、
    回复 支持 反对

    使用道具 举报

    板凳
    发表于 2024-3-1 10:47:17 | 只看该作者
    帮帮顶顶!!
    回复 支持 反对

    使用道具 举报

    地板
    发表于 2024-3-7 22:30:46 | 只看该作者
    帮帮顶顶!!
    回复 支持 反对

    使用道具 举报

    5#
    发表于 2024-3-11 19:22:16 | 只看该作者
    过来看看的
    回复 支持 反对

    使用道具 举报

    6#
    发表于 2024-3-14 06:39:35 | 只看该作者
    不知该说些什么。。。。。。就是谢谢
    回复 支持 反对

    使用道具 举报

    7#
    发表于 2024-3-17 05:51:46 | 只看该作者
    不知该说些什么。。。。。。就是谢谢
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表