大学信息技术基础(第三版)第3章_第1页
大学信息技术基础(第三版)第3章_第2页
大学信息技术基础(第三版)第3章_第3页
大学信息技术基础(第三版)第3章_第4页
大学信息技术基础(第三版)第3章_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

1、第3章 计算机软件系统,主要内容: 3.1 软件的性质及发展史 3.2 操作系统 3.3 应用软件 本章小结 思考与练习,3.1 软件的性质及发展史,3.1 软件的性质及发展史,3.1.1 对计算机软件的理解 从广义上讲,软件定义是: (1)能够完成预定功能和性能的可执行的指令(计算机程序); (2)使得程序能够适当地操作信息的数据结构; (3)描述程序的操作和使用的文档。 软件的应用领域十分广泛,呈现形式也是多种多样的,在某种程度上很难对软件的类型给出一个通用的界定。,3.1.2 软件的性质 1.表现形式不同 软件是一种逻辑实体,具有抽象性。 2.生产方式不同 3.维护方式不同 4.软件的复

2、杂性和规模不断增加 5.软件的本质是数字存在,3.1 软件的性质及发展史,3.1.3 软件技术的进化史 1.软件技术发展的初期(20世纪5070年代) 20世纪50年代前后,当时的程序员们使用机器语言来进行编程运算,直接对以数字表示的机器代码进行操作,这可以说是软件设计的“石器时代”。 20世纪60年代中期至70年代末期这一时期是以Pascal、COBOL和C等编程语言和关系数据库管理系统为标志的结构化软件技术。 在这个时期,数据库技术得到了飞速的发展。在20世纪60年代之前,数据管理功能主要由文件系统实现,后来数据库技术经历了层次数据库、网状数据库和关系数据库等阶段。,3.1 软件的性质及发

3、展史,为提高软件的质量,伴随着结构化软件技术而出现的软件工程方法,使软件工作的范围从只考虑程序的编写扩展到从定义、编码、测试到使用、维护等整个软件生命周期。 2.软件技术发展的中期(20世纪80年代) 20世纪80年代图形技术有了迅速的发展,图形用户界面(GUI)的迅速普及与流行,成为计算机软件领域人机界面革命的最耀眼亮点。 1985年微软发行了Windows 1.0,是第一次对PC平台GUI的尝试。 另一方面,当时的Unix系统上的图形界面X Window也蓬勃地发展起来。,3.1 软件的性质及发展史,随着计算机科学的发展和应用领域的不断扩大,对计算机技术的要求越来越高,结构化程序设计语言和

4、结构化分析与设计已无法满足用户需求的变化,于是面向对象技术开始浮出水面。 3.网络计算时代的开始 (20世纪90年代至今) 随着WWW普及,软件架构再次发生了新的变革从客户机/服务器模式向浏览器/服务器(B/S)模式转变。 B/S模式具备了C/S架构所具有的一切优点,用户使用单一的浏览器软件就可访问文本、图像、声音及数据库等信息,由于用户端无需专用的软件,因此当企业对网络应用进行升级时,只需更新服务器端的软件,减轻了系统维护与升级的成本与工作量。,3.1 软件的性质及发展史,B/S和Internet技术的出现,大大地推动了软件技术的发展。 Linux目前已成为重要的和流行的操作系统,Linux

5、开创了自由软件或开放源码软件的新时代。 Android(在中国大陆一般称为“安卓”)是一种以Linux为基础的开放源码操作系统,是Google公司另一个主要软件产品。 1995年,由三位杰出的软件科学家Jacobson、Booch和R-umbaugh多年研究成果的UML(统一建模语言)诞生了。 1997,三位科学家又提出了“统一的软件开发过程UDP(T-he United Software Development Process)”。 4.软件之变21世纪的软件技术,3.1 软件的性质及发展史,软件技术发展的第一个特点是网络化。 软件技术发展的第二个特点是服务化。 软件技术发展的第三个特点是融

6、合化。 随着多核处理器技术的硬件环境的普及,计算平台向多核、并行的方向发展已是大势所趋,伴随着快速开发工具和动态语言这两大基础共同带动了两个方向的变革。 当前,内容处理已成为网络浏览检索、软件集成(Web服务)、网格等计算机应用的瓶颈,语义处理也是下一代软件系统的核心技术。 冯诺依曼的最大贡献是提出了在单台计算机上把程序视同为数据的程序存储式计算机模型,而语义研究的目标是在整个网络上实现将程序视同为数据。,3.1 软件的性质及发展史,3.1.4 软件系统的分层结构 计算机软件系统是一个分层的软件结构,包括系统软件层、支持软件层和应用软件层,其最底层是计算机硬件(图3-3)。,3.1 软件的性质

7、及发展史,图3-3 软件系统的层次结构,图3-4 微软公司的系统软件和应用软件产品,1.系统软件 所谓系统软件是指本身不提供或提供很少的应用层面功能,主要为其他软件提供服务的软件。 2.支持软件 支持软件介于系统软件层和应用软件层之间,其功能是为应用层软件及最终用户处理自己的程序或者数据提供服务。 3.应用软件 软件系统结构的最顶层是应用软件层,是最终用户使用的界面。应用软件是指在操作系统和支持软件的支持下,软件厂商为用户开发的通用或专用软件,以及用户开发的应用程序等。 4.软件分类的国家标准,3.1 软件的性质及发展史,3.1 软件的性质及发展史,3.2 操作系统,3.2.1 操作系统的任务

