计算机系统软件课件_第1页
计算机系统软件课件_第2页
计算机系统软件课件_第3页
计算机系统软件课件_第4页
计算机系统软件课件_第5页
已阅读5页,还剩114页未读 继续免费阅读

下载本文档

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

文档简介

任课教师:孙海龙办公室:教六601TelQ:491034714教学章节计算机软件概述3.1算法与数据结构3.2程序设计语言3.3编译原理3.5操作系统3.6软件工程3.7数据库系统3.4教学目的本讲主要介绍计算机软件的基本概念,对计算机软件有总体上了解教学重点与难点

软件定义软件分类计算机系统的组成3.1计算机软件概述教学引入

在第二章,我们学习了计算机的内部组成,那么是谁控制这些硬件让它为我们服务?

返回下一页程序作为商品以有形介质为载体进行交易,称做软件。即软件是指为运行、维护、管理及应用计算机所编制的所有程序及其文档资料的总和。软件的特性:

软件是功能、性能相对完备的程序系统软件是具有使用性能的软设备软件是信息商品软件是一种只有过时而无“磨损”的商品3.1.1什么是软件上一页

返回下一页系统软件:软件制售商为释放硬件潜能、方便使用而配备的软件。OS、语言编译/解释系统、网络软件、数据库管理软件、各种服务程序、界面工具箱等支持计算机正常运作和“通用”的软件。应用软件:指解决某一应用领域问题的软件。财会软件、通信软件、科技计算软件、CAD/CAM软件等。3.1.2软件的分类上一页

返回下一页三类软件的关系上一页

返回下一页常用软件操作系统群件系统办公软件系统工具软件管理计算机系统的软硬件资料,合理地组织计算机工作流程,并为用户使用计算机提供良好的工作环境。如Windows等。一类日常办公的软件,如Office编程语言一般是以一个集成环境的形式出现的。如:VisualStutio。可以帮助操作系统更有效地完成系统的管理和维护。如反病毒软件程序开发工具Internet工具软件多媒体处理数据库是信息管理的中心,如Access、SQLServer一种基于电子邮件的应用系统软件,它拓宽了电子邮件的内涵,涵养了很多通信协作功能。如Notes、ExchangeServer、GroupWise在CPU一级提供多媒体指令,实现对多媒体的直接支持。基于网络环境和Internet环境的应用软件,如Web服务器、FTP上一页

返回下一页3.1.4计算机系统的组成上一页

返回下一页计算机系统的体系结构上一页

返回下一页

软件概念;软件分类;计算机系统的组成;教学小结

返回上一页教学目的

本讲主要介绍算法和数据结构的基本概念,以及几种常用的数据结构教学重点与难点

1.算法的基本概念

2.线性表

3.栈

4.队列

5.树3.2算法与数据结构教学引入

计算机内部有很多数据需要我们处理,那么计算机是按照什么形式处理这些数据的?

返回下一页典型问题排序问题汉诺塔问题问题类型排序查找串处理图问题组合问题几何问题数值问题3.2.1为什么要学习算法与数据结构上一页

返回下一页问题的描述建立数学模型算法设计算法的正确性证明算法分析算法的程序实现2.计算机求解问题的过程上一页

返回下一页算法+数据结构=程序对算法的研究主要包括两方面内容:一是如何设计算法,常用的算法设计方法有分治递归、贪心法、回溯法、动态规划、分支限界等;二是对给定算法,如何分析它的效率和性能。数据的结构分为逻辑结构和物理结构逻辑结构反映数据成员之间的逻辑关系物理结构反映数据成员在计算机内部的存储安排。3.学习算法与数据结构的意义上一页

返回下一页算法概念算法原意指计算步骤或规则在计算机科学中,算法指用计算机求解某一问题的方法算法特征有穷性(Finiteness)确定性(Definiteness)有效性(Effectiveness)有0个或多个输入项至少有一个输出项

3.2.2算法基础上一页

返回下一页算法描述自然语言描述流程图描述伪代码描述算法结构顺序结构选择(分支)结构循环结构

3.2.2算法基础(序)上一页

返回下一页算法设计方法递归技术回溯法动态规划法算法分析

时间复杂性指一个算法在计算机上运算所花费的时间

空间复杂性指一个算法在计算机上运算所花费的空间

3.2.2算法基础(序)上一页

