《计算机英语译文和答案》_第1页
《计算机英语译文和答案》_第2页
《计算机英语译文和答案》_第3页
《计算机英语译文和答案》_第4页
《计算机英语译文和答案》_第5页
已阅读5页,还剩165页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《计算机英语》参考译文和练习答案

目录

第一单元3

课文A计算机概览3

第二单元9

课文A计算机硬件9

第三单元13

课文A操作系统13

第四单元20

课文A编程语言20

第五单元26

课文A计算机程序26

第六单元34

课文A分布式计算机系统34

第七单元41

课文A进入关系数据库的世界41

第八单元48

课文A电信与计算机48

第九单元53

课文A计算机网络53

第十单元58

课文A网络拓扑结构58

第十一单元64

课文A因特网是如何工作的?64

第十二单元70

课文A信息革命70

第十三单元76

课文A电子商务简介76

第十四单元82

课文A计算机安全82

第十五单元88

课文A比尔.盖茨文摘(1):88

比尔.盖茨文摘():91

练习答案94

第一单元

课文A计算机概览

一、引言

计算机是一种电子设备,它能接收一套指令或一个程序,然后通

过对数值数据进行运算或者对其他形式的信息进行处理来执行该程

序。

如果没有计算机的发展,现代的高科技世界是不可能产生的。在

整个社会,不同型号和不同大小的计算机被用于存储和处理各种数

据,从政府保密文件、银行交易到私人家庭账目。计算机通过自动化

技术开辟了制造业的新纪元,而且它们也增强了现代通信系统的性

能。在几乎每一个研究和应用技术领域,从构建宇宙模型到产生明天

的气象报告,计算机无不是必要的工具,并且它们的应用本身就开辟

了人们推测的新领域。数据库服务和计算机网络使各种各样的信息源

可供使用。同样的先进技术也使侵犯个人隐私和商业秘密成为可能。

计算机犯罪已经成为作为现代技术代价组成部分的许多风险之一。

二、历史

第一台加法机,数字计算机的先驱,是1642年由法国科学家、数

学家兼哲学家布莱斯.帕斯卡设计的。这个装置使用了一系列有10

个齿的轮子,每个齿代表从0到9的一个数字。轮子互相连接,从而

通过按照正确的齿数向前移动轮子,就可以将数字彼此相加。在17

世纪70年代,德国哲学家兼数学家戈特弗里德.威廉.莱布尼兹对

这台机器进行了改良,设计了一台也能做乘法的机器。

法国发明家约瑟夫-玛丽雅卡尔,在设计自动织机时,使用了

穿孔的薄木板来控制复杂图案的编织。在19世纪80年代期间,美国

统计学家赫尔曼.何勒里斯,想出了使用类似雅卡尔的木板那样的穿

孔卡片来处理数据的主义。通过使用一种将穿孔卡片从电触点上移过

的系统,他得以为1890年的美国人口普查汇编统计信息。

1、分析机

也是在19世纪,英国数学家兼发明家查尔斯.巴比奇,提出了现

代数字计算机的原理。他构想出旨在处理复杂数学题的若干机器,如

差分机。许多历史学家认为巴比奇及其合伙人,数学家奥古斯塔.埃

达.拜伦,是现代数字计算机的真正先驱。巴比奇的设计之一,分析

机,具有现代计算机的许多特征。它有一个以一叠穿孔卡片的形式存

在的输入流、一个储存数据的“仓库"、一个进行算术运算的“工厂”

和一个产生永久纪录的打印机。巴比奇未能将这个想法付诸实践,尽

管在那个时代它在技术上很可能是可行的。

Z早期的计算机

模拟计算机是在19世纪末期开始制造的。早期型号是靠转动的轴

和齿轮来进行计算的。用任何其他方法都难以解答的方程,可以用这

样的机器来求其近似数值。开尔文勋爵制造了一台机械潮汐预报器,

这实际上就是一台专用模拟计算机。第一次和第二次世界大战期间,

机械模拟计算系统以及后来的电动模拟计算系统,被用作潜艇上的鱼

雷航线预测器和飞机上的轰炸瞄准具的控制器。人们还设计了另一个

系统,用于预测密西西比河流域春天的洪水。

区电子计算机

第二次世界大战期间,以伦敦北面的布莱切利公园为工作地点的

一组科学家和数学家,制造了最早的全电子数字计算机之一:“巨人”。

到1943年12月,这个包含了1500个真空管的“巨人”开始运转了。

它被以艾伦.图灵为首的小组用于破译德国用恩尼格码加密的无线电

报,他们的尝试大部分是成功的。

除此而外,在美国,约翰.阿塔纳索夫和克利福德.贝里早在1939

年就在艾奥瓦州立学院制造了一台原型电子机。这台原型机和后来的

研究工作都是悄悄完成的,而且后来因1945年电子数字积分计算机

(ENIA)的研制而显得相形见细。ENIA2计算机被授予了专利。但

是,数十年后,在1973年,当该机被揭露吸收了在阿塔纳索夫一贝

里计算机中首次使用的原理后,这项专利被废除。

ENIA:计算机(见图氏1)含有18,000个真空管,具有每分钟

几百次的运算速度,但是最初程序是通过导线传送到处理器内的,必

须由人工更改。根据美籍匈牙利数学家约翰.冯.诺伊曼的想法,后

来制造的机器带有一个程序存储器。指令像数据一样存储在“存储器”

中,使计算机在执行过程中摆脱了纸带阅读器的速度限制,并使问题

在不给计算机重新接线的情况下得以解决。

20世纪50年代末,晶体管在计算机中的应用,标志着比真空管

机器更小、更快、更通用的逻辑元件的出现。由于晶体管使用的功率

小得多,寿命也长得多,仅这项发展本身就导致了被称之为第二代计

算机的改良机器的产生。元件变小了,元件的间距也变小了,而且系

统的制造成本也变得低得多。

4集成电路

20世纪60年代末,集成电路得到采用,从而有可能将许多晶体

管制作在一块硅衬底上,集体管之间以覆镀固定的导线相连接。集成

电路导致价格、尺寸和故障率的进一步降低。20世纪70年代中期,

随着大规模集成电路和后来的超大规模集成电路(微芯片)的采用,

成千上万个彼此相连的晶体管被蚀刻在一块硅衬底上,于是微处理器

成为现实。

那么,再回过头来看看现代计算机处理开关值的能力:20世纪70

年代的计算机一般一次能够处理8个开关值。也就是说,在每个循环

中,它们能处理8个二进制数字或比特的数据。8个比特为一组,称

为一个字节;每个字节包含着256个开与关(或0与1)的可能模式。

每个模式相当于一条指令、一条指令的一部分或者一个特定的数据类

型,如一个数字、一个字符或者一个图形符号。例如,11010010这

个模式可能是二进制数据一一在这种情况下,代表210这个十进制数

字一一或者它可能是一条指令,告诉计算机将存储在其交换设备中的

数据与存储在存储芯片某个位置的数据进行比较。

一次能处理1632和64比特数据的处理器的研制,提高了计算

机的速度。一台计算机能够处理的全部可识别模式一一操作总清单一

一被称为其指令集。随着现代数字计算机的不断发展,这两个因素一