8、及功能 操作系统是管理软硬件资源、控制程序执行,改善人机界面,合理组织计算机工作流程和为用户使用计算机提供良好运行环境的一种系统软件。 操作系统的任务是管理好计算机的全部软硬件资源,提高计算机的利用率;担任用户与计算机之间的接口,使用户通过操作系统提供的命令或菜单方便地使用计算机(图3-6)。,3.2 操作系统,从资源管理的角度来看,操作系统的功能分为处理机管理、存储管理、I/O设备管理、文件系统和人机接口管理等。,3.2 操作系统,图3-6 用户通过使用应用软件和系统软件,来操作和管理计算机,3.2 操作系统,图3-7 操作系统的引导过程 图3-8 操作系统的功能,3.2.2 处理机(CPU

9、)管理 1.中断处理 所谓中断是指CPU对系统发生的某个事件做出的一种反应,即CPU暂停正在执行的程序,保留现场(CPU当前的状态)后自动转去执行相应的处理程序,处理完该事件后再返回断点,继续执行被“打断”的程序。 2.处理器调度 在多道程序或多用户的情况下,组织多个作业或任务执行时,就要解决处理器的调度、分配和回收等问题。 为了实现处理器调度的功能,操作系统引入了进程(process)的概念,处理器的分配和执行都是以进程为基本单位。,3.2 操作系统,3.理解进程及状态变化 程序与进程概念是不可分的,只要在计算机上运行一个程序,相应的一个进程或多个进程就诞生了,而且它伴随着整个操作过程,直到

10、程序终止。 进程是现代操作系统的一个最基本的概念,是将一个程序与执行该程序的活动区分开来。 进程状态是机器在那个时刻的快照,在一个程序的执行期间的不同时刻,将观察到不同的快照。 一般说来进程有三种状态,如图3-11所示: 执行态:当前进程已分配到CPU,它的程序正在处理机上运行; 就绪态:进程已具备运行条件,但因为其他进程正占用CPU,所以暂时不能运行而等待分配CPU的状态; 等待态:因等待某件事件发生而暂时不能运行的状态。,3.2 操作系统,操作系统就通过PCB感知进程的存在,通过PCB了解进程和控制进程的运行(图3-10)。,3.2 操作系统,图3-9 进程的三种基本 状态及转换,3.2

11、操作系统,图3-10 处理器按进程控制块(PCB)对进程进行调度,4.理解线程 线程(thread)是进程中执行运算的最小单位,亦即执行处理机调度的基本单位。 线程可以在处理器上独立调度执行,这样,在多处理器环境下就允许几个进程各自在单独处理器上进行。 线程是指进程内的一条执行线路,或者说是进程中可执行代码的单独单元。操作系统将资源分配给进程,同一进程的所有线程共享该进程的所有资源(图3-11)。,3.2 操作系统,图3-11 一个进程可以含有一个或多个线程,5.多核平台下的多线程程序设计与应用 软件多线程。即便处理器只能运行一个线程,操作系统也可以通过快速的在不同线程之间进行切换,由于时间间

12、隔很小,给用户造成一种多个线程同时运行的假象。 一个程序采用了线程级并行编程,那么这个程序在运行时可以把并行的线程同时交付给两个核心分别处理,因而程序运行速度得到极大提高。 通过划分任务,线程应用能够充分利用多个执行内核,并可在特定的时间内执行更多任务。,3.2 操作系统,3.2.3 存储管理 存储管理是指存储器资源(主要指内存和外存)的管理。 存储管理的主要功能包括: 存储分配 存储共享 存储保护 存储扩充 计算机系统提供多级存储结构,操作系统可以对不同存储类型进行管理。如图3-12所示。,3.2 操作系统,高速缓存(以下简称Cache)的出现主要是为了解决CPU运算速度与内存读写速度不匹配

13、的矛盾,因为CPU运算速度要比内存读写速度快很多,这样会使CPU花费很长时间等待数据到来或把数据写入内存。 RAM是CPU能够直接访问的存储器。,3.2 操作系统,图3-12 操作系统的多级存储结构,虚拟存储器(Virtual Memory)是由操作系统提供的一个假象的特大存储器。虚拟存储器不是物理上扩大内存空间,而是逻辑上扩充了内存容量(图3-13),用户可以使用到比实际物理内存大很多的虚拟存储容量。,3.2 操作系统,图3-13 虚拟存储示意图,3.2.4 设备管理 它包括常用的输入输出设备、外存设备以及终端设备等。 设备管理的主要任务是控制设备和CPU之间进行IO操作(图3-14)。 设