返回下一页书名作者名登录号分类号出版年月计算机病毒危机相杰超920253TP306/1092.5实用数据结构霍义兴871470TP31/7187.1计算机系统结构苏东庄841153TP303/1284.1数字逻辑王玉龙875027TP315/2087.5……………例子:图书书目表上一页

返回下一页数据定义:一切可输入计算机并能为计算机所处理的描述客观事物的符号,称为数据。在计算机中,数据的定义是广泛的,数、字符、图形、声音都可是计算机处理的对象,统称为数据分类数值数据:应用于科学计算的程序,它们的组织较为简单,如变量,数组,简单表等。关心的是计算速度与精度。非数值数据:应用于商业或管理的程序,它们组织较为复杂,关心的是按什么规则组织数据,使其占空间少,存取快,并有利于维护(增删、修改)3.2.3数据结构基础

数据结构就是一门研究非数值性程序设计中计算机操作的对象以及它们之间的关系和运算等的学科。上一页

返回下一页数据类型:数据的定义域。常见的数据类型有字符型、整数型、逻辑型、数组、集合、记录等。数据项(dateitem):是数据的最小单位。数据元素(dateelement):是数据项的集合(或称记录)。数据对象(dataobject):它是具有相同特性的数据元素的集合。如整数数据对象的集合。结构(datastructure):数据元素之间的相互关系。数据结构(datastructure):它是带有结构的数据元素的集合。数据结构是数据组织形式,反应数据之间的关系,但不涉及数据的具体内容。1.基本概念上一页

返回下一页书名作者名登录号分类号出版年月计算机病毒危机相杰超920253TP306/1092.5实用数据结构霍义兴871470TP31/7187.1计算机系统结构苏东庄841153TP303/1284.1数字逻辑王玉龙875027TP315/2087.5……………数据项数据元素数据例子:图书书目表数据的逻辑结构:指数据元素之间的逻辑关系,它与数据在计算机中的存储方式无关。线性结构。数据之间存在前后顺序关系,除第一个元素和最后一个元素外,其他结点都有唯一一个前驱和一个后继结点(一对一关系)。包括数组、链表、栈和队列等。树形结构。数据之间存在顺序关系,除了一个根结点外,其他结点都有唯一一个前驱结点,且可以有多个后继结点(一对多关系)。网状结构。每个结点都可以有多个前驱和多个后继结点(多对多关系)3.2.3数据结构(序)上一页

返回下一页数据的存储结构:指数据的逻辑结构到计算机存储器的映像。顺序存储结构将逻辑上相邻的数据元素存储在物理上相邻的存储单元里。它主要存储线性结构的数据。结点之间的关系由物理相邻关系决定,结点中只有信息域,所以存储密度大,空间利用率高。数据结构中第i个结点的存储地址可由以下公式求得Li=L0+(i-1)×k插入、删除运算会引起相应结点的大量移动。链式存储结构打破了计算机存储单元的连续性,可以将逻辑上相邻的两个数据元素存放在物理上不相邻的存储单元中。结点中除数据外,还有表示链接信息的指针域,因此与顺序存储结构相比,占用更大的存储空间。逻辑上相邻结点物理上不一定相邻,可用于线性表、树、图等多种逻辑结构存储插入、删除等操作灵活方便,不需要大量移动结点,只需修改结点的指针值即可3.2.3数据结构(序)上一页

返回下一页顺序存储结构上一页

返回下一页链式存储结构上一页

返回下一页定义线性表(LinearList)是n个数据元素的有限序列(a1,a2,…,ai,…,an)。其中元素ai可以是一个数、或是一个符号、也可以是更复杂的信息。性质同一线性表中的元素必定属于同一类数据对象;除a1元素外,每个元素都仅有一个直接前趋;除an元素外,每个元素都仅有一个直接后继;各元素的下标表示了该元素在线性表中的位置。2.线性表上一页

返回下一页数组。它是n个类型相同的数据元素构成的序列,它们连续存储在计算机的存储器中,且数组中的每个元素占据相同的存储空间。对数组的描述通常包含下列5种属性数组名称。声明数组第一个元素在内存中的起始位址。维度。每一元素所含数据项的个数,如一维数组、二维数组等。数组下标。元素在数组中的储存位置。数组元素个数。是数组下标上限与数组下标下限的差+1。数组类型。声明此数组的类型,它决定数组元素在内存所占有的空间大小。2.线性表(序)上一页

