计算机软件体系
1、计算机软件的定义、作用、发展和分类
1)程序:由一系列控制计算机各部件协调工作的指令组成的。
2)软件:计算机系统中的程序、数据及使用和维护程序所需要的所有文档的集合。软件=程序+数据+说明文档。
3)软件的作用
(1)控制和管理计算机的硬件资源,提高计算机资源的使用效率,协调计算机各组成部分的工作。
(2)在硬件提供的基本功能的基础上,扩大计算机的功能,提高计算机实现和运行各类应用任务的能力。
(3)向用户提供尽可能方便、灵活的计算机操作使用界面。
(4)为专业人员提供计算机软件的开发工具和环境,提供对计算机本身进行调试、维护和诊断等需要的工具。
(5)完成特定应用的信息处理任务。
4)软件分类
(1)系统软件:为整个计算机系统所支配的,不依赖于特定应用的通用软件。任务:控制和维护计算机的正常运行,管理计算机的各种资源,以满足其他软件的需要。(操作系统、设备驱动程序、语言处理程序)。
(2)应用软件:用于解决不同具体应用问题的专门软件,应用软件必须在系统软件的支持下才能正常运行(办公软件、图形处理软件、多媒体软件)。
(3)工具软件:有特定功能的软件,为整个计算机系统(硬件和操作系统)所使用,对系统进行维护或功能扩展的软件(文件管理软件、计算机系统安全类软件)
5)计算机软件的层次结构
上层 | 工具软件、编程软件、数据库软件、应用软件 |
底层 | 操作系统 |
2、操作系统
1)定义:计算机硬件的直接外层,它对硬件的功能进行首次扩充,是用来控制和管理计算机系统的软、硬件资源,提高计算机系统资源的使用效率,方便用户使用的一组程序的集合。
2)地位:操作系统是其他软件运行的基础,为用户提供友善的服务界面,是计算机的思想和灵魂。
3)作用:
(1)资源管理功能:对计算机系统硬件和软件资源的管理、控制与调度,以提高计算机的效率和各种硬件的利用率。
从资源管理的角度看,操作系统的功能:
作业管理:包括任务管理、界面管理、人机交互、图形界面、语音控制、虚拟现实。
文件管理:对软件资源的管理,即对存放在计算机中的信息进行逻辑组织和物理组织、维护文件目录结构以及实现对文件的各种操作。
存储管理:对存储空间的管理,主要指对内存的管理。
虚拟内存---地址转换;存储器分配---信息保护。
设备管理:对硬件设备的管理,包括对输入和输出设备的分配、启动、完成和回收。
进程管理(处理机管理):对处理机执行时间的管理,将CPU合理的分配给每个任务。
程序管理:有效地、合理地分配CPU的时间。
(2)人机交互功能:作为用户与硬件的接口和人机交互的界面,要为用户提供最佳的工作环境和最友好的服务,为其他软件的开发提供必要的服务和相应的接口,主要靠可以进行输入输出的外部设备和相应的设备驱动程序来完成。
4)分类:
(1)按其管理用户的数量:单用户操作系统、多用户操作系统。
(2)按其对任务的响应方式不同:实时操作系统、分时操作系统。
(3)按用户界面:命令行界面操作系统、图形用户界面操作系统。
(4)按其同时管理作业数量的多少:单道作业系统、多道作业批处理系统。
(5)按使用环境:个人操作系统、网络操作系统、分布式操作系统。
5)批处理操作系统
(1)单道批处理操作系统:每次只调一个用户程序进入内存,只允许一个作业执行。
(2)多道批处理操作系统:允许多个作业同时装入主机存储器,使一个中央处理器轮流执行各个任务,各个作业可以同时使用各自所需的外围设备。
(3)多道:内存中驻留多个程序或一个程序的多个程序段。
(4)多道技术原理:将运行过程细化成小的步骤,在内存中同时存放并运行几道相互独立的程序,多道程序轮流地或分时地占用处理机交替执行,从而实现宏观上的并行,但从微观看,仍是串行。
(5)多道技术的优点:提高CPU、内存、I/O设备的利用率,增加系统的吞吐量。
(6)多道技术的缺点:平均周转时间长,没有交互能力。
6)分时操作系统
(1)采用了分时技术,把CPU的时间分成很短的时间片段,称为时间片,操作系统以时间片为单位,采用时间片轮换方式处理请求并通过交互方式在终端上向用户显示结果,每次服务一个时间片。
(2)优点:响应快、界面友好、便于资源共享。
7)实时操作系统
(1)实时:指计算机对于外部事件能够以足够快的速度进行处理,并在被控对象允许的时间范围内做出快速反应。
(2)主要任务:对时间进行实时处理。
(3)特点:具有系统的可确定性,即能对运行情况的最好和最坏等情况做出精确的估计。
(4)主要用途:过程控制系统、信息查询系统、事务处理系统。
8)网络操作系统
(1)使网络上的计算机能够方便而有效地共享网络资源,为网络用户提供各种服务的软件和有关协议的集合。