计算机软件
武汉大学计算机学院
,编译原理, 课程组
计算机软件包括
? 系统软件
? 支持软件
? 工具软件
计算机系统软件
? 计算机系统软件 是计算机系统中最接近硬件
的一层软件,它与具体的应用领域无关,如
操作系统和编译程序等。
? 计算机系统中的其他软件一般都通过系统软
件发挥作用 。在任何计算机系统的设计中,
系统软件都要予以优先考虑。如果没有系统
软件,计算机就很难发挥效用。
3.1 程序设计语言翻译系统
? 计算机硬件只能识别并执行机器指令,但人
们普遍习惯于使用高级程序设计语言或汇编
语言来编写程序。为了让计算机能够理解高
级程序设计语言或汇编语言并执行用它编写
的程序,必须要为它配臵一个, 翻译,,这
就是所谓的 程序设计语言翻译系统 。
? 程序设计语言翻译系统是一类系统软件,它能够
将使用某一种源语言编写的程序翻译成与其等价
的使用另一种目标语言编写的程序。
? 使用源语言编写的程序称为 源程序,使用目标语
言编写的程序称为 目标程序 。源程序是程序设计
语言翻译系统加工的, 原材料,,而目标程序则
是程序设计语言翻译系统加工的, 最终产品, 。
? 不同的程序设计语言需要有不同的程序语言翻译系
统,同一种程序设计语言在不同类型计算机上也需
要配臵不同的程序设计语言翻译系统 。因此,如果
有 M种程序设计语言,有 N种不同类型的计算机,
则需要有 M× N种程序设计语言翻译系统。
? 所谓某种类型的计算机种配臵了某种程序设计语言,
是指该计算机上已经配臵了该语言的翻译系统。
程序设计语言翻译系统可以分成 3种:
? 汇编语言翻译系统、
? 高级语言源程序翻译系统
? 高级语言源程序解释系统。
? 这些翻译系统之间的不同之处主要体现在
它们生成计算机可以执行的机器语言的过程中。
3,1,1 汇编语言翻译系统
? 其主要功能是将用汇编语言书写的程序
翻译成用二进制表示的等价的机器语言
程序,形成计算机可以执行的机器指令
代码,如图 3-1所示。
? 图 3- 1
汇编源程序 汇编程序
翻译器 机器语言程序
汇编程序的具体翻译工作如下:
? 用机器操作码代替符号化的操作符。
? 用数值地址代替符号名字。
? 将常数翻译为机器的内部表示。
? 分配指令和数据的存储单元。
3,1,2 高级语言翻译系统
1,什么是高级语言翻译系统
? 高级语言翻译系统是将用高级语言书写的源程序
翻译成等价的机器语言程序或汇编程序的处理系
统,也称为 编译程序 (或 编译系统 )。
? 它以高级语言书写的程序(称为 源程序 )作为输
入,以机器语言或汇编语言表示的程序(称为 目
标程序 )作为输出,它的任务是产生一个可在具
体计算机上执行的目标程序。
? 多数高级程序设计语言(如 C,PASCAL、
FORTRAN等)都是采用编译的方式,也
有一些程序设计语言(如 BASIC等)采用
解释的方式。由于源程序中的每一个语句
与目标程序中的指令通常是一对多的关系,
因而编译程序的实现算法比较复杂。
2,编译程序的结构
为了便于理解编译程序的整体结构和工作过程,可以
把编译程序比喻为一个“信息加工流水线”,其加工
的“原材料”是源程序,“最终产品”是目标程序,
每一道“工序”则以上一道“工序”得到的“半成品”
作为输入,经过该道“工序”的加工后再输出作为下
一道“工序”的输入,直至最后得到“最终产品” —
— 目标程序。
? 编译程序从机构与工作过程如图 3-2所示,
源程序




词法分析
语法分析
中间代码生成
优 化
目标代码生成