返回下一页链表:它是0个或多个称为结点的元素构成的序列,每个结点除了存储数据外还包含一个或多个称为指针的链接,指向链表中其他元素。2.线性表(序)上一页

返回下一页栈结构定义:一种插入和删除操作都只能在尾端进行的线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。特点:是一种后进先出(LIFO)的线性表,也就是说,栈的操作是按后进先出(LIFO:LastInFirstOut)的原则进行的。栈的存储结构:顺序存储:占有一片连续的存储空间链式存储:也称为链栈,它是一种限制运算的链表,即规定链表中的插入和删除运算只能在链表开头进行。。栈的基本运算:入栈(在栈S的顶部插入元素)出栈(删除栈顶元素)外取栈顶位置上的元素置S为一个空栈判定S是否为空栈。2.线性表(序)上一页

返回下一页a1a2an-1an…栈底栈顶入栈出栈入栈和出栈的动画演示上一页

返回下一页栈的顺序存储结构栈的链式存储结构上一页

返回下一页队列定义:仅允许在一端进行插入,另一端进行删除的线性表,称为队列(queue)。允许插入的一端称为队尾(rear),允许删除的一端称为队头队列的特点:先进先出(FIFO)。队列的存储结构:顺序结构、链式结构队列的基本操作:入队列(在队列Q的队尾插入元素);出队列(删除队列Q的队头元素);取出队列Q的队头元素;置队列Q为一个空队列;2.线性表(序)上一页

返回下一页顺序存储结构:将队列中元素全部存入一个一维数组中,数组的低下标一端为队头,高下标一端为队尾,将这样的队列看成是顺序队列。若一维数组中所有位置上都被元素装满,称为队满,即尾指针rear指向一维数组最后,而头指针指向一维数组开头,称为队满。链式存储结构:称为链队列,可以用带头结点的单链表作为队列的链式存储结构。frontABCDErear队列的存储结构上一页

返回下一页出队列a1a2…an入队列队头队尾入队列和出队列的动画演示上一页

返回下一页

一个图G=<V,D>是一个数据结构,它由两部分组成:一个有限集合V,它的元素称为顶点;另一个有限集合E,它的元素由顶点对构成,称为边。如果每对顶点之间都没有顺序,也就是说,顶点对(u,v)和顶点对(v,u)是相同的,我们说图G是无向的,如图(a)所示。否则,称为有向的,边<u,v>的方向是从顶点u到达顶点v,如图(b)所示。

3.图上一页

返回下一页3.图(序)上一页

返回下一页邻接矩阵。n个顶点的邻接矩阵是一个n×n阶的布尔矩阵,用来表示图的结点间的相邻关系。邻接表。是链表一个集合,其中每一个顶点用一个邻接链表表示,该链表包含了和这个顶点邻接的所有顶点(即所有和该顶点有边相连的顶点)赋权图:图的每条边对应一个数值,在实际应用中这些数值往往是距离、运费、时间等。这些值称为边的权或成本。邻接矩阵。当存在一条从结点i到结点j的边时,矩阵元素aij的值就是这条边的权重;当不存在这样一条边时,则用一个特殊符号表示。邻接表。邻接表的结点中不仅包含邻接结点的名字,还必须包含相应的边的权重。4.树上一页

返回下一页树和森林:连通无回路的图称为树,如图a所示。有的图虽然不是树,但它的每个子图(连通分支)是树,则称为森林,如图b所示。树有两个性质:树的边数=树的顶点数减1。树的任意两个顶点之间有且仅有一条通路。图a树示例图b森林示例4.树(序)上一页

返回下一页根树:任选树的一个顶点,将它作为树的根。在对根树的描述中,根通常放在最顶上(树的第0层),与根邻接的顶点放在根的下面(第1层),再下面是和根距离两条边的顶点(第2层),然后依此类推。计算机可以直接识别和执行,效率高指令的二进制代码难记住,人工编写机器语言很繁琐,易出错不同的计算机有不同的机器语言,因而通用性很差。面向过程的第四代语言。如SQL、PB、Delphi。面向对象的编程语言和网络语言,如VB、VB、C++、HTML和Java。各种软件开发工具,如CASE不能为计算机硬件直接识别与执行,必须通过汇编器的系统软件“汇编”,才能被硬件执行。汇编语言指令与机器语言指令一一对应,为低级语言不同的计算机具有不同的汇编语言,记忆指令助记符较记忆指令二进制代码容易,但仍然繁琐。用高级语言编写的源程序必须通过“翻译”生成目标程序,才能被计算机所执行。不同计算机只要配备某种高级语言编译程序,可运行该高级语言源程序,通用性强与一般的自然语言相比,具有严格、小巧、没有二义性特点第一代语言第二代语言第三代语言第四代语言第五代语言智能化语言,如PROLOG3.3.1程序设计语言发展概述FORTRANCOBOLPASCALC过程化编程语言面向对象编程语言面向人工智能的语言专用语言常用程序设计语言C++JavaHTMLSQLLISP语言Prolog上一页

