版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第3 3章章 计算机系统的软件计算机系统的软件第三章重点第第3 3章章 计算机系统的软件计算机系统的软件 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件典型问题典型问题排序问题(冒泡法,分治归并法)(会做题)查找问题(折半查找法)N的阶乘问题(递归算法)最优解问题即组合问题(贪心算法) (会做题) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件典型问题典型问题排序问题(冒泡法)(1)用冒泡法对下列数按从小到大进行排列 ,写出排序过程 2 4 5 3 1 7 2 4 3 5 1 7 2 4 3 1 5 7 2 4
2、3 1 5 7 2 3 4 1 5 7 2 3 1 4 5 7 2 1 3 4 5 7 1 2 3 4 5 7 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件典型问题典型问题排序问题(分治归并法) (2)用分治法对下列数按从小到大进行排列 ,分别写出一次归并序列,二次归并序列,三次归并序列。 2 4 5 3 1 7 一次归并序列为: 2 4 3 5 1 7二次归并序列为: 2 3 4 5 1 7三次归并序列为: 1 2 3 4 5 7 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件典型问题典型问题查找问题(折半查找
3、法) 算法思想:将数列按有序化(递增或递减)排列,查找过程中采用跳跃式方式查找,即先以有序数列的中点位置为比较对象,如果要找的元素值小于该中点元素,则将待查序列缩小为左半部分,否则为右半部分。通过一次比较,将查找区间缩小一半。折半查找是一种高效的查找方法。它可以明显减少比较次数,提高查找效率。但是,折半查找的先决条件是查找表中的数据元素必须有序。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件典型问题典型问题N的阶乘问题(递归算法) 算法思想:递归算法是把问题转化为规模缩小了的同类问题的子问题例:说明用递归算法求100!的步骤 100!=100*99!
4、99!=99*98! . . . 3!=3*2! 2!=2*1!=2 n!=n*(n-1)! 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件典型问题视频典型问题视频贪心算法思想:找出整体当中每个小的局部的最优解,并且将所有的这些局部最优解合起来形成整体上的一个最优解最优解问题即组合问题(贪心算法) (会做题)例:假设现有硬币面值为1元,0.5元,0.1元,若要求取硬币总额为1.5元,且使硬币数量最少,则(1)用贪心算法取硬币,解是什么?(2)这个解是不是最优解?若不是请给出最优解。例:假设现有硬币面值变为1.1元, 0.5元,0.1元,若要求取硬币总额为
5、1.5元,且硬币数量最少,则(1)用贪心算法取硬币,解是什么?(2)这个解是不是最优解?若不是请给出最优解。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件算法描述算法描述自然语言描述 流程图描述 伪代码描述 上一页上一页 返返 回回下一页下一页 如:求A,B,C三个数的最大值定义四个变量 a ,b,c,max 从键盘获取三个数据分别赋值给a,b,c 将a假定为最大值maxIf(bmax)则把b赋值给maxIf(cmax)则把c赋值给max输出max1 先比较A和B2 比较大的赋值给max 3 再比较max 和C4 如果C大,就把C赋值给max ,最大值
6、为max 开始输入ABCABMAX-AMAXMAXMAXmax)则把b赋值给maxIf(cmax)则把c赋值给max输出max1 先比较A和B2 比较大的赋值给max 3 再比较max 和C4 如果C大,就把C赋值给max ,最大值为max 开始输入ABCABMAX-AMAXMAXMAX 栈顶运算符,则将其压入运算符栈; 若当前运算符栈顶运算符,则弹出栈顶运算符和操作数栈中的相应操作数,完成其运算,并把计算结果压入操作数栈中; 若当前运算符=栈顶运算符,则弹出运算符栈的栈顶符号,并读入下一单词,什么计算也不进行。反复执行上述过程,直至句末符反复执行上述过程,直至句末符“#”#”,操作数栈中只剩
7、下一个,操作数栈中只剩下一个结果值,表明分析正确。否则出错。结果值,表明分析正确。否则出错。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件中间代码的定义中间代码的定义中间代码是一种结构简单、含义明确的记号系统,它的表现形式应该既有利于后阶段的代码优化,又要在逻辑上便于理解和最终机器(目标)指令代码生成 。 常用的中间代码形式常用的中间代码形式三元式四元式逆波兰式 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件三元式表示:三元式表示: (OP ARG1 ARG2 ) 即: (运算符 第一运算项 第二运算项) 例:对
8、于例:对于K=(I+J)K=(I+J)* *K K可翻译成:可翻译成: (1) + I J (2) * (1) K (3) = K (2)三元式表示实质上是一种树形结构的矩阵描述,它等价于上面语法树。三元式表示实质上是一种树形结构的矩阵描述,它等价于上面语法树。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件表示:表示: (OP ARG1 ARG2 RESULT ) (OP ARG1 ARG2 RESULT ) (运算符 第一运算项 第二运算项 运算结果) 例:对于例:对于K=(I+J)K=(I+J)* *K K可翻译成:可翻译成: + I J T1 *
9、 T1 K T2 = T2 K四元式与三元式的相似与区别四元式与三元式的相似与区别相似:排列顺序和实际计算顺序相同区别:四元式之间的联系是通过临时变量实现的,较三元式易于改变,有利于后一阶段的代码优化操作。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件逆波兰表示法是一种把运算符号写在运算项之后的表示方逆波兰表示法是一种把运算符号写在运算项之后的表示方法,也称法,也称后缀表示法后缀表示法: 例: a+b 可表示为 ab+ a*b 可表示为 ab * 对于赋值语句 K=(I+J)*K,可翻译成 I J+K*K= 上一页上一页 返返 回回下一页下一页 第第3
10、 3章章 计算机系统的软件计算机系统的软件代码优化的分类及常用方法代码优化的分类及常用方法逻辑优化(纯代码优化):在目标代码生成之前,对语法分析后的中间代码进行优化,主要完成程序结构上的等价变换。 在生成目标代码过程中,根据机器所提供的设备条件,为充分利用机器指令系统和通用寄存器等而进行的优化,这类优化于具体的机器有关。 常用方法常用方法删除多余的运算、合并已知量、代码外提、强度削弱、变换循环控制条件、复写传播、删除无用赋值等。 物理优化与具体的机器有关。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件例如,有代码序列:例如,有代码序列: A=B+C+D
11、 E=B+C+F W=B+C+Y删除多余的运算可优化为:删除多余的运算可优化为: T=B+C A=T+D E=T+F W=T+Y 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件基本概念基本概念把语法分析后生成的中间代码或经过代码优化后的中间代码变换成目标代码目标代码一般有以下三种形式目标代码一般有以下三种形式可立即执行的机器语言代码,代码中的所有地址已是真正的机器指令地址。 待装配的机器语言模块。当需要执行时,由连接装配程序把它们和某些运行程序连接起来,转换成能执行的机器语言代码汇编语言代码,运行时尚需经过汇编程序汇编,转换成可执行机器语言代码目标代码生
12、成时应着重解决两个问题目标代码生成时应着重解决两个问题如何使生成的目标代码尽量短; 如何充分利用计算机的寄存器,以减少目标代码中访问内存的次数。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件例例4. 写出赋值语句写出赋值语句K=(I+J)-K的四元式中间代码表示形式及其转换后的汇的四元式中间代码表示形式及其转换后的汇编语言指令编语言指令 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 表格管理的主要任务就是对各类编译信息进行登录、查询和更新表格管理的主要任务就是对各类编译信息进行登录、查询和更新等工作。等工作。
13、出错处理的主要任务是对程序中所包含的各种错误出错处理的主要任务是对程序中所包含的各种错误( (如语法如语法, ,语义语义错误等错误等) )进行诊断和处理。进行诊断和处理。常能处理的错误有如下三种: 不正确地使用语言的各种成分。 输入和书写时可能出现的错误。 超出编译程序或计算机的某些限制,如数组维数太多、下标越界、数组占用空间太大等。可分为语法和语义错误两大类。 语法错误是指程序结构不符合词法或语法规则。 语义错误是指程序结构不符合语义规则或超越具体计算机系统的限制。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件处理源程序错误的方法有两种:处理源程序错
14、误的方法有两种: 一是试图对错误进行校正; 二是尽可能把错误限制在一个局部范围内,避免这种错误影响程序其他部分的分析和检查。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 词法分析词法分析 语法分析语法分析 语义分析与中间代码产生语义分析与中间代码产生 优化优化 目标代码生成目标代码生成 P195 25补充:写出赋值语句补充:写出赋值语句y=(A+2*B)-4*C的三种中间代码形式。的三种中间代码形式。 返返 回回 上一页上一页第第3 3章章 计算机系统的软件计算机系统的软件教学目的教学目的 本讲主要介绍操作系统的定义、分类、功能教学重点与难点教学重点
15、与难点 操作系统分类 操作系统功能第第3 3章章 计算机系统的软件计算机系统的软件教学引入 在前面的学习中,我们知道计算机由硬件在前面的学习中,我们知道计算机由硬件和软件组成,那么由谁来协调两者的工作?和软件组成,那么由谁来协调两者的工作? 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 操作系统:是由程序和数据结构组成的大型系统软件,它负责计算机的操作系统:是由程序和数据结构组成的大型系统软件,它负责计算机的全部软硬件资源的分配、调度与管理,控制各类程序的正常执行,并为用全部软硬件资源的分配、调度与管理,控制各类程序的正常执行,并为用户使用计算机提供良好的环境户使用
16、计算机提供良好的环境 在屏幕上显示与用户交互的界面-用户界面 把程序加载到计算机内存(如:穿越火线) 协调程序与计算机硬件和软件之间的相互配合 管理信息在磁盘上的存储和检索方式 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件操作系统的类型实时操作系统实时操作系统单用户单用户/ /单任务操作系统单任务操作系统单用户单用户/ /多任务操作系统多任务操作系统多用户多用户/ /多任务操作系统多任务操作系统第第3 3章章 计算机系统的软件计算机系统的软件实时操作系统实时(实时(real-time)real-time)操作系统是一种操作系统是一种速度快速度快、相对较
17、、相对较小小的的OSOS;把实时操作系统把实时操作系统 内置到设备的电路中,而且不从磁内置到设备的电路中,而且不从磁盘驱动器加载,这时实时操作系统就成为嵌入式操作盘驱动器加载,这时实时操作系统就成为嵌入式操作系统;系统;响应时间为几毫秒或几微秒响应时间为几毫秒或几微秒应用:医疗诊断设备、生命维持系统、机器、科学仪应用:医疗诊断设备、生命维持系统、机器、科学仪器和工业系统器和工业系统第第3 3章章 计算机系统的软件计算机系统的软件单用户/单任务操作系统如:DOS第第3 3章章 计算机系统的软件计算机系统的软件单用户/多任务操作系统个人计算机通常用此类操作系统如:windows系列、MAC第第3
18、3章章 计算机系统的软件计算机系统的软件多用户/多任务操作系统又叫网络操作系统。服务器多使用此类操作系统:如:Unix,Linux系列第第3 3章章 计算机系统的软件计算机系统的软件五大类型五大类型批处理操作系统:用户布置任务后,直到运行结束无法批处理操作系统:用户布置任务后,直到运行结束无法干涉干涉单道批处理系统 多道批处理系统分时操作系统分时操作系统实时操作系统实时操作系统网络网络操作系统操作系统分布式分布式操作系统操作系统( (单机化的多处理机系统,文件的保持和单机化的多处理机系统,文件的保持和程序的处理对用户是透明的程序的处理对用户是透明的) )传传统统现现代代重点 上一页上一页 返返
19、 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件批处理系统批处理系统: :批量将作业输入计算机,进行成批处理,作业批量将作业输入计算机,进行成批处理,作业调度和切换由系统自动完成。调度和切换由系统自动完成。单道批处理系统:用户一次可以提交多个作业,但系统逐个单道批处理系统:用户一次可以提交多个作业,但系统逐个处理作业,一个作业处理完毕再处理另一个作业。处理作业,一个作业处理完毕再处理另一个作业。多道批处理操作系统系统:输入的成批作业先装入辅存,然多道批处理操作系统系统:输入的成批作业先装入辅存,然后同一批次的作业调入内存,当一个作业出现输入输出请求而后同一批次的作业调入内存
20、,当一个作业出现输入输出请求而让处理器空闲时,系统自动切换处理另一个作业。让处理器空闲时,系统自动切换处理另一个作业。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件分时技术:将分时技术:将CPUCPU的时间分成很短的时间片(几十毫秒的时间分成很短的时间片(几十毫秒- -几百几百毫秒)轮流为每个用户工作,采用这种技术的操作系统称为毫秒)轮流为每个用户工作,采用这种技术的操作系统称为分时操作系统。分时操作系统。优点:系统交互性好、及时性、多用户同时性、每个终端的独占性缺点:用户的优先级不易控制。 与批处理系统的区别与批处理系统的区别批处理系统中,一个作业可
21、以长时间占用CPU;分时系统中,一个作业只能在一个时间片的时间内使用CPU。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件实时操作系统要求计算机对外来信息能以足够快的速度进实时操作系统要求计算机对外来信息能以足够快的速度进行处理,并在被控对象允许的时间范围内作出快速响应。行处理,并在被控对象允许的时间范围内作出快速响应。主要应用在实时处理之中。主要应用在实时处理之中。优点:是响应速度快,可靠性高。缺点:交互能力差。 与分时系统的相同点与区别:与分时系统的相同点与区别:相同点:均采用时间片分时技术,具有交互性和及时性。实时系统:一般是专用的,交互能力差、
22、只允许用户访问数量有限的专用程序;系统响应时间短(微秒毫秒)分时系统:具有很强的通用性,有很强的交互功能,允许用户运行或修改自己的应用程序;系统响应时间长(23秒) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件网络操作系统是通过通信设施将物理上分散的具网络操作系统是通过通信设施将物理上分散的具有自治功能的多个计算机系统相互联起来,实现有自治功能的多个计算机系统相互联起来,实现信息交换、资源共享、可互操作和协作处理的系信息交换、资源共享、可互操作和协作处理的系统。统。示例:Netware、Windows NT。 上一页上一页 返返 回回下一页下一页 第第
23、3 3章章 计算机系统的软件计算机系统的软件特点:特点:1.1.分布性:分布式处理,但控制集中在服务器分布性:分布式处理,但控制集中在服务器2.2.并行性:无任务分配功能,任务均在本地计算机并行性:无任务分配功能,任务均在本地计算机上处理上处理3.3.透明性:透明性不是很强,文件存取时需要指定透明性:透明性不是很强,文件存取时需要指定存储路径存储路径4.4.共享性:只能实现服务器资源的共享共享性:只能实现服务器资源的共享5.5.健壮性:因为控制功能是集中的,所以系统可靠健壮性:因为控制功能是集中的,所以系统可靠性较差性较差 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件
24、计算机系统的软件分布式系统是一个一体化的系统,在整个系统中要有一个全局的分布式系统是一个一体化的系统,在整个系统中要有一个全局的操作系统,它负责全系统(包括每台计算机)的资源分配和调度操作系统,它负责全系统(包括每台计算机)的资源分配和调度、任务划分、信息传输、控制协调等工作,并为用户提供一个统、任务划分、信息传输、控制协调等工作,并为用户提供一个统一的界面、标准的接口。一的界面、标准的接口。系统中的每台计算机都有自己的处理器、存储器和外部设备,它系统中的每台计算机都有自己的处理器、存储器和外部设备,它们既可独立工作(自治性),亦可合作。们既可独立工作(自治性),亦可合作。 上一页上一页 返返
25、 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件特点:特点:1.1.分布性:处理和控制都是分布式的分布性:处理和控制都是分布式的2.2.并行性:具有任务分配功能,可以将任务分配到并行性:具有任务分配功能,可以将任务分配到多个处理单元上,使任务并行执行多个处理单元上,使任务并行执行3.3.透明性:隐藏系统实现细节,文件访问时只需要透明性:隐藏系统实现细节,文件访问时只需要文件名无需指定路径便可达到访问目的。透明性文件名无需指定路径便可达到访问目的。透明性强。强。4.4.共享性:所有用户对分布在各个站点上的所有资共享性:所有用户对分布在各个站点上的所有资源均实现共享。源均实现共
26、享。5.5.健壮性:由于处理和控制功能的分布性,所以系健壮性:由于处理和控制功能的分布性,所以系统可靠性较强统可靠性较强 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件DOSMicrosoft Windows UnixLinux Mac OS 典型操典型操作系统作系统 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件1981 MS-DOS1981 MS-DOS1984 MAC OS1984 MAC OS1985 Windows1985 Windows19691969贝尔实验室贝尔实验室UnixUnix芬兰人芬兰人Li
27、nusLinus TorvaldsTorvalds 600600天天 第第3 3章章 计算机系统的软件计算机系统的软件文件设备设备作业实现多道程序运行下对处理器的分配和调度,使一个处理器为多个程序交替服务,最大限度地提高CPU的利用率主存的分配与回收主存的保护主存的扩充主要包括对I/O设备的分配、启动、完成及回收。主要的技术:虚拟设备技 术等向用户提供实现作业控制的手段。按一定策略实现作业调度又称为信息管理,它是对计算机的软件资源的管理,其中包括文件的存储、检索、共享、保护等的方法、技术及算法重点 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件操作系操作
28、系统特性统特性并发执行并发执行资源共享资源共享虚拟技术虚拟技术多个作业交替轮流执行计算机系统的硬、软件资源可供多个拥有授权的程序或用户共同使用“虚拟”就是把物理实体映射为一个或多个逻辑实体. 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件主要功能主要功能解决多道程序运行下如何把CPU的工作时间合理、自动地分配给所要执行的各个程序 ,以提高CPU的利用率,并使用户满意。 在操作系统中通常把在操作系统中通常把CPUCPU的管理分为两级:的管理分为两级: 作业管理 进程管理 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件
29、作业(作业(jobjob):是用户提交给计算机系统的独立运行单):是用户提交给计算机系统的独立运行单位,它由程序极其所需数据和有关的命令所组成。位,它由程序极其所需数据和有关的命令所组成。 经历四个阶段:经历四个阶段: 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件进程概念进程概念1进程状态进程状态2指一个程序在给指一个程序在给定的工作空间和定的工作空间和数据集合上的一数据集合上的一次执行过程,它次执行过程,它是操作系统进行是操作系统进行资源分配和调度资源分配和调度的一个独立单位的一个独立单位就绪状态:该进程已就绪状态:该进程已获得除获得除CPU之外的所
30、之外的所有资源。有资源。 执 行 状 态 : 正 在执 行 状 态 : 正 在CPU上执行的进程上执行的进程 。 阻塞状态:需等待除阻塞状态:需等待除CPU之外其他资源之外其他资源进程状态动画演示进程状态动画演示 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件游戏演绎进程的三种基本状态请演绎写字进程请演绎写字进程资源:粉笔,讲台上的位置,黑板。资源:粉笔,讲台上的位置,黑板。动作:站在讲台上用粉笔写字。将黑板视为动作:站在讲台上用粉笔写字。将黑板视为CPUCPU;请三名同学分别演绎运行,就绪,阻塞状态。请三名同学分别演绎运行,就绪,阻塞状态。请大家根据同
31、学个人描述,猜猜他演绎的是什么状态。请大家根据同学个人描述,猜猜他演绎的是什么状态。第第3 3章章 计算机系统的软件计算机系统的软件提高提高CPUCPU的利用率的利用率对进程时行对进程时行“细分细分”,一个进程可再分为多个线程,一个进程可再分为多个线程 UNIXUNIX:进程是:进程是CPUCPU的分的分配单位配单位 WindowsWindows:线程是:线程是CPUCPU的分配单位的分配单位 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件程序员编写程序内存中程序逻辑
32、地址(从0开始)物理地址 分区法 段式 页式段页式存储管理n多个进程共享存储器,分配、释放存储器 n调进或调出进程n移动进程功能功能常用常用方法方法分配分配地址地址转换转换保护保护n防止一个进程的存储空间被其它的进程破坏 n软件和硬件结合的保护措施 第第3 3章章 计算机系统的软件计算机系统的软件 资源资源分配分配所属所属关系关系传输传输特性特性 输入/输出设备:用于信息输入/输出的设备 存储设备:用于存储信息的外存储器系统设备:在操作系统生成时已配置于系统中的各种标准设备。 用户设备:由用户自己提供的并由系统实施管理的非标准设备独享设备:一次只能分配给一个用户使用共享设备:多个用户可以交替使
33、用的设备 虚拟设备:把一台物理设备改造成若干台同类的虚拟设备块设备:信息按块来组织和处理的设备。字符设备:信息按字符为单位组织和处理的设备 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件文件的定义:文件是一个在逻辑上具有完整意义的一组相文件的定义:文件是一个在逻辑上具有完整意义的一组相关信息有序集合关信息有序集合文件系统:是指操作系统中专门负责存取和管理外存储器文件系统:是指操作系统中专门负责存取和管理外存储器上文件信息的那部分软件的集合。上文件信息的那部分软件的集合。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软
34、件文件命名约定文件命名约定文件组成:文件组成:文件名:由一个单一的字母和数字集合,标示一个文件,通常描述了文件的内容。扩展名:描述文件的类型。文件名和扩展名间用 隔开。通配符通配符*:用于替代一组字符?:用于替代一个字符 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件文件类型文件类型扩展名扩展名说说明明 可执行程序EXE、COM可执行程序文件 源程序文件C、CPP、BAS程序设计语言的源程序文件 Office文档DOC、XLS、PPTWord、Excel、Powerpoint创建的文档 流媒体文件WMV、RM、QT能通过Internet播放的流式媒体文件
35、 压缩文件ZIP、RAR压缩文件 网页文件HTML、ASP前者是静态的,后者是动态的 图像文件BMP、JPG、GIF不同格式的图像文件 音频文件WAV、MP3、MID 不同格式的声音文件 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 系统文件 库文件 用户文件按文件的用途分类按文件的用途分类按文件的保护级别分按文件的保护级别分文件的保存期限分文件的保存期限分 只读文件 读写文件 临时文件 永久文件 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件文件名文件名. .扩展名扩展名文件大小文件大小占用空间占用空间文件建立
36、或修改的日期与时间文件建立或修改的日期与时间所有者信息所有者信息重要的属性有:重要的属性有: 只读:文件只能读,不能修改或删除 隐藏:在一般的情况下不显示 存档:表示该文件在上次备份前已经修改过了。 上一页上一页 返返 回回下一页下一页 见名知意见名知意UNIX中大小写有区别中大小写有区别Windows中大小写无区别中大小写无区别 第第3 3章章 计算机系统的软件计算机系统的软件一个文件中所存储可能是数据,也可能是程序代码,不一个文件中所存储可能是数据,也可能是程序代码,不同格式的文件通常都会有不同的应用和操作。同格式的文件通常都会有不同的应用和操作。文件的常用操作有:文件的常用操作有: 建立
37、文件 打开文件 写入文件 删除文件 属性更改 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件文件目录(文件目录(file directoryfile directory)为每个文件设立一个表目。最简)为每个文件设立一个表目。最简单的文件目录表目至少要包含文件名、物理地址、文件结构信单的文件目录表目至少要包含文件名、物理地址、文件结构信息和存取控制信息等,以建立起文件名与物理地址的对应关系息和存取控制信息等,以建立起文件名与物理地址的对应关系,实现按名存取文件。,实现按名存取文件。 常用的文件目录结构常用的文件目录结构单级目录结构 二级目录结构 多级目录结
38、构 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件在计算机系统中,文件作为软件资源,有的可供事先规定的多个在计算机系统中,文件作为软件资源,有的可供事先规定的多个用户公用,称为用户公用,称为文件的共享。文件的共享。只允许核准的用户使用而不准其它用户窃用的文件,称为只允许核准的用户使用而不准其它用
39、户窃用的文件,称为文件的文件的保密保密。不论什么文件,系统必须确保其安全,以防止硬件的偶然故障或不论什么文件,系统必须确保其安全,以防止硬件的偶然故障或人为地破坏所引起的文件信息的丢失,称为人为地破坏所引起的文件信息的丢失,称为文件的保护文件的保护实现文件保密的方法:实现文件保密的方法:口令 密码 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件操作系统职场介绍BarryBarry毕业于毕业于ClarkClark大学的计算机职业学院,拥有大学的计算机职业学院,拥有CompTIA A+CompTIA A+认认证证书(美计算机行业协会)。在一名技术支持专业人员
40、和业证证书(美计算机行业协会)。在一名技术支持专业人员和业务经理的协助下,务经理的协助下,BarryBarry开始了帮助其他人解决技术问题的职开始了帮助其他人解决技术问题的职业业-技术支持。技术支持。技术支持和网络管理员的区别技术支持和网络管理员的区别网络管理员:对内。帮助公司的其他员工解决计算机系统在使网络管理员:对内。帮助公司的其他员工解决计算机系统在使用过程中出现的问题。用过程中出现的问题。技术支持:对外。帮助购买公司产品的消费者解决使用过程中技术支持:对外。帮助购买公司产品的消费者解决使用过程中出现的问题。出现的问题。根据美国劳工统计局的调查,在根据美国劳工统计局的调查,在200020
41、00年到年到20102010年之间,计算机年之间,计算机支持专家将成为发展最快的职业之一,对于没有获得学位的人支持专家将成为发展最快的职业之一,对于没有获得学位的人来说,证书来说,证书 和实际经验必不可少。和实际经验必不可少。20002000年,计算机支持专家年,计算机支持专家的年薪平均为的年薪平均为36 46036 460美元,其中美元,其中50%50%的收入在的收入在27 680 27 680 到到48 44048 440美元之间。美元之间。第第3 3章章 计算机系统的软件计算机系统的软件 分析:分析:在若一个程序在运行中需要不停地向打印机送数据打印,由于打印机速度较慢,程序不得不暂停(即
42、CPU处于等待状态),等待每一次打印结束,这样就大大地浪费了CPU的时间,降低了系统效率。如果采用缓冲技术,在内存中开辟一块区域作为暂存空间,程序的数据输出都立即被存储到这个缓冲区中,程序得以继续运行,CPU也不必等待,暂存的数据再由打印机依次打出。可见,采用缓冲技术后,CPU和打印机是在同时工作,因而改善了系统效率。例例5:CPU输出数据的速度远远高于打印机的打印速度输出数据的速度远远高于打印机的打印速度,为解决这个为解决这个矛盾,可以采用以下哪种技术?(矛盾,可以采用以下哪种技术?( )A)虚存技术)虚存技术 B)缓冲技术)缓冲技术 C)通道技术)通道技术 D)并行技术)并行技术结论:答案
43、应选结论:答案应选 B B) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件操作系统的基本功能操作系统的基本功能处理机的管理处理机的管理存储器的管理存储器的管理设备管理的功能设备管理的功能文件的结构和文件的组织管理方式文件的结构和文件的组织管理方式 P195 27P195 27、2828、3131、3333、3939教学小结教学小结 返返 回回 上一页上一页第第3 3章章 计算机系统的软件计算机系统的软件教学目的教学目的 本讲主要介绍软件的定义、生命周期、模型教学重点与难点教学重点与难点 软件工程生命周期 软件开发模型第第3 3章章 计算机系统的软件计算
44、机系统的软件教学引入 我们知道一个建筑物需要经过图纸、打地基、盖我们知道一个建筑物需要经过图纸、打地基、盖房等一系列过程,您知道开发软件的过程吗?房等一系列过程,您知道开发软件的过程吗? 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 2020世纪世纪6060年代年代中期以前中期以前 从从2020世纪世纪6060年代中期到年代中期到7070年代中期年代中期 19681968年年北大西洋公约组织的计算机科学家在联邦德国召开北大西洋公约组织的计算机科学家在联邦德国召开国际会议,讨论软件危机问题。国际会议,讨论软件危机问题。软件作坊软件作坊软件工程软件工程 上一页上一页 返
45、返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件 定义定义软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题 两方面的问题两方面的问题如何开发软件,以满足对软件日益增长的需求如何维护数量不断膨胀的已有软件 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件软件工程定义:软件工程是以系统的、规范的、定量的方法应用于软件工程定义:软件工程是以系统的、规范的、定量的方法应用于软件的开发、运营和维护,以及对这些方法的研究软件的开发、运营和维护,以及对这些方法的研究 软件工程学的主要内容是软件开发技术和软件工程管理。软件工程学的主要
46、内容是软件开发技术和软件工程管理。 软件开发技术方法:完成软件开发的各项任务的技术方法,回答“怎样做”的问题,为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。工具:为运用方法而提供的自动的或半自动的软件工程支撑环境;软件工程管理学软件管理学( 费用管理、人员组织、工程计划管理、软件配置管理) 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件定义:软件从定义、开发、使用和维护直到废弃所经历的定义:软件从定义、开发、使用和维护直到废弃所经历的时期时期组成组成软件定义,3个阶段问题定义、可行性研究和需求分析软件开发:具体设计和实
47、现在前一个时期定义的软件。它通常由下述4个阶段组成总体设计、详细设计 (系统设计)编码和单元测试、综合测试(系统实现)运行维护:使软件持久地满足用户的需要。重点 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件问题定义问题定义可行性研究可行性研究需求分析需求分析总体设计总体设计详细设计详细设计编码与单元测试编码与单元测试综合测试综合测试软件维护软件维护要解决的问题是什么要解决的问题是什么文档资料系统目标文档资料系统目标分析员:实际用户分析员:实际用户+负责人负责人是否有解决办法?是否有解决办法?分析员分析员 方案论证报告,成本方案论证报告,成本/效益分析等
48、可行性报告,效益分析等可行性报告,计划任务书计划任务书为了解决的问题,目为了解决的问题,目标系统必须做什么?标系统必须做什么?准确确定系统的功能准确确定系统的功能需求规格说明书需求规格说明书如何解决如何解决这些问题这些问题系统功能系统功能结构图结构图如何具体地实现系统:每个模块的流程图如何具体地实现系统:每个模块的流程图(程序的详细规格说明书)(程序的详细规格说明书)通过各种类型的测试,通过各种类型的测试,使软件达到预定的要求,使软件达到预定的要求,并书写相应测试记录和并书写相应测试记录和用户操作手册用户操作手册写出正确的容易理解和写出正确的容易理解和容易维护的源程序容易维护的源程序 通过各种
49、必要的维护活动通过各种必要的维护活动使系统持久地满足用户的需要,使系统持久地满足用户的需要,撰写评价报告和维护记录撰写评价报告和维护记录第第3 3章章 计算机系统的软件计算机系统的软件瀑布模型瀑布模型快速原型模型快速原型模型软件重用模型软件重用模型 螺旋模型螺旋模型重点 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件瀑布模型遵循软件生存期的划分,明确规定每个阶段的任务,各个瀑布模型遵循软件生存期的划分,明确规定每个阶段的任务,各个阶段的工作按顺序展开,恰如奔流不息拾级而下的瀑布。阶段的工作按顺序展开,恰如奔流不息拾级而下的瀑布。 特点:特点: 阶段间具有
50、顺序性和依赖性 推迟实现的观点 质量保证的观点优点:优点: 可强迫开发人员采用规范的方法; 严格地规定了每个阶段必须提交的文档; 要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证缺点缺点: : 瀑布模型是由文档驱动的 由于瀑布模型几乎完全依赖于书面的规格说明,很可能导致最终由于瀑布模型几乎完全依赖于书面的规格说明,很可能导致最终开发出的软件产品不能真正满足用户的需要。开发出的软件产品不能真正满足用户的需要。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成快速原型是快速建立起来的可以在计
51、算机上运行的程序,它所能完成的功能往往是最终产品能完成功能的一个子集。的功能往往是最终产品能完成功能的一个子集。( (先做样品试用在改进先做样品试用在改进后批量生产后批量生产) )主要优点主要优点: : 原型系统已经通过与用户交互而得到验证,据此产生的规格说明文档正确地描述了用户需求 开发人员通过建立原型系统已经学到了许多东西,因此,在设计和编码阶段发生错误的可能性也比较小,这自然减少了在后续阶段需要改正前面阶段所犯错误的可能性。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软件计算机系统的软件这种开发模型旨在开发具有各种一般性功能的软件模块,将它们组成这种开发模型旨在开
52、发具有各种一般性功能的软件模块,将它们组成软件重用库,这些模块设计时考虑其适应各种界面的接口规格,可供软件重用库,这些模块设计时考虑其适应各种界面的接口规格,可供软件开发时利用。软件开发时利用。优点是减少软件生产中的重复开发,避免软件开发人员的大量重复劳优点是减少软件生产中的重复开发,避免软件开发人员的大量重复劳动,提高开发效率,缩短开发周期,降低开发成本。动,提高开发效率,缩短开发周期,降低开发成本。软件重用库的模块不仅要便于选择使用,而且还应具有允许扩充、积软件重用库的模块不仅要便于选择使用,而且还应具有允许扩充、积累其成分的性能。累其成分的性能。 上一页上一页 返返 回回下一页下一页 第
53、第3 3章章 计算机系统的软件计算机系统的软件螺旋模型把软件开发过程安排为逐步细化的螺旋周期序列,每经历螺旋模型把软件开发过程安排为逐步细化的螺旋周期序列,每经历一个周期,系统就细化和完善一些。螺旋模型把软件过程描绘为一个周期,系统就细化和完善一些。螺旋模型把软件过程描绘为“计划计划风险分析风险分析原型原型用户评审用户评审”周而复始的四种活动,将其称周而复始的四种活动,将其称为一个螺旋周期。每一个周期又可细化为若干任务。这种模型对大为一个螺旋周期。每一个周期又可细化为若干任务。这种模型对大型新产品特别有效。型新产品特别有效。 上一页上一页 返返 回回下一页下一页 第第3 3章章 计算机系统的软
54、件计算机系统的软件 P195 40P195 40、4141、4242 软件工程含义软件工程含义 软件生存周期软件生存周期 常用的软件开发模型常用的软件开发模型 返返 回回 上一页上一页第第3 3章章 计算机系统的软件计算机系统的软件 1. 1. 从逻辑上来看,可以把数据结构划分成从逻辑上来看,可以把数据结构划分成 两个部分两个部分A.内部结构和外部结构 B.动态结构和静态结构C.顺序结构和非顺序结构 D.线性结构和非线性结构2 2、计算机能直接执行的程序是、计算机能直接执行的程序是 。A. 源程序 B. 机器语言程序C. BASIC语言程序 D. 汇编语言程序D( )B( )一、单项选择题一、
55、单项选择题 (单击题后的括号可显示本题答案)(单击题后的括号可显示本题答案)第第3 3章章 计算机系统的软件计算机系统的软件3 3、操作系统是为了提高计算机的工作效率和方便用户使用计、操作系统是为了提高计算机的工作效率和方便用户使用计算机而配备的一种算机而配备的一种 。A. 系统软件 B.应用系统 C.软件包 D.通用软件4 4、下列、下列4 4种软件中,属于应用软件的是种软件中,属于应用软件的是 。A. Linux系统B.财务管理系统C. Pascal编译系统D.QBASIC系统5 5、在完全二又树中,若一个结点是叶结点,则它没有、在完全二又树中,若一个结点是叶结点,则它没有 。A.左子结点
56、 B.右子结点C.左子结点和右子结点 D.左子结点A( )B( )C( )第第3 3章章 计算机系统的软件计算机系统的软件6 6一个队列的入列序列是一个队列的入列序列是1 1,2 2,3 3,4 4,则队列的输出序列是,则队列的输出序列是 。A.4,3,2,1B. l,2,3,4C. 1,4,3,2 D. 3,2,4,l7 7 若已知一个栈的输入序列为若已知一个栈的输入序列为1 1,2 2,3 3,n n,其输出序列为,其输出序列为P1P1,P2P2,PnPn,若,若P1=nP1=n,则,则PiPi为为 A.I B. n-iC. n-i1D. 不确定8 8、汇编语言是一种、汇编语言是一种 。 A.目标程序语言 B.面向机器的低级符号语言 C.机器语言 D.高级语言 B( )C( )B( )第第3 3章章 计算机系统的软件计算机系统的软件9 9如果分时系统的时间片一定,那么如果分时系统的时间片一定,那么 ,则响应,则响应时间越长。时间越长。A.用户数越少B. 用户数越多C. 内存越少D. 内存越多1010在在 的情况下,系统出现死锁。的情况下,系统出现死锁。A.计算机系统发生了重大故障B. 有多个封锁的进程同时存在C. 若干
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026山东省公共卫生临床中心招聘中初级专业技术人员18人考试参考题库及答案解析
- 2026年度哈尔滨“丁香人才周”(春季)松北区乡镇卫生院招聘医学毕业生12人考试备考试题及答案解析
- 2026能源控股集团所属电机集团招聘28人考试备考试题及答案解析
- 2026年沧州市运河区卫生健康系统人员招聘笔试参考题库及答案解析
- 2026年济南市长清区卫生健康系统人员招聘笔试参考题库及答案解析
- 2026安徽工程大学设计学院专任教师招聘考试备考试题及答案解析
- 2026中国电子科技集团公司第二十八研究所博士后研究人员招聘考试模拟试题及答案解析
- 2026年5月四川乐山市沙湾区城镇公益性岗位选聘2人考试参考题库及答案解析
- 2026山东济宁医学院附属医院招聘博士25人考试模拟试题及答案解析
- 2026年燃气安全进社区进校园活动组织知识练习题
- 校外教育杯教师论文
- 语文 《登岳阳楼》《望岳》《登高》比较阅读教学设计 2024-2025学年统编版高一语文必修下册
- 医疗行业腐败案例警示教育心得体会
- T/CSPSTC 103-2022氢气管道工程设计规范
- 广州2025年上半年广州开发区黄埔区事业单位招聘18人笔试历年参考题库附带答案详解
- 蜜雪冰城转让店协议合同
- 马克思主义基本原理全套课件
- 测量劳务合同5篇
- 2025年福建福州市金融控股集团有限公司招聘笔试参考题库含答案解析
- 2024年云南省高等职业技术教育招生考试数学试题
- 人教版数学七年级下册 期末测试卷
评论
0/150
提交评论