图 3-2 编译程序的结构与工作过程
其中各模块的功能如下,
? 词法分析,又称为 扫描器,它的功能是扫描以字符串形式输入的源程序,
识别出一个个的单词并将其转换为机内表示形式。
? 语法分析,又称为分析器,它的功能是对单词进行分析,按照语法规则
分析出一个个的语法单位,如表达式、语句、程序等。
? 中间代码生成,它的功能是将语法单位转换为某种中间代码,如四元式、
三元式、逆波兰式等。
? 优化,它负责对中间代码进行优化,使得生成的目标代码在运行速度、
存储空间方面具有较高的质量。
? 目标代码生成,它的功能式将优化后的中间代码转换为目标程序。
? 以上是编译程序这个“信息加工流水线”
的 5道“主工序”,在每一道“工序”中,
有可能需要使用各种表格来记录和查询
必要的信息,或者需要进行出错处理,
这些任务将由 表格管理程序 和 出错处理
程序 来完成。
3,1,3 高级语言解释系统
? 高级语言 解释系统 (解释程序 )是按照源程序中的
语句的动态顺序逐条翻译并立即执行相应功能的
处理系统。解释程序在翻译过程中并不把源程序
翻译成一个完整的目标程序,而是直接将源程序
中的语句逐句转换成机器可执行的动作,并获得
结果,如图 3-3所示。因此,源程序每次运行都
需要重新进行解释。
源程序
解释系统(逐句解
释、执行)
原始数据
结 果
图 3-3 源程序的解释执行
解释程序的工作过程如下,
? 由总控程序完成初始化工作。
? 依次从源程序中取出一条语句进行语法检查,如有错,
输出错误信息;如通过了语法检查,则根据语句翻译成
相应的指令并执行它。
? 检查源程序是否已经全部解释执行完毕,如果未完成则
继续解释并执行下一个语句,直到全部语句都处理完毕。
解释程序的优点是实现算法比较简单,缺点是运行效率
较低。早期所用的 BASIC语言是解释型程序设计语言,近
年来十分流行的 Java语言,它也具有逐条解释执行程序的
功能 。
4,2 操作系统
? 操作系统 是用来管理计算机系统的软
硬件资源、提高计算机系统资源的使
用率、方便用户使用的程序集合。它
是对计算机系统进行自动管理的控制
中心。
3,2,1 什么是操作系统
? 操作系统是计算机硬件(裸机)的直接外层,
它对硬件的功能进行首次扩充。操作系统提
供给用户的操作界面,给用户带来了极大的
方便,同时操作系统又是其他软件运行的基
础。
? 为了让操作系统进行工作,首先要将它从外存储
器装入主存储器。这一安装过程称为 引导系统 。
安装完毕后,操作系统中的管理程序部分将保持
在主存储器中,称其为 驻留程序 。其他部分在需
要时再自动地从外存储器调入主存储器中,这些
程序称为 临时程序 。
? 操作系统中的某些部分可以自动工作,不需要人
为干预,有的部分则为用户提供实用程序,用来对
系统进行维护。
3,2,2 操作系统的功能
操作系统是计算机系统软件的核心,它在
算机系统中担负着
? 管理系统资源
? 控制输入输出
? 实现用户和计算机系统间通信
的重要任务。操作系统的功能可以从不同的
角度来理解,
1,资源管理
? 这里所谓,资源,是指计算机系统的硬件(包括
处理机、存储器和输入输出设备)和软件资源及
其它以文件形式存放在计算机中的信息。它们是
操作系统管理的对象,系统的硬件资源和软件资
源都由操作系统根据用户需求按一定的策略分配
和调度。
? 因此,从资源管理的角度来看,操作系统的功能
主要有以下 4个方面 。
( 1) 处理机管理 OS的任务是控制程序的执行,它负责对系统中各个
处理机及其状态进行登记,管理各程序对处理机的要求,并按照一
定的策略将系统中的各个处理机分配给申请的用户作业(进程)。
目前计算机系统中所使用的大多数是“多任务”、“多线程”的操作
系统。所谓,多任务,是指操作系统同时执行一个以上的任务,例
如当一项任务在等待输入输出操作时,CPU可以执行另一项任务。
所谓,多线程” 是指一个程序的多重执行能力,例如当计算机在写
入一个大型文件时可以同时调用拼写检查程序。
( 2) 存储器管理 OS按照一定的策略为用户作业分配存储空间,记录
主存储器的使用情况,并对主存储器中的信息提供保护,在该作业
执行结束后收回它所占用的内存单元以便其他程序使用。
( 3) 输入输出设备管理 OS记录系统中各个输入输出设备
的状态,按照各个设备的不同特点采取不同的策略分配
和回收外部设备,以及控制外部设备的操作。
( 4) 文件管理 OS对存放在计算机中的信息进行逻辑组织
和物理组织、维护文件目录的结构以及实现对文件的各
种操作。例如,可向用户提供创建文件、撤销文件、读
写文件、打开和关闭文件等功能。有了文件管理,用户
可以按文件名存取数据而不必了解这些数据的确切物理
位臵。文件管理还可以允许用户在创建文件时规定文件
的使用权限,这样数据的安全性也可得到保证。
2,人-机交互功能
? 计算机的界面是否, 友好,,与操作系统人-机交
互功能的完善与否密切相关。
? 人-机交互功能 主要靠可以进行输入输出的外部设
备和相应的软件来完成。这些外部设备主要有键盘、
显示器、鼠标、语音输入设备、文字输入设备以及
图形图像设备等。驱动这些设备进行工作的软件,
就是操作系统提供用户进行人-机交互功能的交互
式软件。
3,2,3 操作系统的分类
? 操作系统也有许多不同的分类方法。比
如,按照计算机硬件的规模可以分为
? 大型机操作系统
? 小型机操作系统
? 微型机操作系统
? 大型机的性能强、设备多、价格昂贵,
所以其操作系统注重于调度和管理系统
资源,提高资源使用的有效性。
? 小型机和微型机的操作系统则更加注重
用户界面的友好性。
? 另外一种典型的方法是按照操作系统的性能
来分类,即可以把操作系统分为
? 多道批处理操作系统
? 分时操作系统
? 实时操作系统
? 网络操作系统
下面简要地介绍这 4类操作系统的主要特点。
1,多道批处理操作系统
? 所谓 多道程序设计 是指在主存储器中存放多道用
户的作业,使其按照一定的策略交替(插空)在
CPU上运行,共享 CPU和输入输出设备等系统资
源。
? 多道批处理操作系统负责把用户作业成批地接收
进外存储器,形成作业列队,然后按一定的策略
将作业队列中的作业调入主存储器,并使得这些
作业按其优先级轮流占用 CPU和外部设备等资源。
? 从宏观上看,计算机中有多个作业在运行,
但从微观上看,对于单 CPU的计算机而
言,在某一个瞬间实际上只有一道作业在
CPU上运行。多道批处理操作系统可以
提高系统设备的利用率,一般适用于大型
计算机。
2,分时操作系统
? 所谓 分时 是指多个用户终端共享使用一台计算机,
即把计算机系统的 CPU时间分割成一个个小的时间
段(称其为一个时间片),从而将 CPU的工作时间
分别提供给各个用户。由于计算机的高速性,使得
每一个用户都感觉到自己在独占计算机运行。
? 分时操作系统设计的主要目标是提供对用户响应的
及时性。它一般适用于带有多个终端的小型机。
3,实时操作系统
? 在把计算机应用于过程控制系统时,通常要
求计算机能够对外部事件作出及时的响应并
对其进行处理,这样的系统称为 实时系统 。
? 实时操作系统一般应用于专门的应用系统,
而且 特别强调对外部事件响应的及时性和快
捷性 。此外,由于实时系统往往是对工业生
产过程进行控制,因此 系统的可靠性 也是一
个重要的指标。
4,网络操作系统
? 网络操作系统 实际上是使网络上的计算机能够方便而有
效地共享网络资源,为网络用户提供各种服务软件和有
关协议。
? 网络操作系统 除了应具有通常操作系统所具有的处理机
管理、存储器管理、输入输出设备管理和文件管理之外,
还应该能够提供高效、可靠的网络通信以及多种网络服
务功能。其中网络通信将按照网络协议来进行;而网络
服务包括文件传输、远程登录、电子邮件、信息检索等,
使网络用户能够方便地利用网络上的各种资源。
? 分布式 OS
? 智能 OS
? 机群 OS
? 网格 OS
? …
4,2,4 几种常用的操作系统
? 不同的用途、不同的计算机可以采用不同的操作系统。
下面简要介绍在微型计算机上广泛使用的几种操作系
统。
? 1,MS-DOS
? MS-DOS是微软磁盘操作系统( Microsoft disk
operating system)的简称,它自 1981年问世以来,
随着版本的不断升级和功能的不断增强,得到了迅速
的普及,被广泛地应用于 PC机上。
MS-DOS的功能有以下 3个方面
( 1) 磁盘文件管理 由文件管理模块( MSDOS.SYS)实现
对磁盘文件的建立、打开、读 /写、修改、查找、删除等操
作的控制与管理。
( 2) 输入输出管理 实现对标准输入输出设备(包括键盘、
显示器、打印机、串行通信接口等)的控制与管理,该项
功能由输入输出管理模块( IO.SYS)来完成。
( 3) 命令处理 提供一个人-机界面,使用户能够通过 DOS
命令对计算机进行操作。在 MS-DOS中,由命令处理模块
( COMMAND.COM)负责对用户输入的命令进行接收、
识别、解释和执行。
? MS-DOS由引导程序( Boot)负责将系
统装入主存储器。把 MS-DOS的系统文件
装入主存储器的过程称为启动 MS-DOS。
启动 MS-DOS有两种方法
? 一种使冷启动,另一种是热启动。
? 冷启动 是指当计算机处于关机状态时,通过打开
电源开关加电启动 DOS的方式。
? 热启动 则是指在不断电状态下通过按 Ctrl+ Alt+
Del组合键来启动 DOS。在微型机主机的面板上
有一个复位按钮 Reset,按 Reset按钮可以重新启
动计算机,这也是热启动的一种方式。 DOS启动
成功后,将显示系统提示符,这时系统处于接受
用户输入命令的状态。
? MS-DOS采用命令行界面,其中的命令都要用户强
记,这给用户的学习和使用带来了不少困难,DOS
中文件名所有的字符个数不能超过 8个,扩展名的
字符不能超过 3个。在 MS-DOS的提示符下用户可
以输入命令,按 Enter键表示命令结束。
MS-DOS命令分为内部命令和外部命令两种。内部
命令是包含在 COMMAND.SYS文件中可直接执行
的命令;而外部命令则是以普通文件的形式存放在
磁盘上,需要是将其调入主存储器。
2,Microsoft Windows
? Microsoft Windows是由微软公司开发的基
于图形界面、多任务操作系统,又称为 视窗
操作系统 。 Windows正如它的名字一样,它
在计算机与用户之间打开了一个窗口,用户
可以通过这个窗口直接使用、控制和管理计
算机。从而使操作计算机的方法和软件的开
发方法产生了巨大的变化。
( 1) Microsoft Windows的发展史
? Windows操作系统是 Microsoft 公司从 1983年开
始研制的。
? Windows的第一个版本于 1985年问世。
? 1987年又推出了 Windows2.0,那时的操作系统
虽然使用起来不十分方便,但它的能互相覆盖的多
窗口的用户界面形态即使到现在也仍在沿用。
? 1990年推出的 Windows3.0是一个里程碑,它在
市场上的成功奠定了 Windows操作系统在个人计
算机领域的垄断地位。
? 之后出现了一系列 Window3.x操作系统,使得
Windows和在 Windows环境下运行的应用程序
具有风格统一,操纵灵活,使用简便的用户界面。
Windows3.x也提供了网络支持,为用户和网络
服务器和网络打印机的连接提供了方便。
? 微软公司在此之后推出的 Windows NT( new
technology)可以支持从桌面系统到网络服务器
等一系列机器,系统的安全性较好。
? 1995年微软公司又推出了 Windows 95,该版
本操作系统对原来的 Windows 3.x进行了全面改
进,从而使用户对系统中的各种资源的浏览和操
作既方便又合理。
? 在此之后又出现了 Windows 98,Windows 98
比 Windows 95在因特网浏览等功能方面有较大
的改进。
? 2000年微软公司又推出了 Windows 2000,
这个操作系统集中了 Windows 95/98 和
Windows NT中的优点,使之在功能上几乎
可支持各种硬件( 1100多个硬件设备)。
Windows 2000共有 4个版本:
? Windows 2000 Professional
? Windows 2000 Server
? Windows 2000 advanced Server
? Windows 2000 Data Center Server
? 2001年 10月 25日,微软的最新操作系统 Windows XP
上市,对 Windows XP推出的意义,比尔盖茨在产品发
布会上是这样表达的:,随着 Windows XP的上市,我
们进入了一个全新的,令人振奋的个人计算机时代” 。
? Windows XP的推出,表明了微软要从软件供应商到软
件服务商转型的理念。在某种意义上说,Windows XP
的功能大大超出了通常所说的“操作系统”的概念(如
即时传信,在线照片处理等)。
Windows操作系统的主要特点
? 丰富的应用程序 。 Windows系统提供了丰富的应用
程序,如字处理程序( Word)、电子报表程序
( Excel)、数据库管理系统( FoxPro)以及绘图
软件( AutoCAD)等。
? 统一的窗口和操作方式 。在 Windows系统中,所有
的应用程序都具有相同的外观和操作方式,一旦掌
握了一种应用程序的使用方法,便很容易掌握其他
应用程序的使用方法。
? 多任务的图形化用户界面 。 Windows系统为每个用户程序提
供了一个窗口,窗口的大小、位臵、显示方式都可由用户控
制。窗口中分层次合理地组织了标题栏、滚动条、控制按钮
等,使用户除了必要输入的参数外,其他都可以用鼠标来完
成各种操作和功能。由于 Windows系统利用了各种图示化手
段,加上功能完善的联机帮助系统,使 Windows操作系统学
习容易,使用方便。
? 事件驱动程序的运行方式 。 Windows支持基于消息循环的程
序运行方式,外部消息产生于用户环境引发的事件(键盘、
鼠标的动作等)。事件驱动方式对于用户交互操作比较多的
应用程序,既灵活又直观。
? 标准的应用程序接口 。 Windows系统为应用程序开发人员
提供了功能很强的应用程序接口( API),开发者可以通
过应用程序接口创建 Windows图形界面的窗口、菜单、滚
动条、按钮等,使得各种应用程序在操作界面层次风格一
致。这种标准的应用程序界面,不仅简化了应用程序的开
发,还使学习和使用应用程序的过程缩短。
? 实现数据共享 。 Windows系统提供了剪贴板功能,可以将
一个应用程序中的数据通过剪贴板粘贴到另一个应用程序
中。对象嵌入和链接技术也为应用程序的集成提供了一个
在不同文档中交换数据的平台。
? 支持多媒体和网络技术 。 Windows系统提供多种数据格式
和丰富的外部设备驱动程序,为实现多媒体应用提供了理
想的平台。在通信软件的支持下,可以共享局域网乃至
Internet的资源。
? 先进的主存储器管理技术 。 Windows系统采用了
自动扩充内存和虚拟内存技术,使得大程序也可
以运行。
? 与 DOS的兼容性 。在 Windows系统中,可以调用
DOS并可以直接使用 DOS应用程序,具有良好的
兼容性。
? 不断增强的功能 。 Windows XP更是综合了以往
Windows的优点,力图在网络时代推出由软件销
售到软件服务的理念,这个理念已被许多人认可。
3,Microsoft Windows NT
? ( 1) Microsoft Windows NT是微软公司
于 1993年推出的一个崭新的 32位操作系统。
由于它所具有的完善功能、卓越的性能和
最新的技术,备受广大用户的欢迎,被誉
为是,20世纪 90年代的操作系统,。
Windows NT的主要特点
? ① 强大的系统功能 。 Windows NT的功能十分
强大,它提供了现代操作系统的几乎全部功能,
例如多任务功能、多处理机管理、虚拟资源管理、
多重文件系统、一体化的输入输出管理、网络通
信功能等。
? ②采用了操作系统的最新技术 。例如,图形用户
界面技术、支持多操作系统环境、对称多处理技
术、内装网络功能以及面向对象的软件开发技术
等。
? ③ 卓越的系统性能 。 Windows NT具有快速、
有效的处理能力,对于许多计算量大的应用程序
能给用户良好的响应时间。
? ④良好的可扩充性和可移植性 。当技术上或市场
上有新的需求时,Windows NT系统易于扩充,
使其功能很容易增强。它所具有的良好的可移植
性,使其能够以尽可能少的改动,便能够移植到
不同配臵的计算机上。
? ⑤ 可靠性和兼容性 。对于意外出错情况和硬件故障都能
够按照预订的方式进行处理,不会造成系统的不良后果,
并且提供了有效的措施保护自身和用户程序免遭有意或
无意的破坏。
? 所谓兼容性是指 该操作系统能够运行其他操作系统(包
括系统早期的版本)。 Windows NT对微软公司推出的
操作系统老的版本下编写的程序能够提供二进制级的兼
容,对于符合 POSIX(面向计算环境的可移植操作系统
接口)操作系统下编写的程序能够提供源代码级的兼容。
( 2) Microsoft Windows NT的组成
? Windows NT 的结构框架由系统用户态部分和系统核心态部分组成。
? 系统用户态部分 包括环境子系统和集成子系统。环境子系统提供其他操
作系统(如 MS-DOS,16位 Windows,OS/2,Win32等)的编程接
口;集成子系统则包括安全子系统和网络服务软件等。
? 系统核心态部分 是 Windows NT的执行体,它采取了层次结构。第一层
是系统服务层,包括对象管理、安全调用监督、进程管理、本地进程调
用、虚拟内存管理以及输入输出设备管理等管理模块;第二层是 NT的内
核,其功能是中断和异常处理、线程调度以及提供一组基本对象和接口;
第三层是硬件抽象层,其功能是将 NT执行体的其他部分与运行它的硬件
特性隔离开。
4,UNIX
? UNIX是使用比较广泛、影响比较大的主
流操作系统之一。 UNIX操作系统的结构
简练、功能强,可移植性和兼容性都比较
好,因而它被认为是开放系统的代表。
( 1) UNIX的发展
? UNIX操作系统是 20世纪 60年代末由美国的电话电报公司( AT&T)贝
尔( Bell)实验室的计算机科学家 K,Thompson和 D.M,Ritchie等研制
的。由于上述两位学者对 UNIX操作系统的卓越贡献,获得了 1983年的
图灵奖。
? 1974年美国电话电报公司允许教育机构免费使用 UNIX系统,这一举措
促进了 UNIX技术的发展,各种不同版本的 UNIX操作系统相继出现,其
中最值得一提的是加州大学伯克利( Berkeley)分校的 BSD版。
? 20世纪 70年代末,市场上出现了 UNIX的商品化版本,代表产品有
AT&T公司的 UNIX SYSTEM V,UNIX SVR 4X,SUN公司的 SUNOS、
Microsoft公司的 XENIX和 SCO UNIX等。到了 20世纪 90年代,不同的
UNIX版本已有 100多种,比较主流的产品有 SUN Solaris,SCO的
UNIX Ware等。
( 2) UNIX的特点
? UNIX操作系统是通用的、多任务的、交互式的、分时系统,在小型机
和微型机领域得到了广泛的应用。
? UNIX主要特点如下,
? ①功能强大 。 UNIX是多用户操作系统,适合于将终端或工作站连接
到小型机或主机的场合使用。其功能可由许多小的功能模块连接组装
而成。它所采用的“管道( pipe)”技术是实现复杂功能的关键。
? ②提供可编程的命令语言 。 UNIX提供了功能完备、使用灵活的、可
编程的命令语言( shell语言),用户可以使用该语言与计算机进行交
互以及方便地进行程序设计。
? ③文件系统结构简练 。 UNIX具有分层的、可装卸的文件系统,并提供
了完整的文件保护功能。 UNIX的文件系统把普通文件、目录和各种外
部设备都统一定义为文件,统一地进行处理,为用户提供了一个简单
一致的接口,使用用户能够统一地对文件和设备进行操作,是操作变
得简单明了。
? ④ 输入输出缓冲技术 。 UNIX采用了输入输出缓冲技术,主存
储器和磁盘的分配与释放可高效、自动地进行。
? ⑤提供了许多程序包 。如文本编辑程序,shell语言解释程序、
汇编程序、十几种程序设计语言的编译程序、连接装配程序、
调试程序、用户间通信程序以及系统管理与维护程序等,给
用户带来了方便。
? ⑥可移植性强 。由于 UNIX的代码绝大部分是用 C语言书写,
因而由很好的可移植性。
? ⑦网络通信功能强 。由于 UNIX系统有一系列网络通信工具和
协议,TCP/IP协议就是在 UNIX上开发成功的。目前在
UNIX环境下使用的协议就更多了。
( 3) UNIX的 组成
? UNIX系统也是采取了层次结构,外层是用户层,内
层是内核层。
? 用户层 包括 Shell解释程序、程序设计语言的编译程
序、各种应用程序包子系统以及 41个系统调用命令。
用户层通过这些命令来调用内核的功能。
? 内核是 UNIX的核心,它划分为 44个源代码文件、
233个模块,其功能分别是管理、进程管理、进程
通信、系统调用、输入输出管理以及文件管理。
? UNIX操作系统包含 4个最基本的成分:内核、
Shell、文件系统和公用程序。
? ①内核 。内核是 UNIX操作系统的核心,它的作用是
调度和管理计算机系统的各种资源。如对主机运行
的管理、计算机的存储管理(如对内存和外存储器
的管理)、外部设备(如打印机、显示终端、光盘
读写设备等)的管理等。
? ② 文件系统 。文件系统在 UNIX操作系统中主要用来组织并
管理数据资源。 UNIX的文件系统采用树状的层次结构,它
的第一层是树的根,第二层通常包括 etc目录(其中有系统
管理命令),bin目录(其中有 UNIX的常用命令)。 usr目
录(用户目录)及 lib目录(函数库目录)等,目录的层次可
以扩充,树枝的端点(叶子)大多是文件。用户可以通过从
树根到端点的“路径”来访问目录或文件。目前 UNIX文件
系统能支持虚拟文件系统、网络文件系统、远程文件系统、
安全性文件系统及光盘文件系统等不同类型的文件系统。
? ③ Shell。 Shell是一种命令解释程序,它用
来读入用户输入的命令并调用相应的程序来
执行用户提出的命令。 Shell是一种功能比较
强的命令语言,使得用户可以在更高的层次
上进行程序设计,提高效率。 Shell的版本有
很多种,常用的有 C-shell,Korn-shell和
WK-shell等。
? ④ 公用程序 。公用程序是 UNIX系统提供给
用户的常用标准软件,包括编辑工具、网
络管理工具、开发工具及保密与安全工具
等。
5,Linux
? Linux是可以运行在 PC机上的免费的 UNIX操作系统。它由芬兰赫尔辛
基大学的学生 Linus Torvalds在 1991年开发的。 Linus Torvalds把
Linux的源程序在 Internet上公开,世界各地的编程爱好者自发组织起
来对 Linux进行改进和编写各种应用程序,今天 Linux已发展成为功能很
强的操作系统,是操作系统的一颗新星。
? Linux的源代码对每个人都是免费的 。但是这并不意味着 Linux和它的一
些周边软件发行版本也是免费的。 Linux有着广泛的用途,包括网络、
软件开发、用户平台等,Linux被认为是一种高性能,低开支的可以替
换其他昂贵操作系统的软件系统。
? 现在主要流行的版本有 Red Hat Linux,Turbo Linux及我国自己开发
的红旗 Linux、蓝点 Linux等。
( 1) Linux的特点
? Linux是与 UNIX兼容的 32位操作系统,它能运行主要的 UNIX工具软件、
应用程序和网络协议,并支持 32位和 64位的硬件。 Linux的设计继承了
UNIX以网络位核心的设计思想,是一个性能稳定的多用户网络操作系
统。同时,它还支持多任务、多进程和多 CPU。
? Linux的模块化设计结构,使它有优于其他操作系统的扩充性、用户不
仅可以免费获得 Linux的源代码,还可以修改,以实现特定的功能,这
使任何人都可以参与 Linux的开发。
? Linux是一个提供完整网络集成的操作系统,它可以轻松地与 TCP/IP、
LAN Manager,Windows for Workgroups,Novell NetWare或
Windows NT集成在一起。 Linux可以通过以太网或 MODEM连到
Internet上。
( 2) Linux的用途
? Linux的用户按其性质可分为个人用户、专业用户
和大规模采用了 Linux系统的商业用户。
? 现在 Linux的个人用户大多为专业技术人员或电脑
发烧友。 Linux的专业用户大多是 UNIX的使用者,
由于他们本身对 UNIX比较熟悉,所有清楚地知道
Linux究竟可以干什么。 Linux的商业用户由于要
向客户提供商业服务,通常要考虑很多的因素,例
如安全性、可靠性费用等。
Linux的应用领域广泛,
主要的有以下几个方面
? ① Internet/Intranet Linux被广泛应用于
Internet/Intranet中,提供 WWW服务。 Linux WWW服务
器据说在全球的 WWW服务器中占据了 60%~ 70%的分额。
? ②文件及打印服务 使用 Linux操作系统的服务器不但可以轻
松地向用户提供文件及打印服务,还可以通过磁盘定额到达
合理分配存储空间的功效。
? ③ 数据库服务 这一特点使所有商业用户在选择系统
时首先要考虑的问题,因为所有商业系统的运行几
乎没有不用数据库系统的。 Linux提供了对数据库
系统的全力支持,各大数据库厂商先后推出基于
Linux系统下的大型数据库。目前可以在 Linux运行
的大型数据库系统有 Sybase ASE,Informix
Dynamic Server,Oracle和 IBM DB2等。
? ④ 网络服务 一般情况下将 Linux系统用作路由器,这类系统
通常情况下只安装简单的网络服务功能软件包。对于安全性
要求较高的网络,还可以将 Linux机用作防火墙( IP Chain)
来使用,以杜绝外部入侵者的破坏。另外,Linux还可以用
作代理服务器。
? ⑤个人应用 Linux提供了文字处理软件、绘图软件、动画软
件和看图软件,它还提供了窗口系统。众多应用软件供应商
都宣布支持 Linux、而专门的 Linux供应商又推出了性能更
好的产品,相信会有更加优秀的 Linux应用产品出现。
6,MAC OS
? 苹果公司为它的计算机设计的操作系统大多称为
MAC OS,MAC OS是最早利用图形用户界面的操
作系统,它具有很强的图形处理能力,被广泛地用
在桌面出版和多媒体应用等领域。由于 MAC OS在
中国不普及,加上以往的 MAC OS又和微软的
Windows操作系统缺乏兼容性,因而它的使用受到
了限制。
? 苹果公司的操作系统在北美和西欧市场上占用不小
分额。
? 最近苹果公司推出了 新一代操作系统 Mac OS X,
它耗费了 Apple公司大约十多年时间。 Mac OS
X的核心系统被称为 Darwin(意为“达尔
文”),它采用了由卡耐基-梅隆大学所开发的
Mach微内核,所以也可以将 Mac OS X看作一
种符合 POSIX标准的 UNIX变种。由于 Darwin
本身是开放源代码的,Mac OS X受到各开放源
码( Open Source)社团的强烈关注和广泛支
持。
? 在 Darwin内核之上,Mac OS X还提供了完整的
java 2支持环境,并在操作系统中预装了 Java虚拟
机。 Mac OS X上的 JRE和 JDK( J2SE)的版本更
新与 Sun公司几乎保持同步。 Mac OS X的用户界
面和图形能力相当优秀。
? Mac OS X包括了不少预装软件,除了资源管理器
Finder以外,还包括文本编辑器、图片查看工具、
PDE查看工具,QuickTime播放器,IE Web浏览
器等。在 Mac OS X上,Adobe,Macromedia、
Microsoft都推出了其著名的设计和办公软件,如
Photoshop,Freehand,Office等。
3,3 工具软件
? 3,3,1 下载软件
? Internet的出现,为人们交流和共享信息资源提供
了一个巨大的平台。当访问各类网站时,不仅需要
浏览其中丰富多彩的内容,还需要将其中感兴趣的
软件、文档、图像、乐曲等各类信息下载到自己的
电脑内。为了提高下载速度,许多下载工具软件应
运而生,其中比较流行的有网际快车、网络蚂蚁和
GetRight。
网际快车 FlashGet( JetCar)
的主要功能和使用方法
? 网际快车 FlashGet( JetCar)的基本功能是提高网络下载速度,获取
并响应对浏览器的鼠标单击操作,完全支持 Internet Explorer和
Netscape浏览器。为了最大限度地提高网络下载速度,网际快车采用可
了下列软件技术。
( 1)多点连接 。是指在下载文件时,把一个文件分成几个部分,通过多条
传输路径同时下载各部分的数据,从而充分挖掘现有线路的传输能力、
成倍地提高速度的目的。
( 2)断点续传 。是批用户下载过程,如果由于种种原因造成下载被中断,
则再次下载同一文件可从中断处继续进行,而不必从头开始重新下载。
( 3)支持镜像功能 。可采用手动或自动方式,利用 FTP Search自动查找
镜像站点,通过其中最快的站点下载文件。
( 4)支持计划下载 。用户可按计划,避开网络使用高峰时间,在较空闲的
时候进行下载。
( 5)用户可以调整下载任务的先后次序,重要的文件可提前下
载。
( 6)具有完善的管理功能,可以按照树型结构分门别类地存放
下载文件。
( 7)可以创建不限数目的类别,每个类别具有单独的文件目录,
便于将不同类别的下载文件保存到不同的目录中。
( 8)用户可通过鼠标拖曳操作,方便地将下载文件归类。
? 网际快车安装好后,会在 IE浏览器的快捷菜单中添加“使用
网际快车下载”和“使用网际快车下载全部链接”两个命令。
单击“使用网际快车下载”则下载所选中的单个链接;单击
“使用网际快车下载全部链接”则下载本页所有的链接。
3,3,2 FTP工具软件
? FTP( File Transfer Protocol,文件传输协议) 既代表一
种服务 —— 支持在 Internet上通过 FTP传输文件,又表示一
种协议,详细描述文件如何在 Internet上被上传到 FTP服务
器的主机,或从 FTP服务器的主机下载到用户计算机的约定。
? 所谓 FTP工具软件,是指专门用来连接 FTP服务器(又称
FTP站点)的客户端应用程序,它提供了图形化的用户界面,
使用户可以上传或下载文件。
? 把文件(如个人网页)从用户的计算机中上传到 FTP服务器
中,供广大网友共享,FTP是目前唯一有效的途径。
? CuteFTP是由 GlobalSCAPE公司开放的 FTP工具软件,用
户使用该软件可以方便地向 Internet上各种类型的 FTP站点
上传和下载文件,充分实现信息共享。
? 通过 FTP传输文件往往要比使用其他协议(如
HTTP超文本传输协议)更加有效,这主要有以下
两个原因:
? 第一,FTP是用来传输文件的专业协议,FTP的唯
一工作就是确保文件的正确传输,不像 HTTP还有
其他功能;
? 第二,连接在 Internet上的 FTP服务器本质上是一
台专门用于 FTP服务的计算机,其全部资源完全
投入到 FTP事务处理中,而不会被其他工作分割
占用。
3,3,3 图像浏览软件
? 图像浏览软件是帮助用户获取、浏览和管理图片的
实用工具 。 ACDSystems公司开发的 ACDSee软件
是一款功能完善的图像浏览软件,它支持 50多种
多媒体文件格式的预览,可以在 BMP,GIF,JPG、
PCX,PCD,TIF等 10多种图形文件格式之间进行
相互转换,既能高速优质地显示图像、播放幻灯片
和音乐,又能高效方便地查找和处理图像。
? ACDSee对文件的操作十分方便,既可使用菜单
命令或工具按钮,也可使用剪贴板操作和设备拖曳
操作。
3,3,5 PDF文件阅读软件
? Adobe公司推出的 PDF格式是一种全新的电子文档阅读格式,
其中 Acrobat Reader就是一款由 Adobe公司开发的 PDF文件
阅读软件。借助于 Acrobat Reader,用户可以在 Microsoft
Windows,Mac OS和 UNIX等不同平台上十分方便地查阅
采用 PDF格式出版的所有文档。
? PDF是 portable document format(可移植文档格式)的
英文缩写,所谓“可移植”,是指该文档格式不依赖于特定
的硬件、操作系统或创建 PDF文档的应用程序,它可以在不
同的计算机平台上直接进行查阅,无需作任何修改或转换,
因而成为在 Internet、企业内部网,CD-ROM上发行和传播
电子书刊、产品广告和技术资料等电子文档的标准格式。
3,3,6 词典工具
? 金山词霸是目前十分流行的多功能电子词典工具,是一款由金山公司开发
的英汉、汉英词典软件。它可以快速、准确、详细地进行英汉互译,是用
户取词翻译的好助手。
金山词霸的主要功能如下:
? 可以对屏幕任何地方的单词或词组即指即译。
? 进行词典查询。
? 支持互联网搜索引擎,提供 3万个网址和十几万关键字选择查询。
? 对于在词霸中没有查到的单词,可直接连接到金山词霸网上查询。
? 通过金山词霸网站,可以获取最新的词库。
? 囊括各种普通词典和专业词典,方便各行各业。
3,3,7 文件压缩软件
? 所谓文件压缩,实际上是用某种新的更紧凑的格式来存
储文件的内容,其目的是节省文件所占的磁盘空间,减
少文件在通信线路上传输时所占的时间 。当然,在使用
文件时,必须恢复文件的本来面目(称为释放或解压
缩)。现在国内流行着若干种实用、有效的文件压缩软
件,其中 Nico Mark Computing公司开发的 WinZip是
目前 Windows环境下最常用的压缩工具之一,它具有性
能稳定、操作简便、功能丰富、界面友好等优点。
? 除了 WinZip软件外还有其他一些压缩软件,如 WinRar
等。
3,3,8 防毒软件
? Norton AntiVirus是 Symantec公司推出的一套防毒软件,
它可以帮助用户侦测上万种已知和未知的病毒,并且每当开
机时,自动防护便会常驻在 System Tray,当用户从磁盘、
网络,Email文档中开启档案时便会自动侦测档案的安全性,
若档案内含病毒,便会立即警告,并作适当的处理。另外它
还附有 LiveUpdate的功能,可帮用户自动连上 Symantec的
FTP Server下载最新的病毒码,下载完后自动完成安装更新
的动作。
? Norton Antivirus 2004将在恶意软件进入计算机系统接口
之前对其封杀,并且自动对电子邮件,即时信息( IM)附件
进行监控。
? Norton Antivirus 2004能够扫描压缩文件
中的病毒,这些病毒通常经过点对点网络或
者 IM工具进行传播。同时,Norton
Antivirus 2004还包括了能够侦查间谍软件
的程序。
金山毒霸
? 另一个功能较强使用比较普遍的防毒软
件是 金山毒霸,这是金山公司立足网络
信息安全领域发布的防毒安全软件产品,
其嵌入式反病毒技术、双引擎杀毒、启
发式查毒功能等受到业界的好评。
? 金山公司曾以国内最快的反应速度发布了红色代码 2
( CodeRed2)、齿轮先生( Sircam)、尼姆达
( Nimda)、求职信( Wantjob,Klez)、蠕虫王
( SQLSlammer)等众多恶性病毒的有效解决方案,
体现了金山毒霸系列产品的技术实力。
? 金山公司推出的反病毒产品金山毒霸 6进一步加强了对
病毒、木马程序的防杀能力以及对网络攻击的防护功能。
金山毒霸 6公测版具备金山毒霸 6、金山网镖 6的完整功
能,免费支持在线数据升级。
小 结
? 操作系统和编译程序式计算机系统软件中最重要的两种软件,
本节对程序设计语言的翻译系统做了简单介绍,帮助读者了
解一般高级程序设计语言被翻译成可以执行的机器指令的过
程。另外,对计算机操作系统作了介绍,列举了以 Windows、
UNIX为代表的常用操作系统,应该对操作系统在计算机系统
中所起的作用有所了解,对操作系统的发展也应引起读者的
重视。
? 下载软件、压缩软件、病毒防范软件等工具软件式日常工作
中必需的,通过对这些软件功能的了解和使用,能更好地利
用工具做好各项工作,同时学会在网上找到所需要的资源的
方法。
Thanks