返回下一页概述面向过程的程序中,程序划分成一个主模块和若干个子模块。数据公用数据与代码相互分离面向对象程序中,将数据以及处理这些数据的例程全部封装在一起形成一个类。3.3.3面向对象程序设计上一页

返回下一页对象、类、方法对象是相关数据和方法的结合体。各个对象既是独立的实体,又通过消息相互作用。类是同种对象的集合与抽象。类是一种抽象的数据类型,它是所有具有一定共性的对象的抽象。属于类的某一个对象则被称为是类的一个实例,是类的一次实例化的结果。方法是对数据的一种操作。对象、方法和消息“消息”是程序语句实现的一个命令。对象间的联系通过消息来完成。方法可以通过外界发“消息”来激活。面向对象的基本概念上一页

返回下一页面向对象程序语言特征继承性多态性封装性将数据和操作这些数据的方法代码组织到一起,即将数据和方法放在同一个对象中,可提高数据的安全性一个接口能够做多种用途,而其特定的用途由其特定的环境所决定一个新类可以从现有的类中派生出来,新类具有父类中的所有特性,直接继承了父类的数据和方法上一页

返回下一页

教学目的对数据库系统作进一步的介绍,包括数据库系统特点、数据库管理系统的组成和分类,使大家对数据库系统有进一步的了解。

教学重点与难点数据库创建数据库操作3.4数据库管理系统教学引入

我们知道,计算机要处理大量的数据,那么计算机是如何保存这些数据?

返回下一页数据库DB:相关信息或数据的有规则的集合。数据库管理系统DBMS:一种数据库管理软件,其职能是维护数据库,接受并完成用户程序或命令提出的对数据进行输入、编辑、排序、检索、合并和输出等操作请求。数据库系统:由数据库、数据库管理系统和用户组成数据库系统的有关术语上一页

返回下一页数据库图书馆数据图书外存书库用户读者数据模型书卡格式数据库管理系统图书馆管理员数据的物理组织方法图书存放方法用户对数据库的操作读者对图书馆的访问(使用数据操纵语言对数据借书、还书等检索、插入、删除、修改)数据库系统与图书馆的比较上一页

返回下一页层次模型满足的条件:有一个记录类型没有父结点。其它记录类型有且只有一个父结点。3.4.2数据模型上一页

返回下一页网状模型满足的条件:

有一个以上记录类型没有父结点。至少有一个记录类型多于一个父结点3.4.2数据模型(序)上一页

返回下一页关系模型满足的条件:事物与事物之间的联系用二维表格的形式来描述。表中每一行是一个记录,在关系中称为元组;表中每一列是一个字段,在关系中称为属性。3.4.2数据模型(序)上一页

返回下一页基本概念:表:存储和管理数据的基本单元。它是一种格式化的二维数组。字段:二维表的每一列在关系中称为属性,每个属性都有一个属性名,属性值则是各个元组属性的取值。字段类型:字段的数据类型及其长度。记录:是一组相关数据项的集合,用于描述一个对象在某方面的属性。主键:能够唯一确定表中的一条记录的一个或几个字段。外键:关系中某个属性或属性组合并非主键,但却是另一个关系的主键,称此属性或属性组合为本关系的外部关键字。关系之间的联系是通过外部关键字实现的。索引:提供对数据项的快速访问。关系数据库上一页

返回下一页学生与所在系的关系系与负责人的关系学生、课程与成绩的关系学号学生名系名940101940202940301940401……

李春梅刘

力陈文秀徐

……

计算机系自动化系机械系化工系……

学号课程名成绩940101940202940301940401::C语言FORTRANPASCALPASCAL::95867490::系名系主任名计算机系

自动化系机械系化工系……

敏李龙江金剑齐晶……

上一页