-能够同时处理的比特数和指令集的大小一一在继续增长。

三、硬件

不论尺寸大小,现代数字计算机在概念上都是类似的。然而,根

据成本与性能,它们可分为几类:个人计算机或微型计算机,一种成

本相当低的机器,通常只有桌面大小(尽管“膝上型计算机”小到能

够放入公文包,而“掌上型计算机”能够放入口袋);工作站,一种

具有增强的图形与通信能力、从而使其对于办公室工作特别有用的微

型计算机;小型计算机,一般就个人使用而言太昂贵,其性能适合于

工商企业、学校或实验室;以及大型机,一种大型的昂贵机器,具有

满足大规模工商企业、政府部门、科研机构或者诸如此类机构需要的

能力(其中体积最大、速度最快的称为巨型计算机)。

一台数字计算机不是单一的机器。确切地说,它是由5个不同的

要素组成的系统:(1)中央处理器;(2)输入设备;(3)存储设备;

(④输出设备;以及(5)被称作总线的通信网络,它将系统的所有

要素连接起来并将系统与外界连接起来。

四、编程

一个程序就是一系列指令,告诉计算机硬件对数据执行什么样的

操作。程序可以内嵌在硬件本身里,或以软件的形式独立存在。在一

些专业或“专用”计算机中,操作指令被嵌入其电路里;常见的例子

有计算器、手表、汽车发动机和微波炉中的微型计算机。另一方面,

通用计算机尽管含有一些内嵌的程序(在只读存储器中)或者指令(在

处理器芯片中),但依靠外部程序来执行有用的任务。计算机一旦被

编程,就只能做在任何特定时间控制它的软件所允许它做的事情。广

泛使用的软件包括一系列各种各样的应用程序一一告诉计算机如何

执行各种任务的指令。

五、未来的发展

计算机发展的一个持续不断的趋势是微小型化,亦即将更多的电

路元件压缩在越来越小的芯片空间上的努力。研究人员也在设法利用

超导性来提高电路的功能速度。超导性是在超低温条件下在某些材料

中观察到的电阻减少现象。

计算机发展的另一个趋势是“第五代”计算机的研制工作,亦即

研制可以解决复杂问题而且其解决方法或许最终会与“创造性的”这

一形容名副其实的计算机,理想的目标是真正的人工智能。正在积极

探索的一条道路是并行处理计算,亦即利用许多芯片来同时执行数个

不同的任务。一种重要的并行处理方法是模仿神经系统结构的神经网

络。另一个持续不断的趋势是计算机联网的增加。计算机联网现在使

用由卫星和电缆链路构成的世界范围的数据通信系统,来将全球的计

算机连在一起。此外,大量的研究工作还投入在探索“光”计算机的

可能性上一一这种硬件处理的不是电脉冲而是快得多的光脉冲。

第二单元

课文A计算机硬件

一、引言

计算机硬件是计算机运行所需要的设备,由可进行物理处理的元

件组成。这些元件的功能一般分为3个主要类别:输入、输出和存储。

这些类别的元件与微处理器相连接,特别是与计算机的中央处理器相

连接,而后者是通过被称之为线路或电路的总线来提供计算能力和对

计算机进行控制的电子电路。

另一方面,软件是计算机用来处理数据的一套指令,如字处理程

序或者视频游戏。这些程序通常被存储起来,并由计算机硬件调入和

调出中央处理器。软件也控制着硬件如何使用;例如,如何从存储设

备中检索信息。输入与输出硬件的交互作用是由基本输入输出系统

(BK为软件控制的。

尽管微处理器在技术上仍被认为是硬件,其部分功能也与计算机

软件有关系。既然微处理器同时具有硬件与软件方面的特征,它们因

此经常被称作固件。

二、输入硬件

输入硬件由给计算机提供信息和指令的外部设备一一亦即计算机

中央处理器以外的元件一一组成。光笔是具有光敏端头的输入笔,用

来在计算机屏幕上直接写画,或者通过按光笔上的夹子或用光笔接触

屏幕来在屏幕上选择信息。这种笔含有光传感器,能够识别屏幕上笔

经过的部分。鼠标是为一只手抓握而设计的指示设备。它在底部有一

个检测装置(通常是一个圆球),使用户通过在一个平面上移动鼠标

能够控制屏幕上指针或光标的运动。当鼠标滑过平面的时候,光标随

着在屏幕上移动。要在屏幕上选择项目或命令,用户就点击鼠标上的

按钮。操纵杆是由一根杆子组成的指示设备,该杆以向多个方向移动

来操纵计算机屏幕上的光标或者其他图形对象。键盘是一个像打字机

的设备,它使用户得以向计算机键入文本和命令。有些键盘有特殊功

能键或集成的指示设备,如轨迹球或者可以让用户通过手指的移动来

移动屏幕上光标的触敏区。

光扫描仪利用光感应设备将图片或文本等形式的图像转换成计算

机能够处理的电子信号。例如,一张照片能够被扫入一台计算机,然

后包括在该计算机建立的文本文件中。最常见的两种扫描仪类型是平

板式扫描仪和手持式扫描仪,前者类似一台办公复印机,后者用手动

的方式从要处理的图像上扫过。麦克风是将声音转换成可被计算机存

储、处理和回放的信号的设备。语音识别模块是将说的话转换成计算

机能够识别和处理的信号的设备。

调制解调器代表调制器一解调器,是将计算机与电话线连接、允

许信息传给或接自另一台计算机的设备。每台发送或接收信息的计算

机都必须与调制解调器相连接。计算机发送的信息由调制解调器转换

成音频信号,然后通过电话线传送到接收调制解调器上,由其将信号

转换成接收计算机能够理解的信息。

三、输出硬件

输出硬件由将信息从计算机中央处理器传给计算机用户的外部设

备构成。视频显示器或屏幕将计算机生成的信息转换成可视信息。显

示器一般有两种形式:阴极射线管视频屏幕和液晶显示视频屏幕。基

于阴极射线管的屏幕或监视器看起来就像一台电视机。从中央处理器

输出的信息,使用电子束显示出来,其过程是电子束扫描荧光屏,而

荧光屏则发出光并产生图像。基于液晶显示器的屏幕将可视信息显示

在比基于阴极射线管的视频监视器更平、更小的屏幕上。液晶显示器

常常用于膝上型计算机。

打印机将计算机输出的文本和图像打印在纸上。点阵打印机使用

细小的金属丝打击色带,从而形成字符。激光打印机使用光束在磁鼓

上画图像,然后由磁鼓吸起被称之为色粉的微小黑粒。色粉熔凝到纸

上,形成图像。喷墨打印机将小墨滴喷射到纸上,形成字符和图像。

四、存储硬件

存储硬件为计算机检索提供信息和程序的永久性存储。两种主要

的存储设备是磁盘驱动器和存储器。磁盘驱动器有几种类型:硬盘、

软盘、磁光盘和光盘。硬盘驱动器将信息存储在盘中嵌入的磁性颗粒

中。硬盘驱动器通常是计算机的固定部分,能存储大量的信息并对其

进行快速的检索。软盘驱动器也将信息存储在磁性颗粒中,但这些颗

粒是嵌入在可移动的盘中,而这些盘既可能是软的也可能是硬的。软

盘比硬盘存储的信息少,检索该信息的速度也慢得多。磁光盘驱动器

将信息存储在对激光和磁场都敏感的可移动盘上。它们可存储的信息

通常与硬盘一样多,但检索速度稍微慢一点。由反射材料制成的光盘,

其表面烧蚀出凹陷区。光驱(8KM就是将信息存储于此。存储在

光盘上的信息不能擦除或用新信息改写。它们能够存储和硬盘差不多

的信息量,但信息检索速度比其慢。

存储器是指存储信息供中央处理器快速检索的计算机芯片。随机

访问存储器(RW用来存储操作计算机程序的信息和指令。通常,

程序由磁盘驱动器的存储区调到随机访问存储器中。随机访问存储器

也称作易失性存储器,因为当计算机的电源关闭时,计算机芯片中的

信息随着丢失。只读存储器(RM包含必须永久可供计算机操作使

用的关键信息和软件,如从开机到关机一直指挥计算机的运行的操作

系统。只读存储器称之为非易失性存储器,因为当计算机的电源关闭

时,存储芯片中的信息不会丢失。

有些设备有不止一种用途。例如,软盘也可用作输入设备,如果

它们含有计算机用户要使用和处理的信息的话。此外,它们也可用作

输出设备,如果用户想将计算结果存储在它们上面的话。

五、硬件的连接

要想运转,硬件需要物理连接,使元件之间能够交流和相互作用。

总线提供了一种常见的互连系统,它由一组导线或电路组成,在计算

机的内部组成部分之间协调和移动信息。计算机总线由两条通道组

成:一条由中央处理器用来给数据定位,叫做地址总线;另一条用来

将该数据送往那个地址,叫做数据总线。总线可用两个特征来描述:

一次可处理的信息量,称为总线宽度,和传送这些数据的速度。

串行连接是一根或一组导线,用于将信息从中央处理器传送到外

部设备,如鼠标、键盘、调制解调器、扫描仪和一些类型的打印机。

这种连接一次只能传送一段数据,因此很慢。使用串行连接的好处在

于它能提供远距离的有效连接。

并行连接使用多组导线来同时传送数个信息块。大多数扫描仪和

打印机使用这种连接方式。并行连接比串行连接快得多,但是它在中

央处理器和外部设备之间的传输距离仅限于不到3米(10英尺)。

第三单元

课文A操作系统

一、引言

在计算机科学中,操作系统(出是控制计算机的基本软件。它

具有3个主要功能:协调与操作计算机硬件,如计算机存储器、打印

机、磁盘、键盘、鼠标和监视器;在各种存储介质上编排文件,如软

盘、硬盘、光盘和磁带;以及处理硬件错误和数据丢失。

二、操作系统是怎样工作的

操作系统控制不同的计算机进程,如运行一个电子表格程序或访

问计算机存储器里的信息。一个重要的进程是解释使用户得以与计算

机进行通信的命令。有些命令解释器是面向文本的,要求将命令键入。

另一些命令解释器是面向图形的,允许用户通过指向并点击图标,即

屏幕上代表具体命令的图片,来进行通信。初学者一般觉得面向图形

的解释器使用起来容易一些,但是许多有经验的计算机用户更喜欢使

用面向文本的命令解释器,因为它们的功能更强大一些。

操作系统或者是单一任务处理的,或者是多任务处理的。早期的

单一任务处理操作系统每次仅能运行一个进程。例如,当计算机打印

文件时,在打印结束之前,计算机不能开始另一个进程或响应新的命

令。

所有现代操作系统都是多任务处理的,可以同时运行数个进程。

在大多数计算机中,只有一个中央处理器(CH)(计算机的计算与控

制单元),因此多任务处理操作系统造成一种假象,即数个进程同时

在中央处理器上运行。用来造成这种假象的最常见办法是时间片多任

务处理,依靠这种方法每个进程都单独运行固定的一段时间。如果进

程在分配的时间内没有完成,它即被暂停,而另一个进程开始运行。

进程之间的这种切换被称为上下文转换。操作系统进行“簿记”,保

存被暂停进程的状态。它还有一种确定下一步运行哪个进程的机制,

称之为调度程序。调度程序快速运行短进程,以尽可能缩短可察觉的

延迟。由于用户对时间的感觉要比计算机的处理速度慢得多,因此多

个进程看似在同时运行。

操作系统可以使用虚拟内存,以运行所需主存空间大于实际可用

主存空间的进程。使用这种技术,硬盘驱动器上的空间被用来模拟所

需的额外内存。然而,访问硬盘驱动器比访问主存耗时多,因此计算

机运行起来很慢。

三、当前的操作系统

个人计算机常用的操作系统有UNIXNkcintoshOSNMCK

以及Windows,

1、INK

在计算机科学中,LNIX是一种多用户、多任务处理操作系统,最

初由肯.汤普森和丹尼斯.里奇于1969年在美国电话电报公司的贝

尔实验室里开发,用于小型计算机。3IX以各种形式和实现方式存

在;这其中包括加利福尼亚大学伯克利分校开发的版本(称为“伯克

利软件发行中心版本”)和美国电话电报公司发行的版本一一其最新

版本是“美国电话电报公司系统V。3IX被认为是一种功能强大的

操作系统。因为是用C语言编写的,它比其他操作系统更具有可移植

性一一受机器限制比较少。LNIX还有几个相关的系统形式,包括:

AIX由1取公司改写的INK版本(在基于精简指令集计算机的工作

站上运行);8%(用于苹果计算机公司的麦金托什个人计算机上的

图形版本);以及岫ch(一种重写的但基本上与UNIX兼容的操作系

统,用于gCT计算机)。

UW勺流行,在很大程度上是由于被称作因特网的计算机互联网

络的发展,因为因特网使用的软件最初是为运行LNIX的计算机设计

的。3IX的变种包括SunOS(由太阳微系统股份有限公司发布)、Xenix

(由微软公司发布)和Linux,UNIX及其克隆产品支持多任务处理和

多个用户。其文件系统提供了一种编排磁盘文件的简便方法,并允许

用户保护其文件而防范其他用户。然而,3IX中的命令不很直观,

要掌握这个系统比较困难。

归006是“微软磁盘操作系统”的首字母缩拚词。在计算机科学

中,NMOS同其他操作系统一样,管理下面一类的操作:磁盘输入

与输出、视频支持、键盘控制以及与程序执行和文件维护有关的许多

内部功能。NMOS是带有命令行界面的单个任务处理、单用户操作

系统。

工"2

32或称“第二代操作系统”,是20世纪80年代中期由1助公

司和微软公司为个人计算机开发的一种操作系统。1987年末,0^

推出时,最常见的个人计算机是运行NM0S的IBM兼容机和由苹果

计算机公司生产、运行其麦金托什个人计算机操作系统(皿cCQ的

计算机。麦金托什个人计算机操作系统包含多任务处理功能,一个使

计算机能够同时运行数个应用程序的特征。在一个计算机网络中,多

任务处理允许不同计算机上的数个用户同时访问同一个应用程序或

数据集。"2是为IBV[兼容个人计算机设计、允许多任务处理的第

一个操作系统。

8,的第一个版本,L0版本,是面向文本的,没有允许用户通

过使用计算机鼠标等指向与点击输入设备来输入命令的图形用户界

面(GUI)。一年后,IBM和微软发布了054的1.1版本,它包括一

个称为表示管理程序的图形用户界面。表示管理程序界面包含图标,

亦即屏幕上用户可以用鼠标点击来输入指令的图片或文字。0^的

L1版本也允许用户打开多个窗口(窗口是屏幕上的一个部分,每个

窗口包含一个不同的文件或程序),并包括用户可以用鼠标点击来进

行选择的下拉式命令清单。

1991年,在微软发布了Windows软件一一在NM0S上运行的多

任务处理环境一一之后,1取[和微软结束了它们在05,上的合作。

1992年,IHVI发布了8,的20版本。该版本运行微软的Windows

程序,并可以执行鼠£操作下的多任务处理。它也包含面向对象的编

程环境,允许软件设计者使用高级的面向对象编程语言编程。

5,后来的版本增强了性能和多媒体能力。1994年,I取宣布,

自叼推出后已售出5百多万份。同一年,隹出的一个新

版本,称为C^Wrp,其特色为:改善的性能、增强的多媒体能力、

一系列的集成应用程序和方便的因特网接入。1皿公司继续对叼

Wrap进行升级和扩充。

4Windows

在计算机科学中,Windows是由微软公司出售的一种个人计算机

操作系统,它允许用户通过指示和点击设备,譬如鼠标,来代替键盘

输入命令。Windows操作系统为用户提供了一个图形用户界面,允许

用户操作计算机屏幕上称之为图标的图片来发出命令。Windows是世

界上使用最广泛的操作系统。它是微软的磁盘操作系统(曲小的

扩充和替代品。

Windows图形用户界面旨在为用户提供一个自然或直观的工作环

境。使用Windows,用户可以用鼠标在计算机屏幕上移动光标。通过

将光标指向图标并点击鼠标上的按钮,用户可以给计算机发出命令,

让其执行一个动作,如启动一个程序、访问一个数据文件或复制一个

数据文件。其他命令可以通过下拉或点击式菜单项来访问。计算机将

用户正在工作的活动区域显示为计算机屏幕上的窗口。当前正在使用

的活动窗口可以与先前使用的、仍然在屏幕上打开着的其他活动窗口

重叠。这种类型的图形用户界面被说成是包含了WDVP特征:窗口、

图标、菜单和指点设备(如鼠标)。

施乐公司帕洛阿尔托研究中心的计算机科学家,在20世纪70年

代初创造了图形用户界面这个概念,但是这个创新没有马上取得商业

上的成功。1983年,苹果计算机公司在其Lisa计算机上采用了一种

用户图形界面。这种用户图形界面在其1984年推出的麦金托什个人

计算机中得到升级和改善。

微软于1983年开始开发用户图形界面,作为其NMDS操作系统

的扩展。微软的Windows1.0版本在1985年首次出现。在这个版本

中,窗口是平铺式的,也就是互相挨着,而不是重叠显示。1987年

推出的Windows20版本,在设计上类似于的表示管理程

序一一另一种用户图形界面操作系统。Windows2.0版本具有重叠窗

口的特征。1990年推出的功能更加强大的Windows3.0版本和后来

的3.1与3.11版本,迅速使Windows成为个人计算机操作系统的市

场领头商品,其部分原因在于它被预先捆绑在新的个人计算机上。它

还成为受欢迎的软件开发平台。

1993年,微软推出了WindowsNT(新技术)。WindowsNI操作系

统提供32位的多任务处理,使计算机具有了高速地同时或并行运行

数个程序的能力。这种操作系统与IE噌勺05”展开竞争,争做许多

企业的密集型高端联网运算环境的平台。

1995年,微软发布了用于个人计算机的一个Windows新版本,称

作Windows95。Windows95与以前的版本相比,用户图形界面造型

更加优美,也更加简单。它提供了32位进程处理、高效的多任务处

理、网络连接和因特网接入。

几乎没有计算机用户直接运行或N2他们更愿意选择

INW勺各种版本或者带有图形界面的窗口型系统,如Windows98或

NfecintoshC^因为它们使计算机技术更容易利用。然而,与面向命

令的操作系统相比,图形系统一般具有需要更多硬件的缺点,如速度

更快的中央处理器、更多的内存和更高质量的监视器。

五、未来的技术

操作系统在不断地演进。最近开发的一种称之为分布式操作系统

的操作系统类型,是为共享硬盘驱动器等资源的一批连接在一起、但

相互独立的计算机设计的。在分布式操作系统中,一个进程可以在网

络中的任何一台计算机(可能是一台空闲的计算机)上运行,以加快

该进程的执行。操作系统的所有基本功能一一如维护文件系统、确保

合理的行为以及在发生部分故障的情况下恢复数据一一在分布式系

统中变得比较复杂。

用语音或手写的方法代替键盘输入的研究工作也在进行中。目前,

这些类型的输入还不很准确,因为人们在词的发音和书写上有很大的

不同,使计算机难以识别不同用户的相同输入。然而,这个领域取得

的发展已经带来了能够识别由各种不同的人所说的少数单词的系统。

另外,经过训练能够识别一个人的手迹的软件也已经开发出来。

第四单元

课文A编程语言

一、引言

在计算机科学中,编程语言是用来编写可被计算机运行的一系列

指令(计算机程序)的人工语言。与英语等自然语言相类似,编程语

言具有词汇、语法和句法。然而,自然语言不适合计算机编程,因为

它们能引起歧义,也就是说它们的词汇和语法结构可以用多种方式进

行解释。用于计算编程的语言必须具有简单的逻辑结构,而且它们的

语法、拼写和标点符号的规则必须精确。

编程语言在复杂性和通用程度上大相径庭。有些编程语言是为了

处理特定类型的计算问题或为了用于特定型号的计算机系统而编写

的。例如,KRIR由和3CL等编程语言是为解决某些普遍的编程问

题类型而编写的一一KRIR封为了科学领域的应用,而am为了商

业领域的应用。尽管这些语言旨在处理特定类型的计算机问题,但是

它们具有很高的可移植性,也就是说它们可以用来为多种类型的计算

机编程。其他的语言,譬如机器语言,是为一种特定型号的计算机系

统,甚至是一台特定的计算机,在某些研究领域使用而编写的。最常

用的编程语言具有很高的可移植性,可以用于有效地解决不同类型的

计算问题。像GRA92AL和BASIC这样的语言就属于这一范畴。

二、语言类型

编程语言可划分为低级语言和高级语言。低级编程语言或机器语

言,是编程语言中最基础的类型,能被计算机直接理解。机器语言的

区别取决于制造商和计算机的型号。高级语言是在计算机能够理解和

处理之前必须首先翻译成机器语言的编程语言。GGHIW2L和

KRIR小都是高级语言的例子。汇编语言是中级语言,非常接近于机

器语言,没有其他高级语言所表现出的语言复杂程度,但仍然得翻译

成机器语言。

1、机器语言

在机器语言中,指令被写成计算机能够直接理解的被称之为比特

的1和0的序列。机器语言中的一条指令通常告诉计算机4件事情:

(1)到计算机主存储器(随机访问存储器)的哪个位置去找一或两

个数字或者简单的数据段;(2)要执行的一个简单操作,例如将两个

数字加起来;(3)将这个简单操作的结果存放在主存储器的什么位置;

以及(④到哪里找要执行的下一条指令。虽然所有的可执行程序最

终都是以机器语言的形式被计算机读取,但是它们并非都是用机器语

言编写的。直接用机器语言编程极端困难,因为指令是1和0的序列。

机器语言中的一条典型的指令可能是1001011001011,意思是将存

储寄存器A|的内容加到存储寄存器B的内容中。

2.高级语言

高级语言是利用人类语言中的词和句法的一套相对复杂的语句。

它们比汇编语言和机器语言更类似于正常的人类语言,因此用来编写

复杂的程序更容易。这些编程语言允许更快地开发更庞大和更复杂的

程序。然而,在计算机能够理解之前,高级语言必须被称之为编译器

的另外一种程序翻译成机器语言。因为这个原因,与用汇编语言编写

的程序比较起来,用高级语言编写的程序可能运行的时间更长,占用

的内存更多。

次汇编语言

计算机编程人员使用汇编语言使机器语言程序编写起来更简单一

些。在汇编语言中,每条语句大致对应一条机器语言指令。汇编语言

的语句是借助易于记忆的命令编写的。在典型的汇编语言的语句中,

把存储寄存器A(的内容加到存储寄存器B的内容中这一命令,可以写

成的44汇编语言与机器语言具有某些共同特征。例如,对特

定的比特进行操作,用汇编语言和机器语言都是可行的。当尽量减少

程序的运行时间很重要时,程序员就使用汇编语言,因为从汇编语言

到机器语言的翻译相对简单。当计算机的某个部分必须被直接控制

时,如监视器上的单个点或者流向打印机的单个字符,这时也使用汇

编语言O

三、高级语言的分类

高级语言通常分为面向过程的、函数式的、面向对象的或逻辑的

语言。当今最常见的高级语言是面向过程的语言。在这种语言中,执

行某个完整功能的一个或多个相关的语句块组成一个程序模块或过

程,而且被给予诸如“过程A的名称。如果在程序的其他地方需要

同样的操作序列,可以使用一个简单的语句调回这个过程。实质上,

一个过程就是一个小型程序。一个大程序可以通过将执行不同任务的

过程组合在一起而构成。过程语言使程序变得比较短,而且更易于被

计算机读取,但是要求程序员将每个过程都设计得足够通用,能用手

不同的情况。

函数式语言像对待数学函数一样对待过程,并允许像处理程序中

的任何其他数据一样处理它们。这就使程序构造在更高、更严密的水

平上得以实现。函数式语言也允许变量一一在程序运行过程中可以被

用户指定和更改的数据符号一一只被赋值一次。这样,通过减少对语

句执行的确切顺序给予关注的必要性,就简化了编程,因为一个变量

没有必要每次在一个程序语句中用到,都重新定义或重新赋值。函数

式语言的许多观点已经成为许多现代过程语言的关键部分。

面向对象的语言是函数式语言的发展结果。在面向对象的语言中,

用来编写程序的代码和程序处理的数据,组合成叫做对象的单元。对

象进一步组合成类,而类则定义对象必须具有的属性。类的一个简单

例子就是书这个类。这个类中的对象可能是小说和短篇小说。对象还

有某些与其相关的功能,称为方法。计算机通过使用对象的某种方法

来使用这个对象。方法对对象中的数据执行某个操作,然后将值返回

给计算机。对象的类也可更进一步组合成层,而在层中一个类的对象

可继承另一个类的方法。面向对象的语言中所提供的这种结构,使面

向对象的语言对于复杂的编程任务非常有用。

逻辑语言将逻辑用作其数学基础。一个逻辑程序由一系列的事实

与“如果……则”规则组成,来具体说明一系列事实如何可以从其他

实事中推断出来,例如:

如果X语句为真,则Y语句为假。

在这样一个程序的执行过程中,一条输入语句可以按照逻辑从程

序中的其他语句推断出来。许多人工智能程序使用这种语言编写。

四、语言的结构与成分

编程语言使用特定类型的语句或指令,来给程序提供功能结构。

程序中的一条语句是表达一个简单意思的基本句子,其目的是给计算

机一条基本指令。语句对允许的数据类型、数据如何处理以及过程和

函数的工作方式进行定义。程序员利用语句来操作编程语言的常见成

分,如变量和宏(程序中的小型程序)。

数据声明语句给予称为变量的程序元素以名称和属性。变量在程

序中可以赋予不同的值。变量可以具有的属性被称作类型,它们包括:

变量中可能存储什么样的值,值中使用何种程度的数值精度,以及一

个变量可以如何以有组织结构的方式一一如以表或数组的形式一一

代表一组比较简单的值等等。在许多编程语言中,一种关键的数据类

型是指示字。指示字变量本身没有值;相反,它们含有计算机可以用

来查找某个其他变量的信息一一也就是说,它们指向另一个变量。

表达式是语句的一段,描述要对一些程序变量执行的一系列运算,

如却作其中xY和Z为变量,运算方法为加和除。赋值语句给

一个变量赋予得自某个表达式的值,而条件语句则指定要被测试、然

后用于选择接下来应该执行的其他语句的表达式。

过程与函数语句将某些代码块定义为以后可在程序中返回的进程

或函数。这些语句也规定程序员可以选择的变量与参数种类,以及当

一个表达式使用过程或函数时代码将返回的值的类型。许多编程语言

也容许叫做宏的小型翻译程序。宏把使用程序员定义的语言结构编写

的代码段翻译成编程语言可以理解的语句。

五、历史

编程语言几乎可以追溯到20世纪40年代数字计算机发明之时。

最早的汇编语言,随着商业计算机的推出,出现于20世纪50年代末。

最早的过程语言是在20世纪50年代末到20世纪60年代初开发的:

RR*语言由约翰.巴克斯创造,然后由格雷斯.霍珀创造了GJEOL

语言。第一种函数式语言是LISE由约翰.麦卡锡于20世纪50年

代末编写。这3种语言今天仍在广泛使用,但经历过大量修改。

20世纪60年代末,出现了最早的面向对象的语言,如SIMIAN

言。逻辑语言在20世纪70年代中期随着ROSG语言的推出而变得

广为人知;FKIOG语言是一种用于编写人工智能软件的语言。在20

世纪70年代,过程语言继续发展,出现了ALTELBASIC勖SCAL

C和Ada等语言。SWWK语言是一种具有高度影响力的面向对象

的语言,它导致了面向对象的语言与过程语言在G书口更近期的JAVA

语言中的结合。尽管纯粹的逻辑语言受欢迎的程度有所下降,但其变

体以现代数据库所使用的关系语言一一如结构化查询语言一一的形

式,变得至关重要。

第五单元

课文A计算机程序

一、引言

计算机程序是指导计算机执行某个功能或功能组合的一套指令。

要使指令得到执行,计算机必须执行程序,也就是说,计算机要读取

程序,然后按准确的顺序实施程序中编码的步骤,直至程序结束。一

个程序可多次执行,而且每次用户输给计算机的选项和数据不同,就

有可能得到不同的结果。

程序可分为两大类:应用程序和操作系统。应用程序直接为用户

执行某项功能,如字处理或玩游戏。操作系统管理计算机和与之相连

的各种资源和设备,如随机访问存储器、硬盘驱动器、监视器、键盘、

打印机和调制解调器,以便使其他程序可以使用它们。操作系统的例

子包括:DOSWindows95.0^和UNIX

二、程序开发

软件设计者通过特殊的应用程序来开发新程序,这些应用程序常

被称作实用程序或开发程序。程序员使用称作文本编辑器的另一种程

序,来以称作编程语言的特殊标记编写新程序。使用文本编辑器,程

序员创建一个文本文件,这个文本文件是一个有序指令表,也称为程

序源文件。构成程序源文件的单个指令被称为源代码。在这个时候,

一种特殊的应用程序将源代码翻译成机器语言或目标代码一一操作

系统将认作真程序并能够执行的一种格式。

将源代码翻译成目标代码的应用程序有3种:编译器、解释器和

汇编程序。这3种应用程序在不同类型的编程语言上执行不同的操

作,但是它们都起到将编程语言翻译成机器语言的相同目的。

编译器将使用KRU^NC和Pascal等高级编程语言编写的文本

文件一次性从源代码翻译成目标代码。这不同于外SIC等解释执行的

语言所采取的方式,在解释执行的语言中程序是随着每条指令的执行

而逐个语句地翻译成目标代码的。解释执行的语言的优点是,它们可

以立即开始执行程序,而不需要等到所有的源代码都得到编译。对程

序的更改也可以相当快地作出,而无需等到重新编译整个程序。解释

执行的语言的缺点是,它们执行起来慢,因为每次运行程序,都必须

对整个程序一次一条指令地翻译。另一方面,编译执行的语言只编译

一次,因此计算机执行起来要比解释执行的语言快得多。由于这个原

因,编译执行的语言更常使用,而且在专业和科学领域几乎总是得到

采用。

另一种翻译器是汇编程序,它被用于以汇编语言编写的程序或程

序组成部分。汇编语言也是一种编程语言,但它比其他类型的高级语

言更接近于机器语言。在汇编语言中,一条语句通常可以翻译成机器

语言的一条指令。今天,汇编语言很少用来编写整个程序,而是最经

常地采用于程序员需要直接控制计算机某个方面功能的场合。

程序经常被编写作一套较小的程序段,每段代表整个应用程序的

某个方面。各段独立编译之后,一种被称为连接程序的程序将所有编

译好的程序段组合成一个可以执行的完整程序。

程序很少有第一次能够正确运行的,所以一种被称为调试程序的

程序常被用来帮助查找被称为程序错误的问题。调试程序通常在运行

的程序中检测到一个事件,并向程序员指出事件在程序代码中的起

源。

最近出现的编程系统,如Java,采取多种方法相结合的方式创建

和执行程序。编译器取来Java源程序,并将其翻译成中间形式。这

样的中间程序随后通过因特网传送给计算机,而这些计算机里的解释

程序接下来将中间程序作为应用程序来执行。

三、程序元素

大多数程序只是由少数几种步骤构成,这些步骤在整个程序中在

不同的上下文和以不同的组合方式多次重复。最常见的步骤执行某种

计算,然后按照程序员指定的顺序,进入程序的下一个步骤。

程序经常需要多次重复不长的一系列步骤,例如,浏览游戏得分

表,从中找出最高得分。这种重复的代码序列称为循环。

计算机所具有的使其如此有用的能力之一,就是它们能够作出条

件判定,并根据正在处理的数据的值执行不同的指令。if-the”Ise

(如果一则一否则)语句通过测试某个数据段,然后根据结果从两个

指令序列中选出一个,来执行这个功能。这些选择对象中的指令之一

可能是一个如七。语句,用以指引计算机从程序的另一个部分选择下

一条指令。例如,一个程序可能比较两个数,并依据比较的结果而分

支到程序的另一个部分:

Ifxisgreaterthany

then

gotoinstruction#10

elsecontinue

程序经常不止一次地使用特定的一系列步骤。这样的一系列步骤

可以组合成一个子例程,而子例程根据需要可在主程序的不同部分进

行调用或访问。每次调用一个子例程,计算机都会记住它自己在该调

用发生时处在程序的那个位置,以便在运行完该子例程后还能够回到

那里。在每次调用之前,程序可以指定子例程使用不同的数据,从而

做到一个通用性很强的代码段只编写一次,而被以多种方式使用。

大多数程序使用几种不同的子例程。其中最常用的是函数、过程、

库程序、系统程序以及设备驱动程序。函数是一种短子例程,用来计

算某个值,如角的计算,而该值计算机仅用一条基本指令无法计算。

过程执行的是复杂一些的功能,如给一组名称排序。库程序是为许多

不同的程序使用而编写的子例程。系统程序和库程序相似,但实际上

用于操作系统。它们为应用程序提供某种服务,如打印一行文字。设

备驱动程序是一种系统程序,它们加到操作系统中,以使计算机能够

与扫描仪、调制解调器或打印机等新设备进行通信。设备驱动程序常

常具有可以直接作为应用程序执行的特征。这样就使用户得以直接控

制该设备。这一点很有用,例如,在彩色打印机更换墨盒后,需要重

新调整以达到最佳打印质量的情况下。

四、程序功能

现代计算机通常将程序存储在计算机可以随机访问的某种形式的

磁性存储介质上,如固定放在计算机中的硬盘或者便携式的软盘。这

些磁盘上被称为目录的额外信息,指明盘上各种程序的名称、它们写

入盘中的时间以及它们在磁盘介质上的开始位置。当用户命令计算机

执行一个特定应用程序时,操作系统就浏览这些目录,找到程序,并

将一个副本读入随机存储器。操作系统然后命令中央处理器在程序的

起始位置开始执行指令。程序起始位置的指令为计算机处理信息作好

准备,其方法是在随机存储器中找到闲置内存位置来容纳工作数据,

从盘中取回用户指出的标准方式选项和默认值的副本,并在监视器上

绘制初始显示。

应用程序通过调用系统程序而对用户输入的任何信息都要求一个

副本。操作系统将如此输入的任何数据转换成标准的内部形式。应用

程序然后使用该信息决定下一步干什么一一例如,执行某项期望的处

理功能一一如重新定义一页文本的格式,或者从盘上的另一个文件获

取某些额外信息。两种情况无论是哪一种,都要调用其他系统程序,

以事实上完成结果的显示或对盘上文件的访问。

运行结束或接到退出的提示时,应用程序进行进一步的系统调用,

以确保所有需要保存的数据已写回磁盘。然后,应用程序向操作系统

进行最后一次系统调用,指明它已运行结束。操作系统接下来释放随

机存储器和该应用程序使用的任何设备,并等待用户的命令,以开始

运行另一个程序。

五、历史

人们用程序的形式存储一系列指令已经有几个世纪了。18世纪的

音乐盒和19世纪末与20世纪初的自动钢琴,就可以播放音乐程序。

这些程序以一系列金属针或纸孔的形式存储,每一行(针或孔)表示

何时演奏一个音符,而针或孔则表明此时演奏什么音符。19世纪初,

随着法国发明家约瑟夫一玛丽.雅卡尔的由穿孔卡片控制的织机的发

明,对物理设备更精巧的控制变得常见了。在编织特定图案的过程中,

织机的各个部分得进行机械定位。为了使这个过程自动化,雅卡尔使

用一张纸质卡片代表织机的一个定位,用卡片上的孔来指示该执行织

机的哪个操作。整条花毯的编织可被编码到一叠这样的卡片上,同样

的一叠卡片每次使用都会编出相同的花毯图案。在开发和使用的程序

中,有的由24,000多张卡片构成。

世界上第一台可编程的机器是由英国数学家和发明家查尔斯.巴

比奇设计的,但从未完全制造成。这台叫做分析机的机器,使用和雅

卡尔的织机类似的穿孔卡片来选择每个步骤应执行的具体算术运算。

插入不同的卡片组,就会改变机器执行的运算。这种机器几乎能在现

代计算机中找到所有的对应物,但它是机械化的,而非电气化的。分

析机的制造从未完成,因为制造它所需要的技术当时不存在。

供分析机使用的最早卡片组程序是由诗人拜伦勋爵的女儿、英国

数学家奥古斯塔..埃达.拜伦开发的。由于这个原因,她被确认为

世界上第一位程序员。

现代的内部存储计算机程序的概念是由美籍匈牙利数学家约翰.

・冯.诺伊曼于1945年首先提出来的。冯.诺伊曼的想法是使用计

算机的存储器来既存储数据又存储程序。这样,程序可被视作数据,

可像数据一样被其他程序处理。这一想法极大地简化了计算机中的程

序存储与执行的任务

六、未来

由于计算机使用的增加,自20世纪50年代以来,计算机科学领

域发展迅猛。作为对用户需求和技术发展的反应,计算机程序在这一

时期经历了许多变化。计算领域的新思想,如并行计算、分布式计算

和人工智能,从根本上改变了一度决定程序形式与功能的传统概念。

工作在并行计算一一其中多个中央处理器合作同时处理同一个问

题一一领域中的科学家,推出了许多新的程序模型。在并行计算中,

一个问题的组成部分由不同的处理器同时处理,这样就加快了问题的

解决速度。由于并行处理计算机的极端复杂性以及使其尽可能有效地

运行所包含的困难,为这种系统设计程序的科学家和工程师面临着许

多挑战。被称为分布式计算的另一种并行计算,使用许多互相连接的

计算机的中央处理器来解决问题。用来在分布式计算应用环境中处理

信息的计算机,常常通过因特网互相连接。因特网的应用正在成为分

布式计算的一种特别有用的形式,尤其是在使用Java等编程语言的

情况下。在这种应用中,用户登录到一个站点,并下载一个Java程

序到其计算机上。该Java程序运行时,就与其主站点上的其他程序

进行通信,也可以与不同计算机或站点上运行的其他程序进行通信。

人工智能(A1)的研究,已经导致几种其他的新程序设计风格的

产生。例如,逻辑程序不是由供计算机盲目执行的单个指令构成,而

是由成套的规则组成:如果x发生,则执行%一种被称为推理机的

特殊程序,在向其提出一个新问题时,就使用这些规则来“推理”出

一个结果。逻辑程序的用途包括对复杂系统的自动监控和证明数学定

律。

一种全然不同的计算方法称为神经网络,在这种计算中没有传统

意义上的程序。神经网络是一组旨在模拟大脑的具有高度互连性的简

单处理单元。神经网络不是像传统计算机那样通过程序来指导信息处

理,而是依靠其处理单元的连接方式来处理信息。给神经网络编程的

实现方法是,给其提供输入与输出数据的已知模式,并调整处理单元

之间各种互连的相对重要性,直到完成所期望的模式匹配。神经网络

通常是在传统计算机上模拟,但是不同于传统的计算机程序,神经网

络具有经验学习的能力。

第六单元

课文A分布式计算机系统

一、引言

分布式计算领域在过去10年间经历了急剧的发展。随着用于大规

模计算的分布式计算系统的使用的增长,提高其可靠性的需要也在增

长。然而,多方式分布式系统中的单个处理节点的故障概率并非可略

而不计。因此,有必要开发有关的机制,在其中一个节点发生故障的

情况下一一无论是瞬态硬件故障(总线差错或分段错误)还是永久性

故障(断电或通信网络故障)所致,可以防止在分布式处理节点上执

行的计算归于无用。

通信技术的进步和在不同工作地点环境中采用的各种工作方式,

自然导致信息处理的更大分布。起初,大多数分布式系统是同构的,

但是现在许多分布式环境是异构的。因此,分布式系统的设计必须着

眼于异构型环境,而将同构系统视作异构世界中的特例。分布式系统

设计中的关键问题包括特定的功能应放在信息基础结构的何处。

二、什么是分布式系统?

分布式系统是独立计算机的集合体,而这些计算机在系统用户看

来像是一台计算机。几乎所有的大型软件系统势必是分布式的O例如,

企业范围的商业系统必须支持多个用户在不同的地点运行公用应用

程序。

一个分布式系统包含各种各样的应用程序、它们的基本支持软件、

它们借以运行的硬件以及连接分布式硬件的通信链路。最大、最为人

熟识的分布式系统是构成万维网的那一整套计算机、软件和服务。万

维网遍布各地,与大多数其他现有分布式系统共存或连接。最常见的

分布式系统是联网的客户达艮务器系统。分布式系统都具有以下描述

的一般特性。

1、资源共享

将一组计算机连接成分布式系统的最常见原因,是允许其分享物

理资源和计算资源(例如,打印机、文件、数据库、邮件服务、股票

行情和合作应用程序等)。支持资源共享的分布式系统组件发挥类似

于操作系统的作用,且与其越来越难以区分。

2,多节点

分布式系统的软件在节点或多台独立的计算机(不仅仅是同一台

计算机上的多个处理器,因为这属于并行计算的领域)上执行。这些

节点可以是个人计算机、高性能工作站、文件服务器、大型机和巨型

计算机。每个节点所扮演的角色可以是向其他节点要求服务的客户;

可以是向其他节点提供计算或资源服务的服务器;也可以是兼备两者

功能的对等体。一个分布式系统可以小至两个节点,假如存在软件连

通性。这种安排如图62L1所示。

区并行性

分布式系统中的每个节点既独立工作,又与所有其他节点并行工

作。每个节点多于一个进程(执行程序),每个进程多于一个线程(并

行执行任务),可在系统中充当组件。大多数组件具有反应性,对来

自用户的命令和来自其他组件的消息不断地进行响应。像操作系统一

样,分布式系统旨在避免终止,因此应始终保持至少部分可用的状态。

4异构性

系统中包含的节点可以由不同的计算与通信硬件组成。组成系统

的软件可以包括不同的编程语言和开发工具。有些异构性问题可以通

过使用共同的消息格式或者在不同平台(如个人计算机、服务器和大

型机)上易于执行的低级协议来解决。其他的可能要求构建将一套格

式或协议转变为另一套的网桥。更彻底的系统集成可以通过这样的方

式达到,即要求所有的节点支持对独立于平台的程序指令进行处理的

共同虚拟机。使用Java编程语言的系统就采用这种方式。

'多种协议

大多数分布式消息传送与在顺序程序范围内使用的调用种类(如

过程调用)有相当大的区别。分布式通信的最基本形式是异步的。与

邮政系统中邮寄的信件类似,发送者发送消息而不指望其接收者收到

或答复。这种基本的分布式消息抵达接收者通常要比本地调用花的时

间长得多。它们有时以不同于发送的顺序到达接收者,而且可能根本

就不能到达接收者。为了避免这种情况,必须构建更复杂的协议。这

些协议可能包括:

・过程消息接发,在这种消息接发中发送者等待完整的答复;

•半同步消息接发,在这种消息接发中发送者在继续之前等待收

到消息的确认;

•事务处理协议,在这种协议中一个给定的会话期或事务处理内

的所有消息要么全部被处理,要么全部不被处理;

・回叫协议,在这种协议中接收者过后给发送者发回不同的消息;

・超时协议,在这种协议中发送者在继续之前仅在一定的时间段

内等待回应;

•多址通信协议,在这种协议中发送者同时给一组其他的节点发

送消息。

这些以及其他的协议常常被扩充和专门化,以提高可靠性、安全

性和效率。

6容错

在单独一台计算机上运行的程序,其可靠性充其量仅与该计算机

的可靠性相等。而另一方面,大多数分布式系统需要至少保持部分可

用和发挥作用的状态,即使其节点、应用程序或通信链路有些出故障

或不正常情况。除彻底出故障外,应用程序可能因为带宽不足、网络

争用、软件开销或其他系统限制而出现服务质量难以接受地低的情

况。因此,在分布式系统的构建中,容错的需求提出了一些最为重要

且困难的挑战。

1、安全性

只有特许用户可访问敏感数据或执行关键操作。分布式系统的安

全性本质上是个多层次问题:从每个节点的常驻硬件与操作系统所提

供的基本安全保证;到信息加密与验证协议;到为隐私、内容适宜性

和个人责任等问题提供支持的机制。

解决可靠性问题的技术,包括使用数字证书和阻止组件编码执行

修改磁盘文件等可能具有危险性的操作。

&消息传送

不同计算机上的软件通过建立于若干联网协议(如基础

上的结构化消息传送规程来进行通信。而这些协议则可以在若干连接

技术(如以太网和调制解调器)之任一种的基础上运行。大多数分布

式系统的节点是完全相连的一一任一节点可给任一其他节点发送消

息。消息传递由基本的路由算法和相关的联网支持来完成。

消息包括命令、服务请求、事件通知、多媒体数据、文件内容,

甚至完整的程序。应注意的是,大多数多处理器通过共享存储器而不

是消息传送来进行通信,因此不是分布式的。

义开放性

大多数顺序程序被认为是封闭的,因为在执行开始后它们的配置

一直保持不变。在一定程度上,大多数分布式系统是开放的,因为在

系统运行期间,可以添加或改变节点、组件和应用程序。这就提供了

容纳扩展所必需的可扩展性,以及随着系统所驻留的环境的变化而变

化并应对之的能力。

开放性要求每个组件遵守一组最起码的策略、惯例和协议,以确

保更新或添加的组件之间具有互操作性。以往,最成功的开放式系统

是那些提出最低限度要求的系统。例如,超文本传输协议的简易性就

是万维网成功的一个主要原因。

国际标准化组织和美国国家标准协会等标准组织,与对象管理组

等工业财团一起,制定了构成许多互操作性保障之基础的基本格式和

协议标准。另外,单个分布式系统还依赖于和环境细节或域相关的策

略和机制。

10,隔离

每个组件在逻辑上或物理上是独立存在的,仅通过结构化信息协

议来与其他组件进行通信。另外,出于功能、性能或安全的考虑,一

组组的组件也可能被分开。例如,尽管一个公司用分布式系统的连通

性可能延伸到整个因特网,但其基本功能可能(常常通过防火墙)限

定于只在防火墙之内运行的局域网。这样,它与系统的其他部分进行

通信,要通过限定的安全协议。

11、持久性

至少有些数据与程序保留在持久性介质上,其持久性大于特定应

用程序的执行时间。可在文件系统、数据库系统或编程语言的运行时

支持机制等层次上作出持久性安排。

12,分散控制

单独的计算机无需对整个系统的配置、管理或策略控制担负责任。

分布式系统反而是通过自主主体协议连接的域,而这些自主主体为提

供聚合功能要达成足够的共同策略。分散化在有些方面是可取的,如

为容错而预先采取的措施。分散化在另一些方面则是必不可少的,因

为集中控制不能适应当代系统所支持的节点与连接数量。然而,对系

统范围的策略实施管理的工具则可能限于特定用户使用。

三、优点和缺点

1、分布式系统的优点

分布式系统具有很多内在的优点,尤其是与集中式系统相比较而

言。而且,有些应用程序本质上就是分布式的。一般来说,分布式系

统:

•产生较高的性能;

・提供较高的可靠性;

•允许递增的发展。分布式计算比单个中央处理器提供的返回率

高;

•构建由大量的用高速网络连接起来的中央处理器组成的系统,

既可行又易行;

•满足了共享分散在这些中央处理器上的数据的需要;

•提供了共享昂贵的外围设备的方法;

・允许一个用户在许多不同的机器上运行程序。

Z分布式系统的缺点

分布式系统尽管具有许多优点,但的确也存在一些缺点。其中有:

•需要新的操作系统为其提供支持;

•依靠网络通信;

・需要提高安全性;

•不能给操作系统提供好的分类;

・使用松散与紧密耦合的系统。

四、结论

我们想充分利用异构的计算环境,其中不同类型的处理资源和互

连技术得到有效的利用。使用分布式资源,提供了使各种各样的科学

与分布式应用程序的性能与成本效益达到最大化的潜力。

由联网的不同种类的工作站构成的分布式计算环境,正在成为工

程和科研环境的标准配置。然而,统一的并行计算模型(与冯.诺伊

曼模型对应的并行模型)的缺乏,意味着现行的并行应用程序是不可

移植的。

第七单元

课文A进入关系数据库的世界

一、什么是关系数据库?

在今天的商界,信息技术正在充分发展。数据处理和信息提取已

经成为现今计算环境的焦点。视其以后的使用方式,数据可以各种各

样的方式存储。这种数据存储被称为数据库。数据存储的最原始形式

是一种不带任何属性、特征或链接而存储数据的文件。要处理这种数

据需要大量的编程工作,于是演变出了关系数据模型。关系数据模型

将数据和数据元素之间的关系表现出来。这种模型基于现实世界的情

况,包括被称为实体的基本对象以及构成这些实体间关系的互连方

式。这种概念的表示方式被称为实体关系图。我们来看一个书店数据

库的简单例子。书名和作者是该数据库(许多实体)中的两个实体。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论