2.3.2 计算机软件的分类
按照不同的原则和标准,可以将软件划分为不同的种类。根据功能不同,计算机软件可以分为系统软件和应用软件两大类。
1.系统软件
系统软件是指控制和协调计算机及外围设备,支持应用软件开发和运行的系统,是无须用户干预的各种程序的集合,主要功能是调度,监控和维护计算机系统;负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及底层每个硬件是如何工作的。
(1)操作系统
操作系统(Operating System,OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。
①操作系统的功能:操作系统主要提供5方面的功能:处理机管理、存储管理、文件管理、设备管理和用户接口。
● 处理机管理:在多道程序系统中,多个程序同时执行。如何把CPU的时间合理地分配给各个程序是处理机管理要解决的问题,它主要解决CPU的分配策略、实施方法以及资源的分配和回收问题。
● 存储管理:主要解决多道程序在内存中的分配,保证各道程序间互不冲突,并且通过对内外存的联合管理来扩大存储空间。
● 文件管理:计算机中的各种程序和数据均为计算机的软件资源,它们都以文件形式存放在外存中。文件管理的基本功能是实现对文件的存取和检索,为用户提供灵活方便的操作命令以及实现文件共享、安全、保密等措施。
● 设备管理:现代计算机系统都配备多种I/O设备,它们具有各不相同的操作性能。设备管理的功能是根据一定的分配原则把设备分配给请求I/O的作业,并且为用户使用各种I/O设备提供简单方便的命令。
● 用户接口:为了方便用户使用操作系统,操作系统向用户提供了“用户与操作系统的接口”。该接口分成两种,一种是作业级接口,它提供一组键盘命令,供用户去组织和控制作业的运行;另一种是程序级接口,它提供一组系统调用供其他程序调用。
②操作系统的类型:目前的操作系统种类繁多,很难用单一标准进行统一分类。
● 根据管理的用户数量可分为单用户操作系统和多用户操作系统。
● 根据运行环境的不同可分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操行系统等。
③常见的操作系统:Windows、UNIX、Linux、Mac OS等。
(2)程序设计语言及其处理程序
程序设计语言用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。程序设计语言有3个方面的因素,即语法、语义和语用。语法表示程序的结构或形式,亦即表示构成语言的各个记号之间的组合规律,但不涉及这些记号的特定含义,也不涉及使用者。语义表示程序的含义,亦即表示按照各种方法所表示的各个记号的特定含义,但不涉及使用者。
语言处理程序一般是由汇编程序、编译程序、解释程序和相应的操作程序等组成。它是为用户设计的编程服务软件,其作用是将高级语言源程序翻译成计算机能识别的目标程序。语言处理程序是将用程序设计语言编写的源程序转换成机器语言的形式,以便计算机能够运行,这一转换是由翻译程序完成的。翻译程序除了要完成语言间的转换外,还要进行语法、语义等方面的检查,翻译程序统称为语言处理程序,共有3种:汇编程序、编译程序和解释程序。
(3)系统服务程序
系统服务程序又称实用程序(Utilities),指一些工具软件或支撑软件,它们或者包含在操作系统之内,或者可以被操作系统调用,如系统诊断程序、测试程序、调试程序等。
(4)数据库管理系统
数据库管理系统(DataBase Management System,DBMS)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。它可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。大部分DBMS提供数据定义语言(Data Definition Language,DDL)和数据操作语言(Data Manipulation Language,DML),供用户定义数据库的模式结构与权限约束,实现对数据的追加、删除等操作。
2.应用软件
应用软件(Application Software)是用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合,分为应用软件包和用户程序。应用软件包是利用计算机解决某类问题而设计的程序的集合,供多用户使用。应用软件是为满足用户不同领域、不同问题的应用需求而提供的那部分软件。它可以拓宽计算机系统的应用领域,放大硬件的功能。