返回下一页数据定义语言DDL:用来定义数据库的数据模型数据操作语言:用来表达用户对数据库的操作请求。查询数据库中的信息向数据库插入新的信息从数据库中删除信息修改数据库中的信息SQL语言是一个通用型的、功能强大的关系数据库语言数据定义语句:数据库的定义由

CREATETABLE、ALTERTABLE和DROPTABLE3种语句构成。数据库查询是数据库的核心操作。SQL语言提供了SELECT语句进行数据库查询数据更新语句的作用是在当前表中添加、删除和修改记录。包括INSERT、DELETE和UPDATE三条语句。3.4.3数据库语言上一页

返回下一页设计步骤需求分析概念结构设计逻辑结构设计物理结构设计应用程序设计系统运行与维护3.4.4数据库设计上一页

返回下一页常用数据库开发平台AccessSQLServerVisualFoxProPowerBuilderOracleSybase

3.4.4数据库设计(序)上一页

返回下一页数据库发展史文件系统阶段人工管理阶段关系数据库系统上一页

返回下一页59主要是指50年代中期以前的这段时间,此时的计算机还很简陋,连完整的操作系统都没有。因此,数据只能放在卡片上或其他介质上,由人来手工管理。

人工管理阶段上一页

返回下一页60主要是指50年代后期到60年代中期的这段时间,此时的计算机已经有了操作系统。在操作系统基础之上建立的文件系统已经成熟并广泛应用。因此,人们自然想到用文件把大量的数据存储在磁盘这种介质上,以实现对数据的永久保存和自动管理以及维护;文件系统阶段上一页

返回下一页61与文件系统相比的优点:数据是结构化的面向系统,减少了数据冗余可以用数据结构化查询语言对数据库中的数据进行操作关系数据库系统上一页

返回下一页XML/RDBMS混合数据处理将在未来得到快速的发展数据集成和数据仓库将向内容管理过渡基于Internet的自动化管理支持商业智能成重点数据库技术与多学科技术的有机结合2.数据库技术发展趋势上一页

返回下一页通用内容管理(UniversalContentManagement)

为内容的存储和管理提供中央存储库。它还能够为所存储内容进行定义以及执行生命周期过程(如提交过程、发布过程或删除过程等)。通用记录管理(UniversalRecordsManagement)

用于存储和管理出于法律、历史或其他用途要求保留的归档数据。它向终端用户提供了指定与不同类型的文档相关的归档和处置规则的功能。图像与流程管理(ImagingandProcessManagement)

用于存储和管理物理文件的扫描图像。图像与流程管理的产品往往用于在业务功能涉及扫描图像的环境中,如费用和发票的管理。信息权限管理(InformationRightsManagement)

允许对文档进行保护,以确保用户只能执行具有相应授权的操作(读、写、修改、删除)。此外,信息和权限管理产品允许审计在所保护文件上执行的所有操作。该产品通常用于管理包含敏感信息的数字内容,如企业财务文件或法律文件。教学目的

本讲主要介绍操作系统的定义、分类、功能教学重点与难点操作系统分类操作系统功能3.6操作系统

操作系统:是由程序和数据结构组成的大型系统软件,它负责计算机的全部软硬件资源的分配、调度与管理,控制各类程序的正常执行,并为用户使用计算机提供良好的环境

从用户角度看:操作系统可以看成是计算机的硬件扩充人机交互方式来看:操作系统是用户与机器的接口

管理者角度看:操作系统也是管理资源的程序扩充操作系统的概念上一页

返回下一页五大类型批处理操作系统:用户布置任务后,直到运行结束无法干涉单道批处理系统多道批处理系统分时操作系统实时操作系统网络操作系统分布式操作系统传统现代操作系统的分类上一页

返回下一页重要概念

单道:每次只调一个用户程序进入内存让它运行。多道:是指内存中驻留多个程序或一个程序的多个程序段。多重处理系统:一般指多CPU系统。终端:一个具有显示设备和键盘控制台,既是输入设备,又是输出设备。单道批处理系统:用户一次可以提交多个作业,系统逐个处理作业,一个作业处理完毕再处理另一个作业。多道程序设计技术:就是在内存中同时存放并运行几道相互独立的程序。它是一种宏观上并行,微观上串行的运行方式。多道批处理操作系统系统=批处理系统+多道程序设计技术;其优点是成批处理作业,提高了作业吞吐量、可靠性、计算能力、并行处理能力。缺点是缺乏交互性。主要运用在大计算量的科学计算上。批处理操作系统上一页