14、备管理的主要任务有: (1)选择和分配输入/输出设备以便进行数据传输操作; (2)控制输入/输出设备和CPU(或内存)之间交换数据; (3)为用户提供一个友好的透明接口,把用户和设备硬件特性分开,使得用户不必考虑设备的硬件差异; (4)提高设备和设备之间、CPU和设备之间的并行性。,3.2 操作系统,引入缓冲的主要目的是缓和CPU与I/O设备之间速度不匹配的矛盾,提高它们之间的并行性,以便操作系统获得最佳效率。,3.2 操作系统,图3-14 操作系统对外部设备的管理,3.2.5 文件管理 文件是在逻辑上具有完整意义的并赋有名称的信息集合体。 所谓文件系统,就是操作系统中负责操纵和管理文件的一整

15、套设施,它实现文件的建立、读写、修改、共享和保护等操作,还负责完成对文件的按名存取和进行存取控制。 用户对文件的观察和使用是从自身处理文件中数据时采用的组织方式来看待文件组织形式,这种从用户关点出发所见到的文件组织形式称为文件的逻辑组织。文件在存储设备上的存储组织形式称为文件的物理组织。,3.2 操作系统,在计算机中的文件有成千上万,光用名字来区分也不利于查找,所以计算机中有了文件夹的概念。文件夹是一个层次化的目录结构,最顶层称为根目录。 3.2.6 人机接口管理 人机接口管理的主要作用是控制有关设备的运行和理解并执行通过人机交互设备传来的有关的各种命令和要求。 对操作系统的更高要求是实现智能

16、人机接口,以建立和谐的人机交互环境,改善人机交互的友好性和易用性,使人与计算机之间的交互更加自然、方便。,3.2 操作系统,3.2.7 操作系统的分类 1.个人计算机操作系统 个人计算机操作系统主要供个人使用,功能强、价格便宜,可以在几乎任何地方安装使用。它能满足一般人操作、学习、游戏等方面的需求。 2.嵌入式操作系统 嵌入式操作系统(Embedded Operating System)是运行在嵌入式系统环境中,对整个嵌入式系统以及它所操作、控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件,使整个系统能高效地运行。 3.网络操作系统,3.2 操作系统,它是负责管理整个网络资源和

17、方便网络用户的软件的集合。网络操作系统除了一般操作系统的五大功能之外,还应具有网络管理模块。 4.分布式操作系统 3.2.8 嵌入式系统与嵌入式软件 嵌入式系统是计算机的一种应用形式,通常指埋藏在宿主设备中的微处理机系统。 嵌入式系统已广泛应用于网络交换机、路由器和Modem,以及构建CIMS所需的机器人以及汽车电子系统中。 嵌入式软件可分为嵌入式操作系统和嵌入式应用程序两部分。,3.2 操作系统,3.3 应用软件,应用软件指用于解决各种不同具体应用问题的专门软件。 1.科学和工程计算软件 科学和工程计算软件的特征是“数值分析”算法。 目前被广泛使用的MATLAB软件工具,是用于概念设计、科学

18、计算、算法开发、建模仿真、图形处理、实时实现的理想的集成环境。 2.字表处理软件 所谓字表处理软件就是在计算机上实现对文字或数据进行输入、编辑、排版、计算、统计和打印等操作的软件,它在办公室自动化方面发挥着巨大作用。,3.3 应用软件,3.图形图像处理软件 从网页设计、工程绘图、三维动画制作等一般性的应用,到图像识别、三维重建技术、虚拟现实技术、科学计算可视化等技术领域,都离不开计算机图形图像处理技术。 4.网络应用软件 网络应用软件是用户使用网络的接口和界面,这类软件非常丰富。 5.应用数据库软件 应用数据库软件的开发是构建在数据库管理系统(DBMS) 之上的。,3.3 应用软件,在软件的发

19、展过程中,软件从个性化的程序演变为工程化的产品,人们对软件的看法发生了根本性的变化。“软件程序”显然不能涵盖软件的完整内容,除了程序之外,软件还包括与之相关的文档和配置数据,以保证这些程序的正确运行。 计算机软件包括系统软件、支持软件和应用软件三大类。系统软件是负责协调和控制整个计算机系统的硬件和各种程序间活动和功能的程序集合。将特定的硬件配置与系统软件包相结合,就形成所谓的计算机系统平台。支持软件介于系统软件层和应用软件层之间,其功能是为应用软件层及最终用户处理自己的程序或者数据提供服务。应用软件由能帮助用户解决特定问题的一系列程序组成,用来满足个人、团体或企业的需要。 操作系统提供对硬件控制的调用和应用程序所必需的功能,是一个涉及面广、内部关系复杂的系统软件。本章对任务与进程管理、存储器管理、输入输出及设备管理、文件系统与信息存储管理进行了介绍和讨论。,本章小结,一、思考题 1.与一般物质产品相比,计算机软件具有哪些独有的性质? 2.简述计算机软件发展的各个时期。 3.21世纪的软件技术的发展呈现什么特点? 4.什么是B/S模式?它与C/S相比具有哪些优点? 5.计算机软件系统的分层结构包括哪几层? 6.按照计算机软件分类的国家标准

温馨提示

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

评论

0/150

提交评论