在线时间 63 小时 最后登录 2019-5-3 注册时间 2004-5-10 听众数 443 收听数 0 能力 -250 分 体力 10122 点 威望 -12 点 阅读权限 150 积分 -516 相册 6 日志 10 记录 10 帖子 2003 主题 1253 精华 43 分享 8 好友 1292
复兴中华数学头子
TA的每日心情 开心 2011-9-26 17:31
签到天数: 3 天
[LV.2]偶尔看看I
自我介绍 数学中国网站(www.madio.cn)是目前中国最大的数学建模交流社区
群组 : 越狱吧
群组 : 湖南工业大学数学建模同盟会
群组 : 四川农业大学数学建模协会
群组 : 重庆交通大学数学建模协会
群组 : 中国矿业大学数学建模协会
在计算机领域,Unix一直是作为高端平台而出现的。几年以前,只有在大型机构的专用机房中才能接触到它们, 甚至稍小一些的机构也负担不起购买Unix工作站的费用。只有很少的使用者才有机会接触和使用Unix,能管理和维护 Unix系统的计算机专业人员就更少了,这就使得Unix总是披着一层神秘的面纱,在普通使用者面前,Unix属于一 种难于使用、十分昂贵的操作系统。然而,当运行在个人电脑上的自由Unix系统出现之后,这种情况已经改变了。
: `* b1 }. ^& x/ Z4 R
) R6 n4 Q- \+ u6 d) j1 ]) g" l, v: y8 W < > 事实上,今天的Unix已经不能说是一个单一的操作系统,它包括了非常多的种类,有高端的HP、SUN服务器 ,也有中、低端的运行在Intel平台上的Unix系统。Unix不再是普通使用者可望而不可及的操作系统了,每个喜 爱Unix的人都可以在自己的PC机中安装上一套Unix系统,学习它、使用它。而中小企业也可以使用PC服务器来运 行Unix系统,充分利用Unix系统的强大处理能力。</P>
6 p5 @5 t% V) l8 Q. j 5 X7 L2 ~) D# I% i0 Z+ m+ L9 M- q
< > FreeBSD就是一种运行在Intel平台上、可以自由使用的Unix系统,它可以从Internet上免 费获得。而它又具备极其优异的性能,使它得到了计算机研究人员和网络专业人士的认可。因此,不但专业科研人员把它用作 个人使用的Unix工作站,很多企业,特别是ISP(Internet服务提供商)都使用运行FreeBSD的高档P C服务器来为他们的众多用户提供网络服务。</P>
/ i, Y4 K" _( q! S9 E& O6 ^ : T; d8 N% z3 h/ M# ~( i6 f) S. Z
< >
$ r+ n( R- x" Q2 g/ M5 Q4 e! C. W2 _ FreeBSD的起源
$ c) q# o6 e/ a( u4 F" G1 [# [
! l5 z5 B5 Q' V( y9 J$ u- m
7 o! m# b, A- ?4 l9 g! m" {
$ ^$ u. u2 w/ W6 a < > 自从1969年AT&T Bell实验室研究人员创造了Unix之后,Unix就不断发展,逐渐成为 了主流操作系统。虽然当前Windows系列已经占据了桌面计算机的领域,其中Windows NT服务器也在网络服 务器领域得到了部分用户的承认,但在高档工作站和服务器领域,Unix仍然具有无可替代的作用。尤其在用作Inter net服务器方面,Unix的高性能、高可靠性、以及高度可扩展的能力仍然不是其他操作系统所能够代替的。</P>
# g9 q, w: b+ p9 Y4 ? . F' S0 b2 }2 G" h
< > 虽然Unix由AT&T创造,但它如此流行却并不能完全归功于AT&T自己的功劳。现代Un ix不是一个厂家的单独产品,在它长期的发展过程中形成了多种不同的版本。惟其丰富多样,才使得Unix具有强大的生 命力。FreeBSD正是Unix众多分支中相当优秀的一支,它的发展历史也相当悠久,是著名的BSD Unix的一 个继承者,因此要了解FreeBSD发展的历史,首先就要了解Unix发展的历程。</P>
7 \% [# I2 b! ]1 b0 i6 R) t# V
( R! u8 A# n5 o: Z- P& V < >Unix操作系统的历史漫长而曲折,它的第一个版本是1969年由Ken Thompson在AT& T贝尔实验室实现的,运行在一台DEC PDP-7计算机上。这个系统非常粗糙,与现代Unix相差很远,它只具有操 作系统最基本的一些特性。后来Ken Thompson和Dennis Ritchie使用C语言对整个系统进行了再 加工和编写,使得Unix能够很容易的移植到其他硬件的计算机上。从那以后,Unix系统开始了令人瞩目的发展。</P>
* N% J5 }8 j8 K7 o! H, p U
) M% C4 F! |, c" z( \$ ]9 l- a B& V < > 由于此时AT&T还没有把Unix作为它的正式商品,因此研究人员只是在实验室内部使用并完善它。正 是由于Unix是被作为研究项目,其他科研机构和大学的计算机研究人员也希望能得到这个系统,以便进行自己的研究。A T&T以分发许可证的方法,对Unix仅仅收取很少的费用,大学和研究机构就能获得Unix的源代码以进行研 究。Unix的源代码被散发到各个大学,一方面使得科研人员能够根据需要改进系统,或者将其移植到其他的硬件环境中去 ,另一方面培养了懂得Unix使用和编程的大量的学生,这使得Unix的普及更为广泛。</P>* v& b& g' D+ _: R% }9 X
* q) h! k2 f6 |$ s6 [/ F6 ^ < > 由于操作系统的开发相当困难,只有少数的计算机厂商,如IBM、Digital等大型公司,才拥有自己的操作 系统,而其他众多生产计算机的硬件厂商则采用别人开发的操作系统。因为Unix不需要太多的花费,因此很多厂商就选择 了Unix作为他们生产的计算机使用的操作系统。他们把Unix移植到自己的硬件环境下,而不必从头开发一个操作系统 。</P>
1 i6 p2 N7 `. q! V 9 z: ~0 c& J: B- Q
< > 到了70年代末,在Unix发展到了版本6之后,AT&T认识到了Unix的价值,成立了Unix系 统实验室(Unix System Lab,USL)来继续发展Unix。因此AT&T一方面继续发展内部使 用的Unix版本7,一方面由USL开发对外正式发行的Unix版本,同时AT&T也宣布对Unix产品拥有 所有权。几乎在同时,加州大学伯克利分校计算机系统研究小组(CSRG)使用Unix对操作系统进行研究,因此他们的 研究成果就反映在他们使用的Unix中。他们对Unix的改进相当多,增加了很多当时非常先进的特性,包括更好的内存 管理,快速且健壮的文件系统等,大部分原有的源代码都被重新写过,以支持这些新特性。很多其他Unix使用者,包括其 他大学和商业机构,都希望能得到CSRG改进的Unix系统。因此CSRG中的研究人员把他们的Unix组成一个完整 的Unix系统──BSD Unix(Berkeley Software Distribution),向外发行。 </P>8 D& @" Z* J8 ~: M5 D( b6 ^
) o: U* o4 b: ]* B, _
< > BSD Unix在Unix的历史发展中具有相当大的影响力,被很多商业厂家采用,成为很多商用Unix的基 础,而AT&T与其同时存在的Unix版本的影响就小得多。同时很多研究项目也是以BSD Unix为研究系 统,例如美国国防部的项目─ARPANET,ARPANET今天发展成为了Internet,而BSD Unix中最 先实现了TCP/IP,使Internet和Unix紧密结合在一起。</P>: A$ j" x4 O- O1 v3 p$ N2 b& f; A' \
8 a" z# B# P0 ~; `: d* E1 h < > 而AT&T的Unix系统实验室,同时也在不断改进他们的商用Unix版本,直到他们吸收了BSD Unix中已有的各种先进特性,并结合其本身的特点,推出了Unix System V版本之后,情况才有了改变。从 此以后,BSD Unix和Unix System V形成了当今Unix的两大主流,现代的Unix版本大部分都是 这两个版本的衍生产品。</P>
, \3 x x+ \5 o* t$ z
& M. Q2 R, l* J < > Unix的版本号表示方式比较复杂,各种不同的Unix版本有自己的版本标识方式,如最早AT&T开 发的内部Unix使用简单的顺序号来标识版本,从V 1到V 7。</P>2 M1 v" T, ^1 u0 @) D4 [4 F' j! R
. y4 d& K ]9 I% m( J < > BSD使用主版本加次版本的方法标识,如4.2BSD,4.3BSD,在原始版本的基础上还有派生版本,这些 版本通常有自己的名字,如4.3BSD-Net/1,4.3BSD-Net/2。</P>
_6 x* r: ^6 t' U: W 0 o; f- u! V$ K. f# W
< > AT&T使用罗马数字来标识他们的对外发布的Unix版本,用Release来表示次版本。如Sys tem V Release 4(简写为SVR4)标识AT&T的Unix System V的第四次发布的 版本。</P>% U+ h q8 F% C j2 j
7 A3 J/ d- e5 |* I < > 其他商业公司的Unix使用自己的版本标识,如Sun的Solaris 2.6,IBM的AIX 4.0等。 </P>9 E- Q; Y( Z) n
" g: V! ~ W1 l6 T- n& H/ M! \ < > 虽然AT&T的Unix System V也是非常优秀的Unix版本,但是BSD Unix在Un ix领域内的影响更大。AT&T的Unix系统实验室一直关注着BSD的发展,在1992年,Unix系统实 验室指控BSDI── 一家发行商业BSD Unix的公司,违反了AT&T的许可权,发布自己的Unix版 本,并进一步指控伯克利计算机系统研究组泄漏了Unix的商业机密(此时的4.3BSD中来自AT&T Un ix的代码已经不足10%)。这个官司影响了很多Unix厂商,使他们不得不从BSD Unix转向Unix Sys tem V,以避免法律问题。以至于当今大多数商业Unix版本都是基于Unix System V的。</P>5 W+ O" a+ q Y! M1 v4 s
~: `& M, Q6 T$ G2 A4 ?, v4 G' E
< > 这件有关Unix版权的案子直到Unix系统实验室被AT&T卖给了Novell公司后才得以解决, Novell不打算陷入这样的法律纷争中,因此就采用了比较友好的做法。伯克利的CSRG被允许自由发布BSD,但是 其中来自于AT&T的代码必须完全删除。因此CSRG就对他们最新的4.4BSD进行了修改,删除了那些来自 于AT&T的源代码,发布了4.4 BSD Lite版本(该系统是不完整的,尤其对于英特尔386体系的计 算机系统)。由于这个版本不存在法律问题,4.4BSD Lite成为了现代BSD系统的基础版本。</P>+ V5 C/ _2 W8 d* [ {
1 }1 y: \, x y4 l
< > Novell的比较友善的做法还不止对BSD,他把自己的Unix改名为Unixware, 而将Unix商 标赠送给X/Open── 一个由众多Unix厂家组成的联盟,这样这个联盟内的所有成员均可使用Unix商标。从此 之后,Unix不再是专有产品了。后来Novell由于自身的经营问题,又将Unixware卖给SCO公司。同时, 由于BSD系统已经十分成熟,作为对操作系统进行研究的目标已经达到,伯克利计算机系统研究组(CSRG)在发布了4 .4BSD-lite2之后就解散了,小组的科研人员有些进入了Unix商业公司,有些继续进行其他计算机领域的研究 。此时,严格意义上的Unix System V和BSD Unix都不复存在了,存在的只是他们的各种后续版本。</P>+ x. u6 h- x, x* c- A2 A
7 G! v6 J! B) }6 p9 x1 K# C" y < > 回顾Unix的发展,可以注意到Unix与其他商业操作系统的不同之处主要在于其开放性。在系统开始设计时就 考虑了各种不同使用者的需要,因而Unix被设计为具备很大可扩展性的系统。由于它的源码被分发给大学,从而在教育界 和学术界影响很大,进而影响到商业领域中。大学生和研究者为了科研目的或个人兴趣在Unix上进行各种开发,并且不计 较金钱利益,将这些源码公开,互相共享,这些行为极大丰富了Unix本身。很多计算机领域的科学家和技术人员遵循这些 方式,开发了数以千计的自由软件,包括FreeBSD在内。正因为如此,当今的Internet才如此丰富多采,与其 他商业网络不同,才能成为真正的全球网络。开放是Unix的灵魂,也是Internet的灵魂。</P>6 ]4 p: J6 j5 N, s$ s
- m2 i* m2 j: c0 C9 ~; }8 m < > 由于Unix的开放性,另一方面就使得存在多个不同的Unix版本。由于不同的Unix使用稍有差别的文件、 目录结构,提供略有不同的系统调用,因此对系统管理、以及为Unix开发可移植的应用程序带来一定的困难。例如Sys tem V和BSD的很多系统调用就存在不同。在Unix历史发展中也存在将Unix完全统一的努力,例如POSIX 规范就是各个Unix厂商经过协商,达成的Unix操作系统应该遵循的一套基本系统调用的规定。然而由于存在多个Un ix系统,各个厂商的意见很不统一,因此POSIX规范制定的很宽松,甚至Windows NT中也存在一个POSI X子系统。事实上,只要各个Unix之间协调发展,不故意为了商业目的而人为的制造系统差异,就能够保持各个Unix 之间不致具有太大的差别,保持Unix系统的多样性比只有唯一的一个Unix系统更能够促进技术的进步和发展,企图人 为的统一Unix的想法只能是某一个Unix厂商的一厢情愿。</P>( Q. s+ a, D; y9 R2 q N, r% j: k" m' c
. b1 t7 u. `7 S$ |' [: x" X" g
< > 有时为了避免法律纠纷,表明自己的程序代码是完全重写的,一个软件厂商会故意将一些函数声明的与其他系统的中 的同类函数不同,例如使用不同的函数参数或改变函数参数的顺序等。Unix System V中的很多系统调用与BS D Unix不同的部分原因也在于此。这些差异人为造成了不同系统的源程序的差异。</P>9 R5 f6 k; o3 l
7 f* q! L: r. I8 [2 l0 P
< > 7 a2 E+ S* [" n" r. w" i+ i5 _+ K
<B>FreeBSD的起源和发展</B>
* n" o/ n& G( \5 P% B% ]- O
. H5 q; ]: E3 G: ~: i/ P \2 O( | < >
7 \" ?2 _* d D. T/ C1 q
/ {3 O& \9 l1 q < ><B> </B>Unix的魅力不仅在于其功能的强大性,还在于其优秀的可扩展性,它提供了高级语言C和各种解释语言 可用于编写程序。利用这些系统提供的工具,使用者就能按照自己的需要和兴趣对原有系统进行扩展,满足相当一部分计算机 研究人员和使用者的需要,这样Unix就具备更强大的能力,完成各种复杂的任务。一旦用熟了Unix,体会到Unix 的强大功能,使用者就会希望一直使用它,而不是仅具备有限能力的其他计算机系统。企业也希望能在其可以承受的条件下, 利用Unix系统的强大处理能力。</P>
& I/ ]1 t' X p. m' Y/ o 3 m; c% M# Y/ P1 `; E" L
< > 由于Unix是多用户操作系统,作为系统的普通使用者只能使用系统提供的有限功能,而只有Unix系统管理员 才能充分利用其的全部能力。因而拥有自己的Unix系统也是一个普通Unix使用者的愿望。但是在那些时候,能够满足 这些愿望的计算机并不是每个人都能买得起的。昂贵的硬件,以及Unix逐渐商业化趋势,都使得拥有自己的Unix对大 多数人只是美好的愿望,而使用Unix的地方主要为一些要求较高的科研和大中型公司机构。</P>" M, o6 f. Q8 @2 v, l+ G6 e
; R" n( N: F: h6 B5 k < > 到80年代,个人计算机的出现,使得硬件的价格能被个人和小企业接受了,给拥有一个Unix系统的愿望带来了 一线曙光。但是使用8086芯片的个人计算机能力比较差,在其上不能实现真正正常工作的多用户系统。进入九十年代之后 ,英特尔公司推出的80386芯片使个人计算机的计算能力大大提高,在个人计算机上构建一个可以真正使用的Unix也 成为了可能。</P>
zan