返回下一页分时技术:将CPU的时间分成很短的时间片(几十毫秒-几百毫秒)轮流为每个用户工作,采用这种技术的操作系统称为分时操作系统。优点:系统交互性好、及时性、多用户同时性、每个终端的独占性缺点:用户的优先级不易控制。与批处理系统的区别批处理系统中,一个作业可以长时间占用CPU直至作业执行完成;分时系统中,一个作业只能在一个时间片的时间内使用CPU。分时操作系统上一页

返回下一页实时操作系统要求计算机对外来信息能以足够快的速度进行处理,并在被控对象允许的时间范围内作出快速响应。主要应用在实时处理之中。优点:是响应速度快,可靠性高。缺点:交互能力差、资源利用率低。与分时系统的相似与区别:相似:均采用时间片分时技术,具有交互性和及时性。实时系统:一般是专用的,交互能力差、只允许用户访问数量有限的专用程序;系统响应时间短(微秒~毫秒)分时系统:具有很强的通用性,有很强的交互功能,允许用户运行或修改自己的应用程序;系统响应时间长(2~3秒)实时操作系统上一页

返回下一页网络操作系统是通过通信设施将物理上分散的具有自治功能的多个计算机系统相互联起来,实现信息交换、资源共享、可互操作和协作处理的系统。示例:Netware、WindowsNT。网络软件配置:网络通信协议、网址(IP地址或域名地址)网络硬件配置:服务器、配置了网卡的工作站、路由器、交换机、HUB等。网络操作系统上一页

返回下一页通过通信网络将物理上分布的具有自治功能的计算机系统互连起来,实现信息交换和资源共享、协作完成任务与网络操作系统的区别分布式系统网络系统协议没有制定标准一系列协议操作系统数量一个/或将多个操作系统统一管理独立的多个透明性系统对用户透明用户要了解细节联系程度逻辑上紧偶合系统松偶合分布式操作系统上一页

返回下一页DOSMicrosoftWindowsUnixLinuxMacOS典型操作系统上一页

返回下一页操作系统五大功能存储器文件设备作业处理器实现多道程序运行下对处理器的分配和调度,使一个处理器为多个程序交替服务,最大限度地提高CPU的利用率主存的分配与回收主存的保护主存的扩充主要包括对I/O设备的分配、启动、完成及回收。主要的技术:虚拟设备技术、屏蔽技术向用户提供实现作业控制的手段。按一定策略实现作业调度又称为信息管理,它是对计算机的软件资源的管理,其中包括文件的存储、检索、共享、保护等的方法、技术及算法重点上一页

返回下一页操作系统特性并发执行资源共享虚拟技术并发性也叫“共行性”,多个作业并发执行或一个用户作业的多个程序段间并发执行;多个输入输出设备间并发工作计算机系统的硬、软件资源可供多个拥有授权的程序或用户共同使用“虚拟”就是把物理实体映射为一个或多个逻辑实体.上一页

返回下一页主要功能解决多道程序运行下如何把CPU的工作时间合理、自动地分配给所要执行的各个程序,以提高CPU的利用率,并使用户满意。在操作系统中通常把CPU的管理分为两级:作业管理进程管理3.6.2处理器管理上一页

返回下一页进程组成程序,数据,进程控制块(PCB)单击下面按钮进行运行演示进程概念12进程状态3进程及其状态的转换指一个程序在给定的工作空间和数据集合上的一次执行过程,它是操作系统进行资源分配和调度的一个独立单位就绪状态:该进程已获得除CPU之外的所有资源。执行状态:正在CPU上执行的进程。阻塞状态:需等待除CPU之外其他资源进程状态动画演示程序管理器上一页

返回下一页提高CPU的利用率对进程时行“细分”,一个进程可再分为多个线程

UNIX:进程是CPU的分配单位

Windows:线程是CPU的分配单位除了CPU以外,进程是在UNIX和WINDOWS中资源分配单位

线程(threads)上一页

返回下一页查看线程方法上一页

返回下一页虚拟内存用硬盘空间模拟内存存储器分配地址的转换信息的保护程序员编写程序→内存中程序逻辑地址(从0开始)→物理地址分区法页式段式段页式存储管理多个进程共享存储器,分配、释放存储器进程需要的存储空间是变化的调进或调出进程移动进程功能常用方法分配地址转换保护防止一个进程的存储空间被其它的进程破坏软件和硬件结合的保护措施3.6.3存储管理设备的种类

