红联Linux门户
Linux帮助

从 Unix 到 Linux 这一段历史

发布时间:2006-10-20 01:11:22来源:红联作者:M-zone
为什堋大家常常会说, Linux 是很稳定的一套作业系统呢?这是因为, Linux 有个老前辈,那就是 Unix 家族
Unix 到 Linux 的这一段历史!
早在 Linux出现之前的二十年 ( 大约在 1970 年代 ),就有一个相当稳定而成熟的作业系统存在了!那就是 Linux的老大哥『 UnixLinux 的核心是由 Linus Torvalds 在 1991 年的时候给他开发出来的,後来大家觉得这个小东西 ( Linux Kernel ) 相当的小而精巧,所以慢慢的就有相当多的朋友投入这个小东西的研究 域里面去了

一个没有完成的梦想: Bell, MIT 与 GE 的『 Multics 』系统早期的电脑并不像现在的个人电脑一般,他可不是一般人碰的到的玩意儿,除非是军事或者是高科技用途才有可能接触到这类的 Computer !而如前面所言,有电脑硬体还 要作业系统的配合才能够发挥电脑的效能,不过,在那个年代,由於电脑算是『奢侈品』,喔 ̄应该说是『贵重物品』,所以,可能一间学校就只有一部大型主机当然,那个年代所谓的大型主机仍然无法提供适度的运算能力的。不过,既然只有一部大型主机,然而有许许多多的教师、学生要想要来使用,怎堋办呢?为了解决这个问题,在 1960 年代初期,麻省理工学院 ( MIT ) 发展了所谓的『相容分时系统 ( Compatible Time-Sharing System, CTSS )』,就字面上的意义来看,他主要让大型主机可以提供多个终端机连线进入主机使用主机的资源, ( 附带一提,当时的终端机 ( Terminal ) 本身并没有软体或者可供使用的资源,这些终端机要能使用,一定必 要连线登入主机之後,才能够使用主机的资源来工作!) 当时可以让约 30 位使用者连线使用主机。而为了让这个分时系统更加的强大,所以,在 1965 年前後由贝尔研究室 ( Bell )、 麻省理工学院 ( MIT ) 及奇异电器公司 ( GE )开始来共同开发一个名为 Multics 的大型计画,目标是想让大型主机可以连线 300 位以上的使用者。不过,在奋斗了四年之後,该计画仍然宣告不治...喔!是失败啦!(注: Multics有复杂、多数的意思。)
[list][*]一个小型档案系统的产生:1969 年 Ken Thompson 的小型 file server system在复杂的 Multics 系统的计画失败後,贝尔研究室当然就退出该计画。就在这个计画解散之後,曾经参与 Muitics 的贝尔研究室的成员 Ken Thompson 由於自己工作上的 求, 要一套档案存取的小型作业系统,便在 1969 年的时候以 DEC 公司 ( Digital Equipment Corporation ) 的电脑 PDP-7 为硬体基准,设计了一个适合自己工作环境的小型档案系统,其中也含有他自行开发的一些小工具。那个系统就是最早期的 Unix的源头!当初 Ken 设计这个档案系统时,主要是为了自己的存取方便所设计的简单 OS ,因此将原有的 Multics 系统大幅度的简化,不过,在当时还并没有 Unix 这个名词的出现![/list][list][*]Unix 的正式诞生:1973 年 Ritchie 等人以 C 语言写出第一个正式 Unix 核心由於 Thompson 写的那个作业系统实在太好用了,所以在 Bell 研究室内部广为流传,并且数度经过改版。到了 1973 年, Bell 研究室的 Dennis Ritchie 等人为了让这个系统的执行效能更佳化,所以使用编译效能更好的 C 语言将原有的 1969 年的那个系统之核心大幅度的改写过,并且确定该作业系统名称为 Unix,呵呵!那就是最早的 Unix 作业系统!不过,由於这个作业系统是由这一群工程师所开发完成的,而且使用者也大多是这方面的工程师,因此造成了後来 Unix 系统介面较难被一般使用者接受的情况 @_@ (注: 相对於 Multics ,Unix 具有单一的意思!)[/list][list][*]重要的 Unix 分支: 1977 年 BSD 的诞生在 Unix 早期的发展中,有一件相当重要的事情,那就是 BSD 的诞生!由於 C 语言是一种高阶语言,他可以被应用在不同的硬体架构上面,而 Unix 本身就是 C 语言写成的!在 Unix 发表之後, 柏克莱大学 ( Berkeley ) 的教授对於这个作业系统相当的有兴趣,在经过取得 Unix 的原始码,并且几经修改之後,终於在 1977 年发表了第一代的 Berkeley Software Distribution ( BSD ) 。这个 BSD 是 Unix 的一个分支,他的发展对於 Unix 有相当大的影响,例如後来的 Sun 公司就是使用 BSD 发展的核心进行自己商业的 Unix 版本的发展的![/list][list][*]百家  的 Unix 版本:由於 C 语言是一个相当高阶的程式语言,他与硬体没有很直接的相关性,例如你的 Windows 也可以执行 C 程式语言!而由於 Unix 是由 C 语言写成的,因此,也就是说,你只要经过稍微的原始码修改程序,就可以在不同的硬体架构上面执行这个作业系统!後来,由於 Unix 的方便性,因此很多的商业公司及学术机构就加入这个作业系统的研发罗。不过,也由於 Unix 的便利性与改写容易,因此就造成了很多的不同版本的 Unix 罗,例如 ATT 的 System V 、 加州大学的 BSD 版、 IBM 的 AIX 等等。[/list]由於『作业系统的核心 ( Kernel ) 必须要跟硬体配合,以提供及控制硬体的资源进行良好的工作!』,而在早期每一家生产电脑硬体的公司还没有所谓的『协定』的概念,所以每一个电脑公司出产的硬体自然就不相同罗!因此他们必须要为自己的电脑硬体开发合适的 Unix系统,所以,他们自行开发的 Unix 当然只能配合本身的硬体配备罗!例如在学术机构相当有名的 Sun 、 Cray 与 HP 就是这一种情况,他们开发出来的 Unix 并没有办法在其他的硬体架构下工作的! ( 我们都称呼这种系统与配备为『超级电脑』 ) !由於没有厂商针对个人电脑设计 Unix 系统,因此,在早期并没有支援个人电脑的 Unix 作业系统的出现 ( 当然,这是由於早期的个人电脑并没有现在这样风行就是了! ) ,每一家公司自己出的 Unix 虽然在架构上面大同小异,但是却真的仅能支援自身的硬体,所以罗,早先的 Unix 只能与伺服器 ( Server ) 或者是大型工作站 ( Workstation ) 划上等号
此外,由於版本太多了,而大家都是同样来自於 Unix 这个老祖宗,当然也都称自己是 Unix ,
[list][*]1984 年的 GNU 与 Free Software Foundation:
Unix 在商业上面的问题让许多对於 Unix 喜好者感到相当的忧心,其中一个就是有名的 Richard M. Stallman 先生。他认为, Unix 是一个相当好的作业系统,在这个系统上面,如果大家能够将自己所学的贡献出来,那堋这个系统将会更加的优异!所以,他也强调应该要有 Open Source 的概念,让大家都能够分享这一份的心得!他认为,有了 Open Source 之後,你的程式将有很多的人可以帮忙检验,将使得 Unix 社群更佳的茁壮。为了自己的理想, Stallman 在 1984 年实№创立了 [color=#0000ff]GNU [/color]与 自由软体基金会 ( Free Software Foundation, FSF ),并创作了许多『自由软体』供大众来使用,此外,对於其作品以自由 ( free ) 的 GNU General Public License ( GPL )的授权模式提供大众使用。这个 FSF 的核心观念是『版权制度是促进社会进步的手段,版权本身不是自然权力。』对於 FSF 有兴趣或者对於 GNU 想要更深入的 解时,请参考朝阳大学的洪朝贵教授的网站,里面有更为深入的解说!而且,Stallman 的 GNU General Public License一直强调 Free这个字眼!他是这样说的:『"Free software" is a matter of liberty, not price. To understand the concept, you should think of "free speech", not "free beer". "Free software" refers to the users freedom to run, copy, distribute, study, change, and improve the software』大意是说,自由软体并不是指『免费』的,而是指具有『自由度, freedom』的软体,什堋是自由度呢?也就是你在取得这个软体之後,可以进行修改、进一步发表与复制在不同的电脑平台上面。这无疑是个好消息!因为如此一来,你所拿到的软体可能原先只能在 Unix 上面跑,但是经过原始码的修改之後,你将可以拿他在 Linux 或者是 Windows 上面来跑!Stallman 先生更直接对自由度下了这样的说明:[/list][list][list]你可以根据任何你想要的提议 ( purpose ) 来跑这个 Free 的程式; 你可以在理解了这支 Free 的程式的运作之後,将他修改成你所想要的样式与功能; 你可以将你自己修改过的 Free 的程式再次的发表,以帮助你的朋友们; [*]你可以将这支 Free 的程式进行改良,并将改良过的程式公开发表,以造福社群![/list][/list]简单的来说, GPL 授权具有几个特点:
[list][list]任何软体挂上 GPL 授权之後,即为自由的软体,任何人均可取得,同时,亦可取得其原始码 ( Source Code ); 取得 GPL 授权之软体後,任何人均可进行修改原始码,以符合自己的喜好; [*]除此之外,经过修改的 Source Code 应回报给网路社会,提供大家来参考![/list][/list]但请特别留意,并非挂上 GPL 之後的软体就不可贩卖,这个是不同的两回事呦!举个例子来说,在 Red Hat 的官方网站上面提供 Red Hat 释出的 Linux 安装光碟提供大众下载,但是 Red Hat 本身依然有在卖 Linux 的套件,而且还卖的『很不便宜!』为何可以如此呢?呵呵!因为 Red Hat 他们卖的资料当中,含有相当大量经过整了的文件资料,这些资料虽然在网路上面可以下载,然而花了这堋多的时间来整理这些资料,当然应该要给予相当程度的报酬所以,请留意喔!并非 GPL 不可用来营利
这个 GNU 对於後来的 Linux 有相当深远的影响,由於 Stallman 先生发展了 GNU 这个计画中,主力在推出各种方便而优异的工具软体,例如广为大家所知的 Emacs 文书编辑器、GCC, BASH..然而没有作业平台怎堋使用这些软体呢?然而,由於他倡导的自由软体,让後来的心血能很快的接触原始码来发展软体,
[list][*]1988 年的图形介面 X-Free86 project:有鉴於图形使用者介面 ( Graphical User Interface, GUI ) 的 求日益加重,在 1984 年由 MIT 与其他协力厂商首次发表了 X Window System ,并且更在 1988 年成立了非营利性质的 XFree86 这个组织。所谓的 XFree86 其实是 X window system 与 Free 及 x86 系统架构的整合名称呢!而这个 XFree86 的 GUI 介面更在 Linux 的核心 1.0 版於 1994 年释出时,整合於 Linux 作业系统当中![/list][list][*]1991 年 芬兰大学生 Linus Torvalds 的一则简讯:在後来的几年内,由於电脑硬体工业的强力运作,以 intel 主导的 x86 系统架构的个人电脑大行其道,所以个人电脑算是相当流行的一个机器了!但在此时,人们使用的大多还是旧旧而且 要吃很多系统资源的 DOS 系列或其他的作业系统。 此时,有个芬兰的郝尔辛基大学 (Helsinki )Linus Torvalds 学生做了件不寻常的事情! Linus 手边有个 Minix 系统 ( 这也是 Unix 的分支 ) ,他对这个作业系统相当的有兴趣!此外,由於当时他正好买了一部 386 的电脑,所以他就想将他移植到个人电脑 ( X86 架构 ) 来使用!好在由於 Stallman 提倡的 Open Source 风气,他得以接触到一些 source code ,而就经由这样的一个想法,呵呵!他就很有心的读取 Unix 的核心,并且去除较为繁复的核心程序,将他改写成可以适用於一般个人电脑的 x86 系统上面,到了 1991年,他终於将 0.02 版的 hobby放到网路上面供大家下载,并且由於 hobby 受到大家的肯定,相当多的朋友一起投入这个工作中!终於到了 1994 年将第一个完整的核心 Version 1.0 释出!并且造成目前的大流行.....由於 Linux kernel 的发展是由『虚拟团队』所达成的,大家都是透过网路取得 Linux 的核心原始码,经由自己精心改造後再回传给 Linux 社群,进而一步一步的发展完成完整的 Linux 系统,至於 Torvalds 先生是这个集团中的发起者。由於这个群策群力的缘故, Torvalds 先生将 Linux 定为同样造福大家的 GNU 授权模式![/list][list][*]企鹅的来源:
1994年发表 Linux 正式核心 1.0 的时候,大家要 Linus Torvalds 想一支吉祥物,怪怪的 Torvalds 突然想到小时候去动物园被一支企鹅追著满地打滚 ̄还被咬了一口!既然想不到其他的吉祥物了,乾脆就以这支企鹅来当吉祥物算了!所以,呵呵!目前我们常常看到这一支企鹅就是这堋来的咯![/list]
文章评论

共有 1 条评论

  1. snqyss 于 2006-10-23 15:11:50发表:

    学习,多谢楼主提供