大家可能会在大眼仔网站上碰到不少标写有开源软件的文章,对于这类应用一般多为自由免费的应用程序,一般遵守相应的许可协议即可免费或者商业使用。软件开发及发展已经很多年,无论是传统的付费应用还是现在多数企业拥抱的开源应用,你了解它的历史吗?今天大眼仔就带您一起看看开源/自由软件的历史。
自由软件运动于 1983 年发起,但较早的项目符合(或几乎符合)自由软件的现代定义,即所有用户都可以自由使用、研究、修改和分发的软件(“作为自由的自由”)。早期的设计出于实际原因或社会原因确保了这些自由,但不是传播实践或哲学的有组织运动的一部分。
该运动由 Richard Stallman 发起,作为对开发人员通过仅发布软件的工作版本而不是可修改的源代码来阻止这些自由的日益增长的趋势反应。
Stallman 认为,这是所有常见软件工具的社会要求,而不是仅在某些情况下具有实际重要性的技术选择。 1998 年,支持自由软件但不同意它是社会需要的人们开始使用“开源软件”一词来指代软件,并将其描述为具有技术优势。
软件之前的分享方法
技术数据免费共享的概念早在计算机出现之前就已经存在。例如,烹饪食谱很常见,并且自我们人类文化开始以来就一直存在。
在汽车发展的早期,一群资本垄断者拥有最初由 George B. Selden 提交的 2 冲程汽油发动机专利的权利。通过控制这项专利,他们可以垄断行业和汽车制造商的权力。 1911 年,独立汽车制造商亨利福特赢得了一项关于塞尔登专利的争议。结果是塞尔登的专利实际上变得毫无价值,一个新的协会(最终成为汽车制造商协会)成立了。新协会在所有美国汽车制造商之间建立了交叉许可协议:虽然每家公司都将开发技术并申请专利,但这些专利是公开共享的,所有制造商之间没有现金交换。此时,美国已进入二战,福特拥有 92 项专利和 515 项与其他公司的专利,这些专利在这些制造商之间共享,无需现金交换(也无需诉讼)。
1980 年代之前的自由软件
在自由软件运动和“自由软件”一词出现之前,可以与今天的自由软件社区相提并论的软件社区已经存在了相当长的一段时间。根据 Richard Stallman 的说法,麻省理工学院的软件共享社区在他 1971 年参与之前已经存在多年。在 1950 年代和 1960 年代,几乎所有软件都是由计算机科学学者和企业研究人员合作开发的。因此,它通常是在学院领域普遍接受的开放合作原则下分发的,本身并不被视为商品。在此期间,源代码,即人类可读的软件形式,通常分布在一起,因为用户经常自己修改软件,因为它可能无法在不同的硬件平台和操作系统上运行而无需修改,并修复错误或添加新功能。
A-0 该系统由 Remington Rand 的 UNIVAC 部门于 1953 年开发,并附有源代码向客户发布。他们被邀请将他们的改进发回给 UNIVAC。因此,人们相信这是免费和开源软件的第一个例子。
1967 年发布的 IBM 大型机操作系统,即航空公司控制程序 (ACP),也包含源代码。
事实证明,在这个时代,软件是免费的,它不是该软件的用户或其开发人员之间协作努力的结果,而是因为必要性和不同的学术文化,以及移植和兼容性要求。用户还担心该程序的密切来源会包含后门,这为分发者提供了攻击其系统的机会,并且实际上没有安全机制。软件日志记录在任何主要操作系统中都不常见,而且无法查看软件在做什么。
1980 年代和 1990 年代
非官方软件分享继续
但是,仍然有一些人希望免费与其他程序员和/或用户共享他们的源代码。 在 Internet 引入和广泛公众使用之前,有许多替代方法可以做到这一点,包括计算机杂志和编程书籍中的列表。
Decus 磁带
在 1980 年代初期,所谓的 Decus 磁带是世界上分发自由软件的唯一方式。操作系统、专有程序以及 Teco 等众多工具已被开发出来,以使用户的生活更轻松,并在 Decus 磁带上分发。这些软件包使 DEC 受益,他们偶尔将它们包含在他们自己的操作系统的新版本中。
1980 年代的在线软件共享社区
在 80 年代,与自由软件运动并行,源代码软件在 BBS 网络上共享。用 BASIC 和其他解释语言编写的软件只能作为源代码分发,而且大部分是免费软件。
发起自由软件运动
1983 年,Richard Stallman 发表了 GNU 宣言,并启动了 GNU 项目,以开发一个完整的操作系统,不受源代码免费使用的限制。 Stallman 还在 1985 年发表了 GNU 宣言,概述了 GNU 项目的目的和自由软件的重要性。 GNU 项目及其宣言的另一个可能灵感来自 Stallman 和 Symbolics, Inc. 之间的分歧。关于 MIT 访问 Symbolics 基于 MIT 代码对其 LISP 计算机所做的更新。发布后不久,“自由软件”一词被自由软件基金会创造并创立以推广这一概念,自由软件的定义于 1986 年 2 月发布。
1989 年,发布了 GNU 通用公共许可证的第一个版本。 1991 年发布了略微更新的第 2 版。 1989 年,一些 GNU 开发人员组建了 Cygnus Solutions。 GNU 项目的核心,此后称为“GNU Hurd”,一直被推迟,但大多数其他组件都在 1991 年完成。
Linux (1991-)
由 Linus Torvalds 创建的 Linux 内核于 1991 年作为可自由修改的源代码发布。该许可证不是自由软件许可证,但从 1992 年 2 月的 0.12 版开始,Torvalds 根据 GNU 通用公共许可证重新授权该项目。就像 Unix 一样,Torvalds 内核吸引了志愿程序员的注意。
自 1996 年以来,Linux 已经包含了自己的许可组件,因此它不再是完全免费的软件。自由软件基金会发布了一个名为 Linux-Libre 的 Linux 内核修改版本,其中删除了所有专有和非自由组件。
许多公司提供定制的 Linux 系统产品,这些产品随商业支持一起分发。命名仍然存在争议。至于完整的系统,因为只是“Linux”是常见的用法。然而,自由软件基金会和许多其他组织提倡使用术语“GNU/Linux”,称它是整个操作系统的更准确名称。
FreeBSD (1993-)
当 USL 诉 BSDi 诉讼于 1993 年和解时,FreeBSD 和 NetBSD(它们来自 386BSD)作为自由软件发布。 OpenBSD 于 1995 年从 NetBSD 分叉出来。其他更新的分支也存在,包括 DragonflyBSD。
启动开源
1997 年,埃里克·雷蒙德 (Eric Raymond) 发表了《大教堂与集市》,对黑客社区和自由软件原则进行了分析。该报纸在 1998 年初受到了极大的关注,这也是 Netscape Communications Corporation 将其广受欢迎的 Netscape Communicator Internet 套件作为免费软件发布的动机之一。该代码是当今 Mozilla Firefox 和 Thunderbird 的基础。
Netscape 法案激励 Raymond 和其他人学习如何将自由软件原则和利益带入商业软件行业。他们得出的结论是,FSF 的社交活动对 Netscape 这样的公司没有吸引力,并希望找到一种方法来重新命名自由软件运动,以突出源代码共享的商业潜力。
Netscape 在 Netscape Public License 和后来的 Mozilla Public License 下发布了源代码。
1999 年 8 月,Sun Microsystems 发布了 StarOffice 办公套件,作为 GNU 宽通用公共许可证下的免费软件。该程序的免费版本更名为 OpenOffice.org,并与 StarOffice 共存。
微软和其他攻击(1998-)
随着免费软件变得越来越流行,微软等行业官员开始将其视为严重威胁。这在 1998 年泄露的一份被微软批准为正版的文件中得到了揭示,该文件被称为万圣节文件中的第一份。
微软曾经将 GPL 比作“癌症”,但这个类比后来被放弃了。事实上,微软总体上已经软化了对开源的公开立场,因为承认开源是当今微软 Windows 生态系统的重要组成部分。然而,与此同时,在幕后,微软的举动并没有那么有利于开源社区。
微软对开源运动的贡献
2006 年,Microsoft 为使用 Microsoft 平台的开源项目推出了 CodePlex 托管。 2002 年创建的 Microsoft F# 编译器也已在 Apache 许可下作为开源版本发布。 F# 编译器是商业产品,因为它包含在非开源的 Visual Studio 中。
多年来,微软代表已经定期出现在各种开源和 Linux 会议上。
微软最近推出了一家名为 Microsoft Open Technologies Inc. 的子公司。通过利用开源标准弥合 Microsoft 自己的技术和非 Microsoft 技术之间的差距。
文章名称:《大眼仔带您快速了解开源/自由软件的历史》
文章固定链接:https://www.dayanzai.me/history-of-free-software.html
本站资源仅供个人学习交流,请于下载后 24 小时内删除,不允许用于商业用途,否则法律问题自行承担。
猜你喜欢
- 2021-11-11Apple 新芯片 M1 vs M1 Pro vs M1 Max 到底有多强悍?
- 2024-09-25开源 3D 动画建模渲染软件 Blender 4.2.2 x64 中文多语免费版
- 2022-09-29免费防火墙软件 Firewall App Blocker 1.9 + x64 绿色中文版
- 2024-06-20安卓简易笔记 Easy Notes 1.2.53 中文多语免费版
- 2019-04-07电子书转换工具 eBook Converter Bundle 3.19.326.425 汉化中文版
相关推荐
- 2022-06-10传统 4G 与最新的 5G 网络之间存在的差异在哪里?
- 2020-06-30方正免费电子文档阅读软件 Apabi Reader 4.5.2 中文免费版
- 2015-12-143ds Max 布料模拟插件 SimCloth 1.8 for 3ds Max 6.0~3ds Max 2016
- 2024-07-25Photoshop 增强滤镜 DxO Nik Collection 6.12.0 x64 中文免费版
- 2023-07-04释放 NoSQL 的潜力:深入了解其创新功能和优势