设备功能资源分配所属关系传输特性输入/输出设备:用于信息输入/输出的设备存储设备:用于存储信息的外存储器系统设备:在操作系统生成时已配置于系统中的各种标准设备。用户设备:由用户自己提供的并由系统实施管理的非标准设备独享设备:一次只能分配给一个用户使用共享设备:多个用户可以交替使用的设备虚拟设备:把一台物理设备改造成若干台同类的虚拟设备块设备:信息按块来组织和处理的设备。字符设备:信息按字符为单位组织和处理的设备上一页

返回下一页设备管理即插即用设备驱动程序使用设备之前,该设备驱动程序必须被安装通用即插即用把设备连接到计算机上后无需手动配置可以立即使用。让计算机自动发现和使用基于网络的硬件设备,网络打印机、Internet网关和消费类电子设备。上一页

返回下一页文件的定义:文件是一个在逻辑上具有完整意义的一组相关信息有序集合文件系统:是指操作系统中专门负责存取和管理外存储器上文件信息的那部分软件的集合。文件目录文件的属性:

文件名:文件名.扩展名文件类型文件属性

文件操作见名知意UNIX中大小写有区别Windows中大小写无区别

3.6.5文件管理上一页

返回下一页文件大小占用空间文件建立或修改的日期与时间所有者信息重要的属性有:

只读:文件只能读,不能修改或删除隐藏:在一般的情况下不显示存档:任何一个新创建或修改的文件都有存档属性。文件属性上一页

返回下一页一个文件中所存储可能是数据,也可能是程序代码,不同格式的文件通常都会有不同的应用和操作。文件的常用操作有:建立文件打开文件写入文件删除文件属性更改文件操作上一页

返回下一页文件目录(filedirectory)为每个文件设立一个表目。最简单的文件目录表目至少要包含文件名、物理地址、文件结构信息和存取控制信息等,以建立起文件名与物理地址的对应关系,实现按名存取文件。常用的文件目录结构单级目录结构二级目录结构多级目录结构文件目录上一页

返回下一页文件命名约定文件组成:文件名:由一个单一的字母和数字集合,标示一个文件,通常描述了文件的内容。扩展名:描述文件的内容。文件名和扩展名间用•隔开。通配符*:用于替代一组字符?:用于替代一个字符文件名上一页

返回下一页文件类型扩展名说明可执行程序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不同格式的声音文件文件扩展名上一页

返回下一页系统文件库文件用户文件按文件的用途分类按文件的保护级别分按文件信息的流向分文件的保存期限分文件分类只读文件读写文件自由文件临时文件永久文件档案文件输入文件输出文件输入输出文件上一页

返回下一页在计算机系统中,文件作为软件资源,有的可供事先规定的多个用户公用,称为文件的共享。只允许核准的用户使用而不准其它用户窃用的文件,称为文件的保密。不论什么文件,系统必须确保其安全,以防止硬件的偶然故障或人为地破坏所引起的文件信息的丢失,称为文件的保护实现文件保密的方法:存取控制矩阵口令密码文件的共享、保密与保护上一页

返回下一页教学目的

本讲主要介绍软件的定义、生命周期、模型教学重点与难点软件工程生命周期操作系统模型3.7软件工程教学引入

我们知道一个建筑物需要经过图纸、打地基、盖房等一系列过程,您知道开发软件的过程吗?

返回下一页

20世纪60年代中期以前从20世纪60年代中期到70年代中期

1968年北大西洋公约组织的计算机科学家在联邦德国召开国际会议,讨论软件危机问题。软件作坊软件工程3.7.1软件工程概述上一页

返回下一页定义软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题两方面的问题如何开发软件,以满足对软件日益增长的需求如何维护数量不断膨胀的已有软件软件危机的介绍上一页

返回下一页软件工程定义:软件工程是以系统的、规范的、定量的方法应用于软件的开发、运营和维护,以及对这些方法的研究软件工程学的主要内容是软件开发技术和软件工程管理。软件开发技术方法:完成软件开发的各项任务的技术方法,回答“怎样做”的问题;工具:为运用方法而提供的自动的或半自动的软件工程支撑环境;过程:为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。软件工程管理学软件工程经济学软件管理学(费用管理、人员组织、工程计划管理、软件配置管理)2.软件工程学的主要内容上一页

