1.1. 历史

1.1.1. UNIX

为了理解 Linux 的普及程度,我们需要回溯到大约 30 年前……

想象一下,当时的计算机像房子甚至体育场一样大。虽然这些计算机的尺寸带来了巨大的问题,但更糟糕的是:每台计算机都有不同的操作系统。软件总是为特定的目的而定制,为一个系统开发的软件无法在另一个系统上运行。能够使用一种系统并不意味着您就可以使用另一种系统。这对用户和系统管理员来说都很困难。

当时的计算机极其昂贵,即使在最初购买之后,为了让用户理解它们的工作原理,也必须做出牺牲。每单位计算能力的总成本非常巨大。

技术上,世界还没有那么先进,所以他们不得不忍受这种尺寸又过了十年。1969 年,贝尔实验室的开发团队开始着手解决软件问题,以解决这些兼容性问题。他们开发了一个新的操作系统,它是

  1. 简洁而优雅的。

  2. 用 C 编程语言而不是汇编代码编写的。

  3. 能够重用代码的。

贝尔实验室的开发人员将他们的项目命名为 "UNIX"

代码重用功能非常重要。在此之前,所有市售的计算机系统都是用专门为一个系统开发的代码编写的。另一方面,UNIX 只需要一小段特殊的代码,现在通常称为内核。这个内核是唯一需要为每个特定系统调整的代码,并且构成了 UNIX 系统的基础。操作系统和所有其他功能都围绕这个内核构建,并用更高级的编程语言 C 编写。这种语言是专门为创建 UNIX 系统而开发的。使用这种新技术,开发可以在多种不同类型的硬件上运行的操作系统变得容易得多。

软件供应商很快就适应了,因为他们几乎可以毫不费力地销售十倍的软件。出现了奇怪的新情况:例如,想象一下来自不同供应商的计算机在同一个网络中通信,或者用户无需额外培训即可在不同的系统上工作。UNIX 在帮助用户与不同系统兼容方面做出了巨大贡献。

在接下来的几十年里,UNIX 的开发持续进行。越来越多的事情变得可能,越来越多的硬件和软件供应商为他们的产品添加了对 UNIX 的支持。

UNIX 最初只在具有大型机和小型机的非常大型的环境中找到(请注意,PC 是一种 "微型" 计算机)。您必须在大学、政府部门或大型金融公司工作才能接触到 UNIX 系统。

但是更小的计算机正在被开发出来,到 80 年代末,许多人拥有了家用电脑。那时,PC 架构已经有几个版本的 UNIX 可用,但没有一个是真正免费的,更重要的是:它们都非常慢,所以大多数人在他们的家用 PC 上运行 MS DOS 或 Windows 3.1。

1.1.2. Linus 和 Linux

到 90 年代初,家用 PC 终于强大到足以运行完整的 UNIX。Linus Torvalds,一位在赫尔辛基大学学习计算机科学的年轻人,认为拥有某种免费的学术版 UNIX 会是个好主意,并立即开始编写代码。

他开始提问,寻找可以帮助他在 PC 上安装 UNIX 的答案和解决方案。以下是他 1991 年在 comp.os.minix 上发表的第一批帖子之一

From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: Gcc-1.40 and a posix-question
Message-ID: <1991Jul3.100050.9886@klaava.Helsinki.FI>
Date: 3 Jul 91 10:00:50 GMT
Hello netlanders,
Due to a project I'm working on (in minix), I'm interested in the posix
standard definition. Could somebody please point me to a (preferably)
machine-readable format of the latest posix rules? Ftp-sites would be
nice.

从一开始,Linus 的目标就是拥有一个完全符合原始 UNIX 的免费系统。这就是为什么他要求 POSIX 标准,POSIX 仍然是 UNIX 的标准。

在那些日子里,即插即用还没有被发明出来,但是很多人对拥有自己的 UNIX 系统感兴趣,这只是一个小障碍。各种新硬件的新驱动程序不断涌现,速度不断提高。几乎只要有新的硬件上市,就有人购买并将其提交给 Linux 测试,因为该系统逐渐被这样称呼,为更广泛的硬件发布更多免费代码。这些程序员并没有止步于他们的 PC;他们能找到的每一件硬件都对 Linux 有用。

那时,这些人被称为 "书呆子""怪胎",但这并不重要,只要支持的硬件列表越来越长。感谢这些人,Linux 现在不仅是新 PC 的理想选择,而且也是旧的和奇异的硬件的首选系统,如果没有 Linux,这些硬件将毫无用处。

在 Linus 发帖两年后,Linux 用户达到了 12000 人。这个在业余爱好者中流行的项目稳步增长,始终保持在 POSIX 标准的范围内。UNIX 的所有功能都在接下来的几年中被添加,最终形成了今天成熟的操作系统 Linux。Linux 是一个完整的 UNIX 克隆,适用于工作站以及中端和高端服务器。今天,许多硬件和软件市场的重要参与者都拥有自己的 Linux 开发团队;在您当地的经销商处,您甚至可以购买预装了 Linux 系统并提供官方支持的产品 - 尽管仍然有很多硬件和软件不受支持。

1.1.3. Linux 系统目前的应用

今天,Linux 已经进入桌面市场。Linux 开发人员最初专注于网络和服务,而办公应用程序一直是最后一个需要攻克的障碍。我们不喜欢承认微软统治着这个市场,因此在过去几年中启动了大量的替代方案,使 Linux 成为工作站的可接受选择,提供简单的用户界面和与 MS 兼容的办公应用程序,如文字处理器、电子表格、演示文稿等。

在服务器方面,Linux 作为一个稳定可靠的平台而闻名,为亚马逊(著名的在线书店)、美国邮政、德国军队和许多其他公司提供数据库和交易服务。特别是互联网提供商和互联网服务提供商已经喜欢上 Linux 作为防火墙、代理和 Web 服务器,您会在每个欣赏舒适管理站的 UNIX 系统管理员的触手可及之处找到一台 Linux 机器。Linux 机器集群被用于制作电影,如 "泰坦尼克号""怪物史莱克" 等。在邮局,它们是路由邮件的神经中枢,在大型搜索引擎中,集群被用于执行互联网搜索。这些只是 Linux 每天在世界各地执行的成千上万重负荷工作中的一小部分。

同样值得注意的是,现代 Linux 不仅可以在工作站、中端和高端服务器上运行,还可以在 "小工具"(如 PDA、手机、大量嵌入式应用程序,甚至实验性手表)上运行。这使得 Linux 成为世界上唯一覆盖如此广泛硬件的操作系统。