《第3章计算机系统的软件》由会员分享,可在线阅读,更多相关《第3章计算机系统的软件(147页珍藏版)》请在金锄头文库上搜索。
1、第第3 3章章 计算机系统的软件计算机系统的软件本章要点与学习要求:本章要点与学习要求:计算机软件概念、分类计算机软件概念、分类 (熟悉)(熟悉)程序设计语言程序设计语言 (了解)(了解)数据结构的定义、分类数据结构的定义、分类 (熟悉)(熟悉)编译原理的过程编译原理的过程 (掌握)(掌握)操作系统的分类、功能操作系统的分类、功能 (掌握)(掌握)软件工程的生命周期、模型软件工程的生命周期、模型 (熟悉)(熟悉)第第3 3章章 计算机系统的软件计算机系统的软件教学章节教学章节教学章节教学章节计算机软件概述计算机软件概述3.1算法与数据结构算法与数据结构3.2程序设计语言程序设计语言3.3编译原
2、理编译原理3.5操作系统操作系统3.6软件工程软件工程3.7数据库系统数据库系统3.4第第3 3章章 计算机系统的软件计算机系统的软件教学目的教学目的 本讲主要介绍计算机软件的基本概念本讲主要介绍计算机软件的基本概念,对计算机软件有总体上了解对计算机软件有总体上了解教学重点与难点教学重点与难点 软件定义软件定义 软件分类软件分类 计算机系统的组成计算机系统的组成3.1 3.1 计算机软件概述计算机软件概述计算机软件概述计算机软件概述第第3 3章章 计算机系统的软件计算机系统的软件教学引入 在第二章,我们学习了计算机的内部组成,在第二章,我们学习了计算机的内部组成,那么是谁控制这些硬件让它为我们
3、服务?那么是谁控制这些硬件让它为我们服务? 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件程程序序作作为为商商品品以以有有形形介介质质为为载载体体进进行行交交易易, ,称称做做软软件件。即即软软件件是是指指为为运运行行、维维护护、管管理理及及应应用用计计算算机机所所编编制制的的所所有有程程序序及及其其文文档档资资料料的总和。的总和。软件的特性:软件的特性: 软件是功能、性能相对完备的程序系统 软件是具有使用性能的软设备 软件是信息商品 软件是一种只有过时而无“磨损”的商品3.1.1 3.1.1 什么是软件什么是软件什么是软件什么是软件 P106P106 上一页上一页
4、返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件系系统统软软件件:软软件件制制售售商商为为释释放放硬硬件件潜潜能能、方方便便使使用用而而配配备备的的软件。软件。OS、语言编译/解释系统、网络软件、数据库管理软件、各种服务程序、界面工具箱等支持计算机正常运作和“通用”的软件。应用软件:指解决某一应用领域问题的软件。应用软件:指解决某一应用领域问题的软件。财会软件、通信软件、科技计算软件、CAD/CAM软件等。3.1.2 3.1.2 软件的分类软件的分类软件的分类软件的分类 P107P107 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的
5、软件三类软件的关系三类软件的关系三类软件的关系三类软件的关系 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件常用软件常用软件操作操作系统系统群件群件系统系统办公办公软件软件系统工系统工具软件具软件管理计算机系统的软硬件资料,合理地组织计算机工作流程,并为用户使用计算机提供良好的工作环境。如Windows等。 一类日常办公的软件,如Office编程语言一般是以一个集成环境的形式出现的。如:Visual Stutio 。可以帮助操作系统更有效地完成系统的管理和维护。如反病毒软件程序开程序开程序开程序开发工具发工具发工具发工具Internet工具软件工具软件多
6、媒体多媒体处理处理数据库数据库是信息管理的中心,如Access、SQL Server一种基于电子邮件的应用系统软件,它拓宽了电子邮件的内涵,涵养了很多通信协作功能。如Notes、Exchange Server、Group Wise在CPU一级提供多媒体指令,实现对多媒体的直接支持。基于网络环境和Internet 环境的应用软件,如Web服务器、FTP 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件3.1.4 3.1.4 计算机系统的组成计算机系统的组成计算机系统的组成计算机系统的组成 P108-109P108-109 上一页上一页 返返 回回下一页下一页
7、 第第3 3章章 计算机系统的软件计算机系统的软件计算机系统的体系结构计算机系统的体系结构计算机系统的体系结构计算机系统的体系结构 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 软件概念;件概念; 软件分件分类; 计算机系算机系统的的组成;成; P194 1、2教教教教 学学学学 小小小小 结结结结作作作作 业业业业 返返 回回 上一页上一页第第3 3章章 计算机系统的软件计算机系统的软件 教学目的教学目的 本讲主要介绍算法和数据结构的基本概念,以及几种常用的数据结构 教学重点与难点教学重点与难点 1. 算法的基本概念 2. 线性表 3. 栈 4. 队
8、列 5. 树3.2 3.2 算法与数据结构算法与数据结构算法与数据结构算法与数据结构第第3 3章章 计算机系统的软件计算机系统的软件教学引入 计算机内部有很多数据需要我们处理,那计算机内部有很多数据需要我们处理,那么计算机是按照什么形式处理这些数据的?么计算机是按照什么形式处理这些数据的? 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件典型典型问题排序问题汉诺塔问题n皇后问题旅行商问题问题类型型排序查找串处理图问题组合问题几何问题数值问题3.2.1 3.2.1 为什么要学习算法与数据结构为什么要学习算法与数据结构为什么要学习算法与数据结构为什么要学习算法与数据结构 上
9、一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件问题的描述的描述建立数学模型建立数学模型算法算法设计算法的正确性算法的正确性证明明算法分析算法分析算法的程序算法的程序实现2. 2. 计算机求解问题的过程计算机求解问题的过程计算机求解问题的过程计算机求解问题的过程 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件算法算法+数据数据结构构=程序程序对算法的研究主要包括两方面内容:算法的研究主要包括两方面内容:一是如何设计算法,常用的算法设计方法有分治递归、贪心法、回溯法、动态规划、分支限界等;二是对给定算法,如何分析它的效率
10、和性能。数据的数据的结构分构分为逻辑结构和物理构和物理结构构逻辑结构反映数据成员之间的逻辑关系物理结构反映数据成员在计算机内部的存储安排。 3. 3. 学习算法与数据结构的意义学习算法与数据结构的意义学习算法与数据结构的意义学习算法与数据结构的意义 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件算法概念算法概念算法原意指计算步骤或规则在计算机科学中,算法指用计算机求解某一问题的方法算法特征算法特征有穷性(Finiteness)确定性(Definiteness)有效性(Effectiveness)有0个或多个输入项至少有一个输出项 3.2.2 3.2.2
11、算法基础算法基础算法基础算法基础 P113P113 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件算法描述算法描述自然语言描述流程图描述伪代码描述算法算法结构构顺序结构选择(分支)结构循环结构 3.2.2 3.2.2 算法基础算法基础算法基础算法基础 (序)(序)(序)(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件算法算法设计方法方法递归技术分治法贪心算法回溯法动态规划法算法分析算法分析 时间复杂性指一个算法在计算机上运算所花费的时间 空间复杂性指一个算法在计算机上运算所花费的空间 3.2.2 3.2.2
12、算法基础算法基础算法基础算法基础 (序)(序)(序)(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件书 名作者名登录号分类号出版年月计算机病毒危机相杰超920253TP306/1092.5实用数据结构霍义兴871470TP31/7187.1计算机系统结构苏东庄841153TP303/1284.1数字逻辑王玉龙875027TP315/2087.5例子:图书书目表例子:图书书目表例子:图书书目表例子:图书书目表 P122P122 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件数据数据定义:一切可输入计算机并能为计
13、算机所处理的描述客观事物的符号,称为数据。在计算机中,数据的定义是广泛的,数、字符、图形、声音都可是计算机处理的对象,统称为数据分类数值数据:应用于科学计算的程序,它们的组织较为简单,如变量,数组,简单表等。关心的是计算速度与精度。非数值数据:应用于商业或管理的程序,它们组织较为复杂,关心的是按什么规则组织数据,使其占空间少,存取快,并有利于维护(增删、修改)3.2.3 3.2.3 数据结构基础数据结构基础数据结构基础数据结构基础 P121P121 数据结构就是一门研究非数值性程序设计中计算机操作的对象以及它们之间的关系和运算等的学科。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计
14、算机系统的软件计算机系统的软件数数据据类类型型:数数据据的的定定义义域域。常常见见的的数数据据类类型型有有字字符符型型、整整数数型型、逻逻辑辑型型、数数组、集合、记录等。组、集合、记录等。数据项(数据项(date itemdate item):):是数据的是数据的最小单位最小单位。 数据元素(数据元素(date elementdate element):是数据项的:是数据项的集合集合(或称(或称记录记录)。)。 数数据据对对象象(data data objectobject):它它是是具具有有相相同同特特性性的的数数据据元元素素的的集集合合。 如如整整数数数据对象的集合。数据对象的集合。结构(
15、结构(data structuredata structure):):数据元素之间的相互关系。数据元素之间的相互关系。数数据据结结构构(data data structurestructure):它它是是带带有有结结构构的的数数据据元元素素的的集集合合。数数据据结结构构是数据组织形式,反应数据之间的关系,但不涉及数据的具体内容。是数据组织形式,反应数据之间的关系,但不涉及数据的具体内容。1. 1. 基本概念基本概念基本概念基本概念 P122P122 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件书 名作者名登录号分类号出版年月计算机病毒危机相杰超9202
16、53TP306/1092.5实用数据结构霍义兴871470TP31/7187.1计算机系统结构苏东庄841153TP303/1284.1数字逻辑王玉龙875027TP315/2087.5数据项数据项数据元素数据元素数数 据据例子:图书书目表例子:图书书目表例子:图书书目表例子:图书书目表第第3 3章章 计算机系统的软件计算机系统的软件数数据据的的逻辑结构构:指指数数据据元元素素之之间的的逻辑关关系系,它它与与数数据据在在计算机中的存算机中的存储方式无关。方式无关。线性结构。数据之间存在前后顺序关系,除第一个元素和最后一个元素外,其他结点都有唯一一个前驱和一个后继结点(一对一关系)。包括数组、链
17、表、栈和队列等。树形结构。数据之间存在顺序关系,除了一个根结点外,其他结点都有唯一一个前驱结点,且可以有多个后继结点(一对多关系)。网状结构。每个结点都可以有多个前驱和多个后继结点(多对多关系)3.2.3 3.2.3 数据结构数据结构数据结构数据结构 (序)(序)(序)(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件数据的存数据的存储结构:指数据的构:指数据的逻辑结构到构到计算机存算机存储器的映像。器的映像。顺序存储结构将逻辑上相邻的数据元素存储在物理上相邻的存储单元里。它主要存储线性结构的数据。结点之间的关系由物理相邻关系决定,结点中只有信息域,
18、所以存储密度大,空间利用率高。数据结构中第i个结点的存储地址可由以下公式求得LiL0(i-1)k插入、删除运算会引起相应结点的大量移动。链式存储结构打破了计算机存储单元的连续性,可以将逻辑上相邻的两个数据元素存放在物理上不相邻的存储单元中。结点中除数据外,还有表示链接信息的指针域,因此与顺序存储结构相比,占用更大的存储空间。逻辑上相邻结点物理上不一定相邻,可用于线性表、树、图等多种逻辑结构存储插入、删除等操作灵活方便,不需要大量移动结点,只需修改结点的指针值即可3.2.3 3.2.3 数据结构数据结构数据结构数据结构 (序)(序)(序)(序) 上一页上一页 返返 回回下一页下一页 第第3 3章
19、章 计算机系统的软件计算机系统的软件顺序存储结构顺序存储结构顺序存储结构顺序存储结构 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件链式存储结构链式存储结构链式存储结构链式存储结构 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件定定义线性表(Linear List)是 n 个数据元素的有限序列(a1,a2,ai,an)。其中元素ai可以是一个数、或是一个符号、也可以是更复杂的信息。性性质同一线性表中的元素必定属于同一类数据对象; 除a1元素外,每个元素都仅有一个直接前趋; 除an元素外,每个元素都仅有一个直接后继;
20、 各元素的下标表示了该元素在线性表中的位置。2. 2. 线性表线性表线性表线性表 P123P123 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件数数组。它它是是n个个类型型相相同同的的数数据据元元素素构构成成的的序序列列,它它们连续存存储在在计算算机机的的存存储器器中中,且且数数组中中的的每每个个元元素素占占据相同的存据相同的存储空空间。对数数组的描述通常包含下列的描述通常包含下列5种属性种属性数组名称。声明数组第一个元素在内存中的起始位址。维度。每一元素所含数据项的个数,如一维数组、二维数组等。数组下标。元素在数组中的储存位置。数组元素个数。是数组下
21、标上限与数组下标下限的差+1。数组类型。声明此数组的类型,它决定数组元素在内存所占有的空间大小。2. 2. 线性表线性表线性表线性表 (序)(序)(序)(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件链表表:它它是是0个个或或多多个个称称为结点点的的元元素素构构成成的的序序列列,每每个个结点点除除了了存存储数数据据外外还包包含含一一个个或或多多个个称称为指指针的的链接,指向接,指向链表中其他元素。表中其他元素。2. 2. 线性表线性表线性表线性表 (序)(序)(序)(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机
22、系统的软件栈结构构定义:一种插入和删除操作都只能在尾端进行的线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。特点:是一种后进先出(LIFO)的线性表,也就是说,栈的操作是按后进先出(LIFO:Last In First Out) 的原则进行的。栈的存的存储结构:构:顺序存储:占有一片连续的存储空间链式存储:也称为链栈,它是一种限制运算的链表,即规定链表中的插入和删除运算只能在链表开头进行。栈的基本运算:的基本运算:入栈( 在栈的顶部插入元素 )出栈(删除栈顶元素)外取栈顶位置上的元素置为一个空栈判定是否为空栈。 2. 2. 线性表线
23、性表线性表线性表 (序)(序)(序)(序)重点 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件a1a2an-1an栈底栈底栈顶栈顶入栈入栈出栈出栈入栈和出栈的动画演示入栈和出栈的动画演示入栈和出栈的动画演示入栈和出栈的动画演示 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件栈的顺序存储结构栈的顺序存储结构 栈的链式存储结构栈的链式存储结构 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件队列定义:仅允许在一端进行插入,另一端进行删除的线性表,称为队队列定义:仅允许在一端进行插入
24、,另一端进行删除的线性表,称为队列列(queue)(queue)。允许插入的一端称为队尾。允许插入的一端称为队尾(rear)(rear),允许删除的一端称为队,允许删除的一端称为队头头队列的特点:先进先出队列的特点:先进先出(FIFO)(FIFO)。队列的存储结构:队列的存储结构:顺序结构顺序结构、链式结构链式结构队列的基本操作:队列的基本操作:入队列(在队列Q的队尾插入元素); 出队列(删除队列Q的队头元素); 取出队列Q的队头元素; 置队列Q为一个空队列; 2. 2. 线性表线性表线性表线性表 (序)(序)(序)(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件
25、计算机系统的软件顺序存储结构:顺序存储结构:将队列中元素全部存入一个一维数组中将队列中元素全部存入一个一维数组中, ,数组的低下标一数组的低下标一端为队头端为队头, ,高下标一端为队尾,将这样的队列看成是顺序队列高下标一端为队尾,将这样的队列看成是顺序队列 。若一维数。若一维数组中所有位置上都被元素装满,称为队满,即尾指针组中所有位置上都被元素装满,称为队满,即尾指针rearrear指向一维数组最指向一维数组最后后, ,而头指针指向一维数组开头,称为队满。而头指针指向一维数组开头,称为队满。链式存储结构:链式存储结构:称为链队列,可以用带头结点的单链表作为队列的链式存称为链队列,可以用带头结点
26、的单链表作为队列的链式存储结构。储结构。frontA B C D Erear队列的存储结构队列的存储结构队列的存储结构队列的存储结构 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件出队列出队列a1 a2 an入队列入队列队头队头队尾队尾入队列和出队列的动画演示入队列和出队列的动画演示入队列和出队列的动画演示入队列和出队列的动画演示 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 一个图G=是一个数据结构,它由两部分组成:一个有限集合V,它的元素称为顶点;另一个有限集合E,它的元素由顶点对构成,称为边。如果每对顶点之
27、间都没有顺序,也就是说,顶点对(u,v)和顶点对(v,u)是相同的,我们说图G是无向的,如图(a)所示。否则,称为有向的,边的方向是从顶点u到达顶点v,如图(b)所示。 3. 3. 图图图图 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件3. 3. 图图图图 (序)(序)(序)(序) 上一页上一页 返返 回回下一页下一页 邻邻接接矩矩阵阵。n n个个顶顶点点的的邻邻接接矩矩阵阵是是一一个个n nn n阶阶的的布布尔尔矩矩阵阵,用用来来表表示图的结点间的相邻关系。示图的结点间的相邻关系。邻邻接接表表。是是链链表表一一个个集集合合,其其中中每每一一个个顶顶点
28、点用用一一个个邻邻接接链链表表表表示示,该该链链表表包包含含了了和和这这个个顶顶点点邻邻接接的的所所有有顶顶点点(即即所所有有和和该该顶顶点点有有边边相相连连的顶点)的顶点)赋赋权权图图:图图的的每每条条边边对对应应一一个个数数值值,在在实实际际应应用用中中这这些些数数值值往往往往是是距离、运费、时间等。这些值称为边的权或成本。距离、运费、时间等。这些值称为边的权或成本。邻接矩阵。当存在一条从结点i到结点j的边时,矩阵元素aij的值就是这条边的权重;当不存在这样一条边时,则用一个特殊符号表示。邻接表。邻接表的结点中不仅包含邻接结点的名字,还必须包含相应的边的权重。第第3 3章章 计算机系统的软
29、件计算机系统的软件4. 4. 树树树树 上一页上一页 返返 回回下一页下一页 树和森林:连通无回路的图称为树,如图树和森林:连通无回路的图称为树,如图a a所示。有的图所示。有的图虽然不是树,但它的每个子图(连通分支)是树,则称虽然不是树,但它的每个子图(连通分支)是树,则称为森林,如图为森林,如图b b所示。所示。树有两个性质:树有两个性质:树的边数=树的顶点数减1。树的任意两个顶点之间有且仅有一条通路。图a 树示例 图b 森林示例 第第3 3章章 计算机系统的软件计算机系统的软件4. 4. 树树树树 (序)(序)(序)(序) 上一页上一页 返返 回回下一页下一页 根树:任选树的一个顶点,将
30、它作为树的根。在对根树根树:任选树的一个顶点,将它作为树的根。在对根树的描述中,根通常放在最顶上(树的第的描述中,根通常放在最顶上(树的第0 0层),与根邻接层),与根邻接的顶点放在根的下面(第的顶点放在根的下面(第1 1层),再下面是和根距离两条层),再下面是和根距离两条边的顶点(第边的顶点(第2 2层),然后依此类推。层),然后依此类推。第第3 3章章 计算机系统的软件计算机系统的软件内部结点与叶子结点:内部结点与叶子结点:除根结点外,有后继的结点称为内部结点除根结点外,有后继的结点称为内部结点没有后继的结点称叶子结点(或树叶)没有后继的结点称叶子结点(或树叶)父结点与子结点:父结点与子结
31、点:某结点的上层结点称为它的父结点;某结点的上层结点称为它的父结点;把其下层结点称为孩子结点把其下层结点称为孩子结点 树的深度:树的深度:从根结点算起的树的层次。从根结点算起的树的层次。树的高度:树的高度:是从根到叶结点的最长路径的长度。是从根到叶结点的最长路径的长度。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件5. 5. 有序树有序树有序树有序树 上一页上一页 返返 回回下一页下一页 有序树:是一棵根树,树中每一顶点的所有子女都是有序有序树:是一棵根树,树中每一顶点的所有子女都是有序的。的。二叉树:有序树中所有顶点的子女个数都不超过两个的称二叉树:
32、有序树中所有顶点的子女个数都不超过两个的称为二叉树,并且每个子女不是父母的左子女就是父母的右为二叉树,并且每个子女不是父母的左子女就是父母的右子女。子女。 第第3 3章章 计算机系统的软件计算机系统的软件 分分析析:根据顺序存储和链接存储的线性表优、缺点的分析,可以发现选项C中顺序存储的线性表便于进行增、删操作是不正确的,而本题恰好让我们选择错误的说法,则必是选项C无疑。例例1:下面关干线性表的叙述中,错误的是(:下面关干线性表的叙述中,错误的是( )。)。A)线性表采用顺序存储,必须占用一片连续的存储单元)线性表采用顺序存储,必须占用一片连续的存储单元B)线性表采用链接存储,不必占用一片连续
33、的存储单元)线性表采用链接存储,不必占用一片连续的存储单元C)线性表采用顺序存储,便于进行插入和删除操作)线性表采用顺序存储,便于进行插入和删除操作D)线性表采用链接存储,便于插入和删除操作)线性表采用链接存储,便于插入和删除操作结论:答案应选结论:答案应选 C C) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 上一页上一页 返返 回回下一页下一页 例例2:求下列各图的相邻矩阵:求下列各图的相邻矩阵 第第3 3章章 计算机系统的软件计算机系统的软件教学小结教学小结 数据结构的基本概念数据结构的基本概念 线性表线性表 栈栈 队列队列 树树作作 业业P1
34、95 7、9、10、13、15。 返返 回回 上一页上一页第第3 3章章 计算机系统的软件计算机系统的软件计算机可以直接识别和执行,效率高指令的二进制代码难记住,人工编写机器语言很繁琐,易出错不同的计算机有不同的机器语言,因而通用性很差。 面向过程的第四代语言。如SQL、PB、Delphi。 面向对象的编程语言和网络语言,如VB、VB、C+、HTML和Java。 各种软件开发工具,如CASE不能为计算机硬件直接识别与执行,必须通过汇编器的系统软件“汇编”,才能被硬件执行。汇编语言指令与机器语言指令一一对应,为低级语言不同的计算机具有不同的汇编语言,记忆指令助记符较记忆指令二进制代码容易,但仍然
35、繁琐。用高级语言编写的源程序必须通过“翻译”生成目标程序,才能被计算机所执行。不同计算机只要配备某种高级语言编译程序,可运行该高级语言源程序,通用性强 与一般的自然语言相比,具有严格、小巧、没有二义性特点第一代第一代语言语言第二代第二代语言语言第三代第三代语言语言第四代第四代语言语言第五代第五代语言语言智能化语言,如PROLOG 3.3.1 3.3.1 程序设计语言发展概述程序设计语言发展概述程序设计语言发展概述程序设计语言发展概述P129P129重点第第3 3章章 计算机系统的软件计算机系统的软件 FORTRAN COBOL PASCAL C过程化编程语言过程化编程语言面向对象编程语言面向对
36、象编程语言面向人工智能的语言面向人工智能的语言 专专 用用 语语 言言 常用程序设计语言常用程序设计语言常用程序设计语言常用程序设计语言 C+ JavaHTMLSQLLISP语言 Prolog 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 概述概述面向过程的程序中,程序划分成一个主模块和若干个子模块。 数据公用 数据与代码相互分离面向对象程序中,将数据以及处理这些数据的例程全部封装在一起形成一个类。3.3.3 3.3.3 面向对象程序设计面向对象程序设计面向对象程序设计面向对象程序设计 P141P141 上一页上一页 返返 回回下一页下一页 第第3 3
37、章章 计算机系统的软件计算机系统的软件对象、象、类、方法、方法对象是相关数据和方法的结合体。各个对象既是独立的实体,又通过消息相互作用。类是同种对象的集合与抽象。类是一种抽象的数据类型,它是所有具有一定共性的对象的抽象。属于类的某一个对象则被称为是类的一个实例,是类的一次实例化的结果。方法是对数据的一种操作。对象、方法和消息象、方法和消息“消息”是程序语句实现的一个命令。 对象间的联系通过消息来完成。 方法可以通过外界发“消息”来激活。面向对象的基本概念面向对象的基本概念面向对象的基本概念面向对象的基本概念 P120P120 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软
38、件计算机系统的软件面向对象程面向对象程面向对象程面向对象程序语言特征序语言特征序语言特征序语言特征 继承性继承性继承性继承性多态性多态性多态性多态性封装性封装性封装性封装性将将数数据据和和操操作作这这些些数数据据的的方方法法代代码码组组织织到到一一起起,即即将将数数据据和和方方法法放放在在同同一一个个对对象象中,可提高数据的安全性中,可提高数据的安全性一个个接接口口能能够够做做多多种种用用途途,而而其其特特定定的的用用途途由由其其特特定定的的环境所决定环境所决定一一个个新新类类可可以以从从现现有有的的类类中中派派生生出出来来,新新类类具具有有父父类类中中的的所所有有特特性性,直直接接继承了父类
39、的数据和方法继承了父类的数据和方法 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 教学目的教学目的 对数据库系统作进一步的介绍,包括数据库系统特点、数据库管理系统的组成和分类,使大家对数据库系统有进一步的了解。 教学重点与难点教学重点与难点 数据库创建 数据库操作3.4 3.4 数据库管理系统数据库管理系统数据库管理系统数据库管理系统第第3 3章章 计算机系统的软件计算机系统的软件教学引入 我们知道,计算机要处理大量的数据,那我们知道,计算机要处理大量的数据,那么计算机是如何保存这些数据?么计算机是如何保存这些数据? 返返 回回下一页下一页 第第3 3
40、章章 计算机系统的软件计算机系统的软件数据数据库DB:相关信息或数据的有:相关信息或数据的有规则的集合。的集合。数数据据库管管理理系系统DBMS:一一种种数数据据库管管理理软件件,其其职能能是是维护数数据据库,接接受受并并完完成成用用户程程序序或或命命令令提提出出的的对数数据据进行行输入入、编辑、排排序、序、检索、合并和索、合并和输出等操作出等操作请求。求。 数据数据库系系统:由数据:由数据库、数据、数据库管理系管理系统和用和用户组成成数据库系统的有关术语数据库系统的有关术语数据库系统的有关术语数据库系统的有关术语 P145P145 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机
41、系统的软件计算机系统的软件数据库图书馆数据图书外存书库用户读者数据模型书卡格式数据库管理系统图书馆管理员数据的物理组织方法 图书存放方法 用户对数据库的操作读者对图书馆的访问用户对数据库的操作读者对图书馆的访问 (使用数据操纵语言对数据借书、还书等(使用数据操纵语言对数据借书、还书等 检索、插入、删除、修改)检索、插入、删除、修改)数据库系统与图书馆的比较数据库系统与图书馆的比较数据库系统与图书馆的比较数据库系统与图书馆的比较 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件层次模型次模型满足的条件:有一个记录类型没有父结点。 其它记录类型有且只有一个父结
42、点。3.4.2 3.4.2 数据模型数据模型数据模型数据模型 P146P146 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件网状模型网状模型满足的条件: 有一个以上记录类型没有父结点。 至少有一个记录类型多于一个父结点3.4.2 3.4.2 数据模型(序)数据模型(序)数据模型(序)数据模型(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件关系模型关系模型 满足的条件: 事物与事物之间的联系用二维表格的形式来描述。表中每一行是一个记录,在关系中称为元组;表中每一列是一个字段,在关系中称为属性。 3.4.2 3
43、.4.2 数据模型(序)数据模型(序)数据模型(序)数据模型(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件基本概念:基本概念:表:存储和管理数据的基本单元。它是一种格式化的二维数组。字段:二维表的每一列在关系中称为属性,每个属性都有一个属性名,属性值则是各个元组属性的取值。 字段类型:字段的数据类型及其长度。记录:是一组相关数据项的集合,用于描述一个对象在某方面的属性。主键:能够唯一确定表中的一条记录的一个或几个字段。外键:关系中某个属性或属性组合并非主键,但却是另一个关系的主键,称此属性或属性组合为本关系的外部关键字。关系之间的联系是通过外部关
44、键字实现的。索引:提供对数据项的快速访问。关系数据库关系数据库关系数据库关系数据库 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件学生与所在系的关系学生与所在系的关系系与负责人的关系系与负责人的关系学生、课程与成绩的关系学生、课程与成绩的关系学号学号学生名学生名系名系名940101940202940301940401 李春梅李春梅刘刘 力力陈文秀陈文秀徐徐 兵兵 计算机系计算机系自动化系自动化系机械系机械系化工系化工系 学号学号课程名课程名成绩成绩940101940202940301940401 :语言语言:系名系名系主任名系主任名计算机系计算机系 自动
45、化系自动化系 机械系机械系 化工系化工系 郑郑 敏敏李龙李龙 江江金金 剑剑 齐齐 晶晶 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件数据定数据定义语言言DDL:用来定:用来定义数据数据库的数据模型的数据模型数据操作数据操作语言:用来表达用言:用来表达用户对数据数据库的操作的操作请求。求。查询数据库中的信息向数据库插入新的信息从数据库中删除信息修改数据库中的信息SQL语言是一个通用型的、功能言是一个通用型的、功能强大的关系数据大的关系数据库语言言数据定义语句:数据库的定义由 CREATE TABLE、ALTER TABLE和DROP TABLE3种语句
46、构成。数据库查询是数据库的核心操作。SQL语言提供了SELECT语句进行数据库查询数据更新语句的作用是在当前表中添加、删除和修改记录。包括INSERT、DELETE和UPDATE三条语句。3.4.3 3.4.3 数据库语言数据库语言数据库语言数据库语言 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件设计步步骤需求分析 概念结构设计逻辑结构设计物理结构设计应用程序设计系统运行与维护3.4.4 3.4.4 数据库设计数据库设计数据库设计数据库设计 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件常用数据常用数据库开开发平
47、台平台AccessSQL ServerVisual FoxProPower BuilderOracleSybase3.4.4 3.4.4 数据库设计(序)数据库设计(序)数据库设计(序)数据库设计(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件数据库数据库发展史发展史文件系统阶段文件系统阶段人工管理阶段人工管理阶段关系数据库系统关系数据库系统 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件64主主要要是是指指50年年代代中中期期以以前前的的这段段时间,此此时的的计算算机机还很很简陋陋,连完完整整的的操操作作系
48、系统都都没没有有。因因此此,数数据据只只能放在卡片上或其他介能放在卡片上或其他介质上,由人来手工管理。上,由人来手工管理。 人工管理阶段人工管理阶段人工管理阶段人工管理阶段 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件65主主要要是是指指50年年代代后后期期到到60年年代代中中期期的的这段段时间,此此时的的计算算机机已已经有有了了操操作作系系统。在在操操作作系系统基基础之之上上建建立立的的文文件件系系统已已经成成熟熟并并广广泛泛应用用。因因此此,人人们自自然然想想到到用用文文件件把把大大量量的的数数据据存存储在在磁磁盘这种种介介质上上,以以实现对数数据
49、的永久保存和自据的永久保存和自动管理以及管理以及维护; 文件系统阶段文件系统阶段文件系统阶段文件系统阶段 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件66与文件系与文件系统相比的相比的优点点:数据是结构化的面向系统,减少了数据冗余可以用数据结构化查询语言对数据库中的数据进行操作关系数据库系统关系数据库系统关系数据库系统关系数据库系统 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件XML/RDBMS混合数据混合数据处理将在未来得到快速的理将在未来得到快速的发展展数据集成和数据数据集成和数据仓库将向内容管理将向内容管
50、理过渡渡基于基于Internet的自的自动化管理化管理支持商支持商业智能成重点智能成重点数据数据库技技术与多学科技与多学科技术的有机的有机结合合2 2数据库技术发展趋势数据库技术发展趋势数据库技术发展趋势数据库技术发展趋势 P154P154 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 分分析析:在数据库系统阶段,数据的冗余度只能说明显减小了,节约了存储空间而没有完全消除,因此说“无数据冗余”不够准确。例例3:数据管理技术随着计算机技术的发展而发展。数据库阶段具:数据管理技术随着计算机技术的发展而发展。数据库阶段具有很多特点,但下面列出的特点中哪一个不
51、是数据库阶段的特点有很多特点,但下面列出的特点中哪一个不是数据库阶段的特点?(?( )A)无数据冗余)无数据冗余 B)采用复杂的数据结构)采用复杂的数据结构C)数据共享)数据共享 D)数据具有较高的独立性)数据具有较高的独立性结论:答案应选结论:答案应选 A A) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件数据数据库管理系管理系统的分的分类 关系数据关系数据库 数据数据库的的发展展历史史 现阶段常用数据段常用数据库简介介 数据数据库技技术的新的新发展展 P195 17P195 17、1818、1919教教教教 学学学学 小小小小 结结结结作作作作 业
52、业业业 返返 回回 上一页上一页第第3 3章章 计算机系统的软件计算机系统的软件教学目的教学目的介绍高级语言源程序是如何被计算机识别,对编译原理有大致了解教学重点与难点教学重点与难点 词法分析 语法分析 中间代码生成 代码优化 目标代码生成 表格管理和出错处理3.5 3.5 编译原理编译原理编译原理编译原理第第3 3章章 计算机系统的软件计算机系统的软件教学引入 我们向计算机编写的代码如何被计算机识别?我们向计算机编写的代码如何被计算机识别? 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 编译程序编译程序是实现将源程序是实现将源程序“翻译翻译”为目标程序的系统为目标
53、程序的系统软件,它由若干个程序组成,故又称为软件,它由若干个程序组成,故又称为编译系统编译系统。 翻译外文资料的大致过程:翻译外文资料的大致过程:识别单词语法分析初译加工高级语言程序高级语言程序(源程序(源程序.C)C语言语言编译器编译器连接装连接装配程序配程序运行机器运行机器语言程序语言程序目标程序目标程序 .obj可执行程序可执行程序 .exe结果结果 上一页上一页 返返 回回下一页下一页 词法分析:对源程序逐个字符地进行扫描,以识别出各个单词符号,并分别归类。词法分析:对源程序逐个字符地进行扫描,以识别出各个单词符号,并分别归类。语法分析:根据程序设计语言的语法规则,将词法分析器所提供的
54、单词符号串构成语法分析:根据程序设计语言的语法规则,将词法分析器所提供的单词符号串构成一个语法分析树。一个语法分析树。语义分析:检查各句子的语法树。语义分析:检查各句子的语法树。中间代码的生成:向目标代码过度的一种编码,其形式尽可能和机器的汇编语言相中间代码的生成:向目标代码过度的一种编码,其形式尽可能和机器的汇编语言相似,以便于下一步的代码生成。似,以便于下一步的代码生成。代码优化:对中间代码程序做局部或全局优化,可使最后生成的目标代码程序运行代码优化:对中间代码程序做局部或全局优化,可使最后生成的目标代码程序运行更快,占用存储空间更小。更快,占用存储空间更小。目标代码生成:由代码生成器生成
55、目标机器的目标代码程序,并完成数据分段、选目标代码生成:由代码生成器生成目标机器的目标代码程序,并完成数据分段、选定寄存器等工作,然后生成机器可执行的代码。定寄存器等工作,然后生成机器可执行的代码。高级语言源程序的执行过程高级语言源程序的执行过程高级语言源程序的执行过程高级语言源程序的执行过程重点 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件高高级语言的言的单词属性的属性的类型:型: 基本字(保留字) 标识符(如变量名、数组名、过程名等) 常数 运算符 + - * / 栈顶运算符,则将其压入运算符栈; 若当前运算符栈顶运算符,则弹出栈顶运算符和操作数栈
56、中的相应操作数,完成其运算,并把计算结果压入操作数栈中; 若当前运算符=栈顶运算符,则弹出运算符栈的栈顶符号,并读入下一单词,什么计算也不进行。反反复复执行行上上述述过程程,直直至至句句末末符符“#”,操操作作数数栈中中只只剩剩下下一一个个结果果值,表明分析正确。否,表明分析正确。否则出出错。算符优先分析法(具体算法算符优先分析法(具体算法算符优先分析法(具体算法算符优先分析法(具体算法) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件中中间代代码的定的定义中间代码是一种结构简单、含义明确的记号系统,它的表现形式应该既有利于后阶段的代码优化,又要在逻辑上
57、便于理解和最终机器(目标)指令代码生成 。 常用的中常用的中间代代码形式形式三元式四元式逆波兰式3.5.4 3.5.4 中中中中 间间间间 代代代代 码码码码 生生生生 成成成成 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件三元式表示:三元式表示: (OP ARG1 ARG2 ) 即: (运算符 第一运算项 第二运算项) 例:例:对于于K=(I+J)*K可翻可翻译成:成: (1) + I J (2) * (1) K (3) = K (2)三元式表示三元式表示实质上是一种上是一种树形形结构的矩构的矩阵描述,它等价于上面描述,它等价于上面语法法树。三三三三
58、 元元元元 式式式式 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件表示:表示: (OP ARG1 ARG2 RESULT ) (运算符 第一运算项 第二运算项 运算结果) 例:例:对于于K=(I+J)*K可翻可翻译成:成: + I J T1 * T1 K T2 = T2 K四元式与三元式的相似与区四元式与三元式的相似与区别相似:排列顺序和实际计算顺序相同区别:四元式之间的联系是通过临时变量实现的,较三元式易于改变,有利于后一阶段的代码优化操作。 四四四四 元元元元 式式式式 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系
59、统的软件逆逆波波兰表表示示法法是是一一种种把把运运算算符符号号写写在在运运算算项之之后后的的表表示示方方法,也称法,也称后后缀表示法表示法: 例: a+b 可表示为 ab+ a*b 可表示为 ab * 对于赋值语句 K=(I+J)*K,可翻译成 I J+K*K=逆逆逆逆 波波波波 兰兰兰兰 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件代代码优化的分化的分类及常用方法及常用方法逻辑优化(纯代码优化):在目标代码生成之前,对语法分析后的中间代码进行优化,主要完成程序结构上的等价变换。 在生成目标代码过程中,根据机器所提供的设备条件,为充分利用机器指令系统和
60、通用寄存器等而进行的优化,这类优化于具体的机器有关。 常用方法常用方法删除多余的运算、合并已知量、代码外提、强度削弱、变换循环控制条件、复写传播、删除无用赋值等。 物理优化与具体的机器有关。3.5.4 3.5.4 代码优化代码优化代码优化代码优化 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件例如,有代例如,有代码序列:序列: A=B+C+D E=B+C+F W=B+C+Y删除多余的运算可除多余的运算可优化化为: T=B+C A=T+D E=T+F W=T+Y代码优化(举例)代码优化(举例)代码优化(举例)代码优化(举例) 上一页上一页 返返 回回下一页
61、下一页 第第3 3章章 计算机系统的软件计算机系统的软件基本概念基本概念把语法分析后生成的中间代码或经过代码优化后的中间代码变换成目标代码目目标代代码一般有以下三种形式一般有以下三种形式可立即执行的机器语言代码,代码中的所有地址已是真正的机器指令地址。 待装配的机器语言模块。当需要执行时,由连接装配程序把它们和某些运行程序连接起来,转换成能执行的机器语言代码汇编语言代码,运行时尚需经过汇编程序汇编,转换成可执行机器语言代码目目标代代码生成生成时应着重解决两个着重解决两个问题如何使生成的目标代码尽量短; 如何充分利用计算机的寄存器,以减少目标代码中访问内存的次数。3.5.6 3.5.6 目标代码
62、生成目标代码生成目标代码生成目标代码生成 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件例例4. 写出赋值语句写出赋值语句K=(I+J)-K的四元式中间代码表示形式及其转换后的汇编的四元式中间代码表示形式及其转换后的汇编语言指令语言指令 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 表表格格管管理理的的主主要要任任务就就是是对各各类编译信信息息进行行登登录、查询和和更更新新等工作。等工作。 出出错处理理的的主主要要任任务是是对程程序序中中所所包包含含的的各各种种错误(如如语法法,语义错误等等)进行行诊断和断和处理
63、。理。常能处理的错误有如下三种: 不正确地使用语言的各种成分。 输入和书写时可能出现的错误。 超出编译程序或计算机的某些限制,如数组维数太多、下标越界、数组占用空间太大等。可分为语法和语义错误两大类。 语法错误是指程序结构不符合词法或语法规则。 语义错误是指程序结构不符合语义规则或超越具体计算机系统的限制。3.5.73.5.7表格管理和出错处理表格管理和出错处理表格管理和出错处理表格管理和出错处理 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件处理源程序理源程序错误的方法有两种:的方法有两种: 一是试图对错误进行校正; 二是尽可能把错误限制在一个局部范围
64、内,避免这种错误影响程序其他部分的分析和检查。3.5.73.5.7表格管理和出错处理(序)表格管理和出错处理(序)表格管理和出错处理(序)表格管理和出错处理(序) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 词法分析词法分析 语法分析语法分析 语义分析与中间代码产生语义分析与中间代码产生 优化优化 目标代码生成目标代码生成 P195 25补充:写出赋值语句补充:写出赋值语句y=(A+2*B)-4*C的三种中间代码形式。的三种中间代码形式。教学小结教学小结教学小结教学小结作作作作 业业业业 返返 回回 上一页上一页第第3 3章章 计算机系统的软件计算机
65、系统的软件教学目的教学目的 本讲主要介绍操作系统的定义、分类、功能教学重点与难点教学重点与难点 操作系统分类 操作系统功能3.6 3.6 操作系统操作系统操作系统操作系统第第3 3章章 计算机系统的软件计算机系统的软件教学引入 在前面的学习中,我们知道计算机由硬件在前面的学习中,我们知道计算机由硬件和软件组成,那么由谁来协调两者的工作?和软件组成,那么由谁来协调两者的工作? 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 操操作作系系统:是是由由程程序序和和数数据据结构构组成成的的大大型型系系统软件件,它它负责计算算机机的的全全部部软硬硬件件资源源的的分分配配、调度度
66、与与管管理理,控控制制各各类程程序的正常序的正常执行,并行,并为用用户使用使用计算机提供良好的算机提供良好的环境境 从用户角度看:操作系统可以看成是计算机的硬件扩充 人机交互方式来看:操作系统是用户与机器的接口 管理者角度看:操作系统也是管理资源的程序扩充操作系统的概念操作系统的概念操作系统的概念操作系统的概念 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件五大类型五大类型批批处理理操操作作系系统:用用户布布置置任任务后后,直直到到运运行行结束无法干涉束无法干涉单道批处理系统 多道批处理系统分分时操作系操作系统实时操作系操作系统网网络操作系操作系统分布式
67、分布式操作系操作系统传传统统现现代代操作系统的分类操作系统的分类操作系统的分类操作系统的分类重点 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件重要概念重要概念 单道:每次只调一个用户程序进入内存让它运行。 多道:是指内存中驻留多个程序或一个程序的多个程序段。 多重处理系统:一般指多CPU系统。 终端:一个具有显示设备和键盘控制台,既是输入设备,又是输出设备。单道道批批处理理系系统:用用户一一次次可可以以提提交交多多个个作作业,系系统逐逐个个处理理作作业,一一个作个作业处理完理完毕再再处理另一个作理另一个作业。多多道道程程序序设计技技术:就就是是在在内内
68、存存中中同同时存存放放并并运运行行几几道道相相互互独独立立的的程程序序。它是一种宏它是一种宏观上并行,微上并行,微观上串行的运行方式。上串行的运行方式。多道批多道批处理操作系理操作系统系系统=批批处理系理系统+多道程序多道程序设计技技术;其优点是成批处理作业,提高了作业吞吐量、可靠性、计算能力、并行处理能力。缺点是缺乏交互性。主要运用在大计算量的科学计算上。批处理操作系统批处理操作系统批处理操作系统批处理操作系统 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件分分时技技术:将将CPU的的时间分分成成很很短短的的时间片片(几几十十毫毫秒秒-几几百百毫毫秒秒
69、)轮流流为每每个个用用户工工作作,采采用用这种种技技术的的操操作作系系统称称为分分时操作系操作系统。优点:系统交互性好、及时性、多用户同时性、每个终端的独占性缺点:用户的优先级不易控制。 与批与批处理系理系统的区的区别批处理系统中,一个作业可以长时间占用CPU直至作业执行完成;分时系统中,一个作业只能在一个时间片的时间内使用CPU。分时操作系统分时操作系统分时操作系统分时操作系统 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件实实时时操操作作系系统统要要求求计计算算机机对对外外来来信信息息能能以以足足够够快快的的速速度度进进行行处处理理,并并在在被被控控
70、对对象象允允许许的的时时间间范范围围内内作作出出快快速速响响应应。主要应用在实时处理之中。主要应用在实时处理之中。优点:是响应速度快,可靠性高。缺点:交互能力差、资源利用率低。 与分时系统的相似与区别:与分时系统的相似与区别:相似:均采用时间片分时技术,具有交互性和及时性。实时系统:一般是专用的,交互能力差、只允许用户访问数量有限的专用程序;系统响应时间短(微秒毫秒)分时系统:具有很强的通用性,有很强的交互功能,允许用户运行或修改自己的应用程序;系统响应时间长(23秒)实时操作系统实时操作系统实时操作系统实时操作系统 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机
71、系统的软件网网络操操作作系系统是是通通过通通信信设施施将将物物理理上上分分散散的的具具有有自自治治功功能能的的多多个个计算算机机系系统相相互互联起起来来,实现信信息息交交换、资源共享、可互操作和源共享、可互操作和协作作处理的系理的系统。示例:Netware、Windows NT。网网络软件件配配置置:网网络通通信信协议、网网址址(IP地地址址或或域域名地址)名地址)网网络硬硬件件配配置置:服服务器器、配配置置了了网网卡卡的的工工作作站站、路路由器、交由器、交换机、机、HUB等。等。网络操作系统网络操作系统网络操作系统网络操作系统 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统
72、的软件计算机系统的软件通过通信网络将物理上分布的具有自治功能的计算机系统通过通信网络将物理上分布的具有自治功能的计算机系统互连起来,实现信息交换和资源共享、协作完成任务互连起来,实现信息交换和资源共享、协作完成任务与网络操作系统的区别与网络操作系统的区别分布式系统分布式系统网络系统网络系统协议协议没有制定标准一系列协议操作系统数量操作系统数量一个/或将多个操作系统统一管理独立的多个透明性透明性系统对用户透明用户要了解细节联系程度联系程度逻辑上紧偶合系统松偶合分布式操作系统分布式操作系统分布式操作系统分布式操作系统 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统
73、的软件DOSMicrosoft Windows UnixLinux Mac OS 典型操典型操作系统作系统 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件操作系统操作系统操作系统操作系统五大功能五大功能五大功能五大功能存储器存储器存储器存储器文件设备设备作业处理器处理器处理器处理器实现多道程序运行下对处理器的分配和调度,使一个处理器为多个程序交替服务,最大限度地提高CPU的利用率主存的分配与回收主存的保护主存的扩充主要包括对I/O设备的分配、启动、完成及回收。主要的技术:虚拟设备技 术、屏蔽技术向用户提供实现作业控制的手段。按一定策略实现作业调度又称为信
74、息管理,它是对计算机的软件资源的管理,其中包括文件的存储、检索、共享、保护等的方法、技术及算法重点 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件操作系操作系统特性统特性并发执行并发执行资源共享资源共享虚拟技术虚拟技术并发性也叫“共行性”,多个作业并发执行或一个用户作业的多个程序段间并发执行;多个输入输出设备间并发工作计算机系统的硬、软件资源可供多个拥有授权的程序或用户共同使用“虚拟”就是把物理实体映射为一个或多个逻辑实体. 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件主要功能主要功能解决多道程序运行下如何把CP
75、U的工作时间合理、自动地分配给所要执行的各个程序 ,以提高CPU的利用率,并使用户满意。 在操作系在操作系统中通常把中通常把CPU的管理分的管理分为两两级: 作业管理 进程管理3.6.2 3.6.2 处理器管理处理器管理处理器管理处理器管理 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件作业(作业(jobjob):是用户提交给计算机系统的独立运行单):是用户提交给计算机系统的独立运行单位,它由程序极其所需数据和有关的命令所组成。位,它由程序极其所需数据和有关的命令所组成。 经历四个阶段:经历四个阶段:作业及其状态转换作业及其状态转换作业及其状态转换作业及
76、其状态转换 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件进程组成进程组成程序,数据,进程序,数据,进程控制块(程控制块(PCB) 单击下面按钮进单击下面按钮进行运行演示行运行演示进程概念进程概念12进程状态进程状态3进程及其状态的转换进程及其状态的转换进程及其状态的转换进程及其状态的转换指指一一个个程程序序在在给给定定的的工工作作空空间间和和数数据据集集合合上上的的一一次次执执行行过过程程,它它是是操操作作系系统统进进行行资资源源分分配配和和调调度度的的一一个个独独立立单位单位就就绪绪状状态态:该该进进程程已已获获得得除除CPU之之外外的的所所有资源。
77、有资源。 执执 行行 状状 态态 : 正正 在在CPU上执行的进程上执行的进程 。 阻阻塞塞状状态态:需需等等待待除除CPU之外其他资源之外其他资源进程状态动画演示进程状态动画演示程序管理器程序管理器 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件提高提高CPUCPU的利用率的利用率对进程时行对进程时行“细分细分”,一个进程可再分为多个线程,一个进程可再分为多个线程 UNIXUNIX:进程是:进程是CPUCPU的分的分配单位配单位 Windows:线程是CPU的分配单位 除了CPU以外,进程是在UNIX和WINDOWS中资源分配单位线程(线程(线程(线程
78、(threadsthreads) 上一页上一页 返返 回回下一页下一页 查看线程方法查看线程方法查看线程方法查看线程方法 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件n虚拟内存用硬盘空间模拟内存 n存储器分配n地址的转换n信息的保护程序员编写程序内存中程序逻辑地址(从0开始)物理地址 分区法 页式 段式段页式存储管理n多个进程共享存储器,分配、释放存储器 n进程需要的存储空间是变化的n调进或调出进程n移动进程功能功能常用常用方法方法分配分配地址地址转换保保护n防止一个进程的存储空间被其它的进程破坏 n软件和硬件结合的保护措施 3.6.3 3.6.3 存
79、储管理存储管理存储管理存储管理第第3 3章章 计算机系统的软件计算机系统的软件设备的种类设备的种类设备的种类设备的种类 设备设备设备设备功能功能功能功能资源资源分配分配所属所属关系关系传输传输特性特性 输入/输出设备:用于信息输入/输出的设备 存储设备:用于存储信息的外存储器系统设备:在操作系统生成时已配置于系统中的各种标准设备。 用户设备:由用户自己提供的并由系统实施管理的非标准设备独享设备:一次只能分配给一个用户使用共享设备:多个用户可以交替使用的设备 虚拟设备:把一台物理设备改造成若干台同类的虚拟设备块设备:信息按块来组织和处理的设备。字符设备:信息按字符为单位组织和处理的设备 上一页上
80、一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件设备管理设备管理即插即用即插即用设备驱动程序设备驱动程序使用设备之前,该设备驱动程序必须被安装通用即插即用通用即插即用把设备连接到计算机上后无需手动配置可以立即使用。 让计算机自动发现和使用基于网络的硬件设备,网络打印机、Internet网关和消费类电子设备。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件文文件件的的定定义:文文件件是是一一个个在在逻辑上上具具有有完完整整意意义的的一一组相相关关信信息息有有序集合序集合文文件件系系统:是是指指操操作作系系统中中专门负责存存取取
81、和和管管理理外外存存储器器上上文文件件信信息的那部分息的那部分软件的集合。件的集合。文件目文件目录文件的属性:文件的属性: 文件名:文件名. 扩展名 文件类型 文件属性 文件操作见名知意见名知意UNIX中大小写有区别中大小写有区别Windows中大小写无区别中大小写无区别 3.6.5 3.6.5 文件管理文件管理文件管理文件管理 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件文件大小文件大小占用空间占用空间文件建立或修改的日期与时间文件建立或修改的日期与时间所有者信息所有者信息重要的属性有:重要的属性有: 只读:文件只能读,不能修改或删除 隐藏:在一般的
82、情况下不显示 存档:任何一个新创建或修改的文件都有存档属性。文文文文 件件件件 属属属属 性性性性 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件一一个个文文件件中中所所存存储储可可能能是是数数据据,也也可可能能是是程程序序代代码码,不不同格式的文件通常都会有不同的应用和操作。同格式的文件通常都会有不同的应用和操作。文件的常用操作有:文件的常用操作有: 建立文件 打开文件 写入文件 删除文件 属性更改文文文文 件件件件 操操操操 作作作作 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件文文件件目目录(file di
83、rectory)为每每个个文文件件设立立一一个个表表目目。最最简单的的文文件件目目录表表目目至至少少要要包包含含文文件件名名、物物理理地地址址、文文件件结构构信信息息和和存存取取控控制制信信息息等等,以以建建立立起起文文件件名名与与物物理理地地址址的的对应关关系系,实现按名存取文件。按名存取文件。 常用的文件目常用的文件目录结构构单级目录结构 二级目录结构 多级目录结构 文文文文 件件件件 目目目目 录录录录 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件单级文件目录单级文件目录单级文件目录单级文件目录 上一页上一页 返返 回回下一页下一页 第第3 3章
84、章 计算机系统的软件计算机系统的软件二级文件目录二级文件目录二级文件目录二级文件目录 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件多级文件目录多级文件目录多级文件目录多级文件目录 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件文件命名文件命名约定定文件文件组成:成:文件名:由一个单一的字母和数字集合,标示一个文件,通常描述了文件的内容。扩展名:描述文件的内容。文件名和扩展名间用 隔开。通配符通配符*:用于替代一组字符?:用于替代一个字符文文文文 件件件件 名名名名 上一页上一页 返返 回回下一页下一页 第第3 3
85、章章 计算机系统的软件计算机系统的软件DOS和和Win 3.1Win 95以上以上Mac OSUNIX文件名最大长度文件名最大长度8 3255 331个字符,无扩展名14256字符,扩展名任意文件名与扩展名文件名与扩展名分隔字符分隔字符无是否允许空格是否允许空格否是是否是否允许数字是否允许数字是是是是不允许的字符不允许的字符/;=“:.|*?/:“?|无!#$%&*()”;保留字保留字AUX、COM1、COM2、COM3、COM4、CON、LPT1、LPT2、LPT3、PRN、NULL无版本不同区分大小写区分大小写否否是是-使用小写不同操作系统文件命名约定不同操作系统文件命名约定不同操作系统文
86、件命名约定不同操作系统文件命名约定 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件文件类型文件类型扩展名扩展名说明说明 可执行程序EXE、COM可执行程序文件 源程序文件C、CPP、BAS程序设计语言的源程序文件 Office文档DOC、XLS、PPTWord、Excel、Powerpoint创建的文档 流媒体文件WMV、RM、QT能通过Internet播放的流式媒体文件 压缩文件ZIP、RAR压缩文件 网页文件HTM、ASP前者是静态的,后者是动态的 图像文件BMP、JPG、GIF不同格式的图像文件 音频文件WAV、MP3、MID 不同格式的声音文件文
87、件扩展名文件扩展名文件扩展名文件扩展名 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 系统文件 库文件 用户文件按文件的用途分类按文件的用途分类按文件的保护级别分按文件的保护级别分按文件信息的流向分按文件信息的流向分文件的保存期限分文件的保存期限分文件分类文件分类文件分类文件分类 只读文件 读写文件 自由文件 临时文件 永久文件 档案文件 输入文件 输出文件 输入输出文件 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件在在计算算机机系系统中中,文文件件作作为软件件资源源,有有的的可可供供事事先先规定定的的多多个个
88、用用户公用,称公用,称为文件的共享。文件的共享。只只允允许核核准准的的用用户使使用用而而不不准准其其它它用用户窃窃用用的的文文件件,称称为文文件件的的保密保密。不不论什什么么文文件件,系系统必必须确确保保其其安安全全,以以防防止止硬硬件件的的偶偶然然故故障障或或人人为地破坏所引起的文件信息的地破坏所引起的文件信息的丢失,称失,称为文件的保文件的保护实现文件保密的方法:文件保密的方法: 存取控制矩阵 口令 密码 文件的共享、保密与保护文件的共享、保密与保护文件的共享、保密与保护文件的共享、保密与保护 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 分分析析
89、:在若一个程序在运行中需要不停地向打印机送数据打印,由于打印机速度较慢,程序不得不暂停(即CPU处于等待状态),等待每一次打印结束,这样就大大地浪费了CPU的时间,降低了系统效率。如果采用缓冲技术,在内存中开辟一块区域作为暂存空间,程序的数据输出都立即被存储到这个缓冲区中,程序得以继续运行,CPU也不必等待,暂存的数据再由打印机依次打出。可见,采用缓冲技术后,CPU和打印机是在同时工作,因而改善了系统效率。例例5:CPU输出数据的速度远远高于打印机的打印速度输出数据的速度远远高于打印机的打印速度,为解决这个为解决这个矛盾,可以采用以下哪种技术?(矛盾,可以采用以下哪种技术?( )A)虚存技术)
90、虚存技术 B)缓冲技术)缓冲技术 C)通道技术)通道技术 D)并行技术)并行技术结论:答案应选结论:答案应选 B B) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件操作系操作系统的基本功能的基本功能处理机的管理理机的管理存存储器的管理器的管理设备管理的功能管理的功能文件的文件的结构和文件的构和文件的组织管理方式管理方式 P195 27P195 27、2828、3131、3333、3939教学小结教学小结作作作作 业业业业 返返 回回 上一页上一页第第3 3章章 计算机系统的软件计算机系统的软件教学目的教学目的 本讲主要介绍软件的定义、生命周期、模型教学
91、重点与难点教学重点与难点 软件工程生命周期 操作系统模型3.7 3.7 软件工程软件工程软件工程软件工程第第3 3章章 计算机系统的软件计算机系统的软件教学引入 我们知道一个建筑物需要经过图纸、打地基、盖我们知道一个建筑物需要经过图纸、打地基、盖房等一系列过程,您知道开发软件的过程吗?房等一系列过程,您知道开发软件的过程吗? 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 2020世纪世纪6060年代年代中期以前中期以前 从从2020世纪世纪6060年代中期到年代中期到7070年代中期年代中期 19681968年年北大西洋公约组织的计算机科学家在联邦德国召开北大西洋公
92、约组织的计算机科学家在联邦德国召开国际会议,讨论软件危机问题。国际会议,讨论软件危机问题。软件作坊软件作坊软件工程软件工程3.7.1 3.7.1 软件工程概述软件工程概述软件工程概述软件工程概述 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 定义定义软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题 两方面的问题两方面的问题如何开发软件,以满足对软件日益增长的需求如何维护数量不断膨胀的已有软件软件危机的介绍软件危机的介绍软件危机的介绍软件危机的介绍 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件软件
93、工程定件工程定义:软件工程是以系件工程是以系统的、的、规范的、定量的方法范的、定量的方法应用于用于软件的开件的开发、运、运营和和维护,以及,以及对这些方法的研究些方法的研究 软件工程学的主要内容是件工程学的主要内容是软件开件开发技技术和和软件工程管理。件工程管理。 软件开发技术软件开发技术方法:完成软件开发的各项任务的技术方法,回答“怎样做”的问题;工具:为运用方法而提供的自动的或半自动的软件工程支撑环境;过程:为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。软件工程管理学软件工程管理学 软件工程经济学 软件管理学( 费用管理、人员组织、工程计划管理、软件配置
94、管理)2 2软件工程学的主要内容软件工程学的主要内容软件工程学的主要内容软件工程学的主要内容 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件定定义:软件件从从定定义、开开发、使使用用和和维护直直到到废弃弃所所经历的的时期期组成成软件定义,3个阶段问题定义、可行性研究和需求分析软件开发:具体设计和实现在前一个时期定义的软件。它通常由下述4个阶段组成总体设计、详细设计 (系统设计)编码和单元测试、综合测试(系统实现)运行维护:使软件持久地满足用户的需要。软件生存周期软件生存周期软件生存周期软件生存周期重点 上一页上一页 返返 回回下一页下一页 要解决的问题是
95、什么要解决的问题是什么问题性质、工程目问题性质、工程目标和规模的报告标和规模的报告分析员:实际用户分析员:实际用户+负责人负责人是否有解决办法是否有解决办法?分析员分析员 高层逻辑模型,准确高层逻辑模型,准确和具体的工程规模和目标,和具体的工程规模和目标,成本成本/效益分析等可行性报效益分析等可行性报告告为了解决的问题,目为了解决的问题,目标系统必须做什么?标系统必须做什么?准确确定系统的功能准确确定系统的功能系统的逻辑模型系统的逻辑模型(数据流图(数据流图+数据字典数据字典+简要算法)简要算法)如何解决如何解决这些问题这些问题模块划分模块划分软件结构软件结构如何具体地实现系统:每个模块的流程
96、图如何具体地实现系统:每个模块的流程图(程序的详细规格说明)(程序的详细规格说明)通过各种类型的测试,通过各种类型的测试,使软件达到预定的要求使软件达到预定的要求写出正确的容易理解和写出正确的容易理解和容易维护的程序模块容易维护的程序模块 通过各种必要的维护活动使通过各种必要的维护活动使系统持久地满足用户的需要系统持久地满足用户的需要生命周期各阶段的基本任务生命周期各阶段的基本任务生命周期各阶段的基本任务生命周期各阶段的基本任务第第3 3章章 计算机系统的软件计算机系统的软件瀑布模型瀑布模型快速原型模型快速原型模型软件重用模型件重用模型 螺旋模型螺旋模型3.7.2 3.7.2 软件开发模型软件
97、开发模型软件开发模型软件开发模型重点 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件瀑瀑布布模模型型遵遵循循软件件生生存存期期的的划划分分,明明确确规定定每每个个阶段段的的任任务,各各个个阶段的工作按段的工作按顺序展开,恰如奔流不息拾序展开,恰如奔流不息拾级而下的瀑布。而下的瀑布。 特点:特点: 阶段间具有顺序性和依赖性 推迟实现的观点 质量保证的观点优点:点: 可强迫开发人员采用规范的方法; 严格地规定了每个阶段必须提交的文档; 要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证缺点缺点: 瀑布模型是由文档驱动的 由于瀑布模型几乎完全依由于瀑布
98、模型几乎完全依赖于于书面的面的规格格说明,很可能明,很可能导致最致最终开开发出的出的软件件产品不能真正品不能真正满足用足用户的需要。的需要。1 1 瀑布模型瀑布模型瀑布模型瀑布模型 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件快快速速原原型型是是快快速速建建立立起起来来的的可可以以在在计计算算机机上上运运行行的的程程序序,它它所所能能完完成成的功能往往是最终产品能完成功能的一个子集。的功能往往是最终产品能完成功能的一个子集。主要优点主要优点: :快速原型模型是不带反馈环的软件产品的开发基本上是线性顺序进行的。主要原因: 原型系统已经通过与用户交互而得到
99、验证,据此产生的规格说明文档正确地描述了用户需求 开发人员通过建立原型系统已经学到了许多东西,因此,在设计和编码阶段发生错误的可能性也比较小,这自然减少了在后续阶段需要改正前面阶段所犯错误的可能性。2 2 快速原型模型快速原型模型快速原型模型快速原型模型 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件这这种种开开发发模模型型旨旨在在开开发发具具有有各各种种一一般般性性功功能能的的软软件件模模块块,将将它它们们组组成成软软件件重重用用库库,这这些些模模块块设设计计时时考考虑虑其其适适应应各各种种界界面面的的接接口口规规格格,可可供供软件开发时利用。软件开发
100、时利用。优优点点是是减减少少软软件件生生产产中中的的重重复复开开发发,避避免免软软件件开开发发人人员员的的大大量量重重复复劳劳动,提高开发效率,缩短开发周期,降低开发成本。动,提高开发效率,缩短开发周期,降低开发成本。软软件件重重用用库库的的模模块块不不仅仅要要便便于于选选择择使使用用,而而且且还还应应具具有有允允许许扩扩充充、积积累其成分的性能。累其成分的性能。 3 3 软件重用模型软件重用模型软件重用模型软件重用模型 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件螺螺旋旋模模型型把把软软件件开开发发过过程程安安排排为为逐逐步步细细化化的的螺螺旋旋周周
101、期期序序列列,每每经经历历一一个个周周期期,系系统统就就细细化化和和完完善善一一些些。螺螺旋旋模模型型把把软软件件过过程程描描绘绘为为“计计划划风风险险分分析析原原型型用用户户评评审审”周周而而复复始始的的四四种种活活动动,将将其其称称为为一一个个螺螺旋旋周周期期。每每一一个个周周期期又又可可细细化化为为若若干干任任务务。这这种种模模型型对对大大型新产品特别有效。型新产品特别有效。 4 4 螺旋模型螺旋模型螺旋模型螺旋模型 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 P195 40、41、42 软件工程含义软件工程含义 软件生存周期软件生存周期 常用
102、的软件开发模型常用的软件开发模型教教教教 学学学学 小小小小 结结结结作作作作 业业业业 返返 回回 上一页上一页第第3 3章章 计算机系统的软件计算机系统的软件 1. 从从逻辑上来看,可以把数据上来看,可以把数据结构划分成构划分成D两个部分两个部分A.内部结构和外部结构 B.动态结构和静态结构C.顺序结构和非顺序结构 D.线性结构和非线性结构2、计算机能直接算机能直接执行的程序是行的程序是。 A. 源程序 B. 机器语言程序C. BASIC语言程序 D. 汇编语言程序D( )B( )一、单项选择题一、单项选择题 (单击题后的括号可显示本题答案)(单击题后的括号可显示本题答案)第第3 3章章
103、计算机系统的软件计算机系统的软件3、操操作作系系统是是为了了提提高高计算算机机的的工工作作效效率率和和方方便便用用户使使用用计算算机而配机而配备的一种的一种。A. 系统软件B.应用系统C.软件包D.通用软件4、下列、下列4种种软件中,属于件中,属于应用用软件的是件的是。 A. Linux系统B.财务管理系统C. Pascal编译系统D.QBASIC系统5、在完全二又、在完全二又树中,若一个中,若一个结点是叶点是叶结点,点,则它没有它没有。A.左子结点 B.右子结点C.左子结点和右子结点 D.左子结点A( )B( )C( )第第3 3章章 计算机系统的软件计算机系统的软件6一一个个队列列的的入入
104、列列序序列列是是1,2,3,4,则队列列的的输出出序序列列是是 。A.4,3,2,1B. l,2,3,4C. 1,4,3,2 D. 3,2,4,l7 若若已已知知一一个个栈的的输入入序序列列为1,2,3,n,其其输出出序序列列为P1,P2,Pn,若,若P1=n,则Pi为A.I B. n-i C. n-i1D. 不确定8、汇编语言是一种言是一种。 A.目标程序语言B.面向机器的低级符号语言C.机器语言D.高级语言B( )C( )B( )第第3 3章章 计算机系统的软件计算机系统的软件9如如果果分分时系系统的的时间片片一一定定,那那么么 ,则响响应时间越越长。A.用户数越少B. 用户数越多C. 内
105、存越少D. 内存越多10在在的情况下,系的情况下,系统出出现死死锁。A.计算机系统发生了重大故障B. 有多个封锁的进程同时存在C. 若干进程因竞争资源而无休止地相互等待它方释放已占有的资源D资源数大大小于进程数或进程同时申请的资源数大大超过资源总数B( )C( )第第3 3章章 计算机系统的软件计算机系统的软件11操操作作系系统的的功功能能是是进行行文文件件管管理理、处理理机机管管理理、作作业管理、管理、设备管理管理 啊啊A管理。管理。A. 存储器B. 进程C. 系统D. JCB12文件系文件系统是指是指。A文件的集合B文件的目录C实现文件管理的一组软件D文件,管理文件的软件及数据结构的总体1
106、3操作系操作系统通通过对进程程进行管理。行管理。A.进程名B. 进程控制块C. JCBD. 进程控制区A(和)C( )B( )第第3 3章章 计算机系统的软件计算机系统的软件14操作系操作系统是一种是一种。A.通用软件 B. 系统软件C. 应用软件D. 编译程序15操操作作系系统是是现代代计算算机机系系统不不可可缺缺少少的的组成成部部分分,操操作作系系统是是为了了提提高高计算算机机的的 和和方方便便用用户使使用用计算算机机而而配配备的基本的基本软件。件。A. 速度B.利用率C. 灵活性D. 兼容性16文件系文件系统的主要目的是的主要目的是。A.实现对文件的按名存取B.实现虚拟存储器C. 提高外
107、部设备的输入输出速度D. 用于存储系统文档B( )B( )A( ) 第第3 3章章 计算机系统的软件计算机系统的软件17文件系文件系统中用中用管理文件。管理文件。 A链表结构B指针C目录D段页表18为了了允允许不不同同用用户的的文文件件具具有有相相同同的的文文件件名名,通通常在文件系常在文件系统中采用中采用。 A. 解释重名B. 多级目录C. 约定D. 路径19PowerBulider和操作系和操作系统之之间的关系是的关系是。A.前者调用后者B. 后者调用前者C.两者互相调用D. 不能调用C( )B( )A( ) 第第3 3章章 计算机系统的软件计算机系统的软件20硬硬盘和和软盘是是目目前前常
108、常见的的两两种种存存储介介质,第第一一次次使用使用时。A.可直接使用,不必进行格式化B. 只有硬盘才必须先进行格式化C. 只有软盘才必须先进行格式化D. 都必须先进行格式化D( )第第3 3章章 计算机系统的软件计算机系统的软件1.计算机硬件能直接理解算机硬件能直接理解(执行行)的的语言是言是。2操操作作系系统、各各种种程程序序设计语言言的的处理理程程序序、数数据据库管管理理系系统、诊断程序以及系断程序以及系统服服务程序等都是程序等都是。 3软件包括件包括和文档。和文档。4.计算机算机软件一般分件一般分为和和两大两大类,以,以为后后缀的文件称的文件称为程序信息文件。程序信息文件。5.面向面向对
109、象程序象程序设计语言的三个特征是言的三个特征是、和和。机器语言 ( )系统软件 ( )程序 ( )系统软件 ( )应用软件 ( ).EXE或.COM ( )封装 ( )继承 ( )多态 ( )二、填空题(单击题后的括号可显示本空答案)二、填空题(单击题后的括号可显示本空答案)第第3 3章章 计算机系统的软件计算机系统的软件1.什么是软件?简述软件的分类。2.什么是程序设计语言?简述五代程序设计语言的主要特点。3.与面向过程的程序设计语言相比,面向对象的程序设计语言有何特点?4.解释与数据结构有关下列术语:数据项、数据元素、数据对象、数据结构5.与线性表的顺序存储结构相比,其链式存储结构有何优缺
110、点?6.为什么说栈和队列是两种特殊形式的线性表? 7.什么是二叉树?说明它的两种物理结构。8. 什么是无向图、有向图及带权图?举例说明。 9.简述编译程序的组成及各部分的主要功能。三、综合题三、综合题第第3 3章章 计算机系统的软件计算机系统的软件10. 写出赋值语句y=(A+2*B)-4*C的三种中间代码形式11. 简述操作系统的五大管理功能。12. 最基本的进程状态有哪些?说明进程状态之间的转换关系。13. 什么是文件和文件系统?14. 什么是文件目录?简述常用的三种文件目录结构的特点。15. 什么是软件工程?16. 什么是软件生存周期?简述该周期的组成及所要解决的问题17. 常用的软件开发模型有哪几种?三、综合题三、综合题