返回下一页定义:软件从定义、开发、使用和维护直到废弃所经历的时期组成软件定义,3个阶段问题定义、可行性研究和需求分析软件开发:具体设计和实现在前一个时期定义的软件。它通常由下述4个阶段组成总体设计、详细设计←(系统设计)编码和单元测试、综合测试←(系统实现)运行维护:使软件持久地满足用户的需要。软件生存周期上一页

返回下一页问题定义可行性研究需求分析总体设计详细设计编码与单元测试综合测试软件维护要解决的问题是什么问题性质、工程目标和规模的报告分析员:实际用户+负责人是否有解决办法?分析员高层逻辑模型,准确和具体的工程规模和目标,成本/效益分析等可行性报告为了解决的问题,目标系统必须做什么?准确确定系统的功能系统的逻辑模型(数据流图+数据字典+简要算法)如何解决这些问题模块划分软件结构如何具体地实现系统:每个模块的流程图(程序的详细规格说明)通过各种类型的测试,使软件达到预定的要求写出正确的容易理解和容易维护的程序模块通过各种必要的维护活动使系统持久地满足用户的需要生命周期各阶段的基本任务瀑布模型快速原型模型软件重用模型螺旋模型3.7.2软件开发模型上一页

返回下一页瀑布模型遵循软件生存期的划分,明确规定每个阶段的任务,各个阶段的工作按顺序展开,恰如奔流不息拾级而下的瀑布。特点:阶段间具有顺序性和依赖性推迟实现的观点质量保证的观点优点:

可强迫开发人员采用规范的方法;严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证缺点:

瀑布模型是由文档驱动的由于瀑布模型几乎完全依赖于书面的规格说明,很可能导致最终开发出的软件产品不能真正满足用户的需要。1瀑布模型上一页

返回下一页chapter__3100WaterFallmodel需求分析设计实施测试维护chapter__3101WaterFallmodel适合的项目在项目开始前,项目的需求很明确在项目开始前,解决方案也很明确类似的项目如:公司的财务系统库存管理系统短期项目快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成功能的一个子集。主要优点:快速原型模型是不带反馈环的软件产品的开发基本上是线性顺序进行的。主要原因:

原型系统已经通过与用户交互而得到验证,据此产生的规格说明文档正确地描述了用户需求开发人员通过建立原型系统已经学到了许多东西,因此,在设计和编码阶段发生错误的可能性也比较小,这自然减少了在后续阶段需要改正前面阶段所犯错误的可能性。2快速原型模型上一页

返回下一页chapter__3103Prototypechapter__3104Prototype模型适合的项目在项目开始前,项目的需求不明确需要减少项目需求的不确定性类似的项目如:确定显示界面第一次开发的产品,验证可行性这种开发模型旨在开发具有各种一般性功能的软件模块,将它们组成软件重用库,这些模块设计时考虑其适应各种界面的接口规格,可供软件开发时利用。优点是减少软件生产中的重复开发,避免软件开发人员的大量重复劳动,提高开发效率,缩短开发周期,降低开发成本。软件重用库的模块不仅要便于选择使用,而且还应具有允许扩充、积累其成分的性能。3软件增量模型上一页

返回下一页chapter__3106IncrementalModel核心功能核心功能112123第一增量第二增量第三增量核心功能112123……chapter__3107增量模型适合的项目项目开始,明确了需求的大部分,但是需求可能会发生变化对于市场和用户把握不是很准,需要逐步了解对于有庞大和复杂功能的系统进行功能改进,就需要一步一步实施的。螺旋模型把软件开发过程安排为逐步细化的螺旋周期序列,每经历一个周期,系统就细化和完善一些。螺旋模型把软件过程描绘为“计划→风险分析→原型→用户评审”周而复始的四种活动,将其称为一个螺旋周期。每一个周期又可细化为若干任务。这种模型对大型新产品特别有效。4螺旋模型上一页

返回下一页chapter__3110SpiralModel螺旋模型沿着螺线旋转,在四个象限上分别表达了四个方面的活动,即:制定计划──确定软件目标,需求和选定实施方案,弄清项目开发的限制条件风险分析──评估所选方案,考虑如何识别和消除风险实施工程──实施软件开发,编码,测试等客户评估──评价开发工作,提出修正建议,规划下

温馨提示

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

评论

0/150

提交评论