购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.6 计算机软件系统

计算机软件(software)也称软件,是指计算机系统中的程序及其数据,以及用于开发、使用和维护的有关文档的集合。程序是计算任务的处理对象和处理规则的描述;文档是为了便于了解程序所需的阐明性资料。软件是用户与硬件之间的接口界面,用户主要是通过软件与计算机进行交流。

软件系统可以分为系统软件和应用软件两大类。

3.6.1 系统软件

系统软件是指控制和协调计算机系统中的硬件设备和软件资源的程序。其主要功能是调度、监控和维护计算机系统,使计算机系统中各种独立的硬件可以协调一致地工作。系统软件使得用户和其他软件将计算机当作一个整体,无须了解底层每个硬件的细节就可以使用计算机或开发程序。

一般来讲,系统软件包括操作系统和一系列基本的工具,比如编译器、数据库管理、存储器格式化、文件系统管理、用户身份验证、驱动管理、网络连接等方面的工具。

1.操作系统

操作系统(operating system,OS)是管理计算机全部硬件与软件资源的大型程序,是计算机系统的核心与基石,其他软件或程序只有在操作系统的支持下才能运行。

操作系统是计算机系统的控制和管理中心,从资源角度来看,它具有处理器管理、存储器管理、设备管理、文件管理等功能。同时,操作系统也是计算机裸机与应用程序及用户之间的桥梁,为用户提供一个与系统交互的操作界面。

常用的操作系统有DOS、Windows、UNIX、Linux和NetWare等。

2.语言处理系统

计算机只能直接识别和执行机器语言,因此要计算机上运行汇编语言或高级语言程序就必须配备程序语言翻译程序。翻译程序本身是一组程序,不同的高级语言都有相应的翻译程序。翻译程序除了要完成语言间的转换外,还要进行语法、语义等方面的检查,翻译程序统称为语言处理程序,共有三种,即汇编程序、编译程序和解释程序。语言处理程序如汇编语言汇编器、C语言编译、连接器等。

通常,人们把人类与计算机进行交流的语言称为程序设计语言,程序设计语言包括机器语言、汇编语言、高级语言。

(1)机器语言

机器语言是用二进制代码表示的计算机能直接识别和执行的机器指令的集合,是最低级的语言,可以被机器直接执行,速度快,占用资源少。

不同类别的计算机都有各自的机器语言,即指令系统。某一类计算机的指令系统不一定能够被其他类别的计算机识别,因此代码可移植性和通用性差。另外,使用二进制代码编程不仅可读性差、效率低、易出错、工作量大,而且不便于后期维护和修改,编程人员还需要深入了解计算机的硬件结构。因此,机器语言不容易掌握和使用。

(2)汇编语言

汇编语言是用一些容易理解和记忆的符号指令来代替一个特定的机器语言指令,比如,用“ADD”表示数字逻辑上的加法,“SUB”表示数字逻辑上的减法,“MOV”表示数据传送指令等。通过这种方法,人们对程序的阅读、程序功能的理解,以及对现有程序的修复和运营维护都变得更加简单方便。

汇编语言只是将机器语言做了表示方法的改进,并没有从根本上解决机器语言推广性和移植性差的缺点,但由于汇编语言保持了机器语言优秀的执行效率,结合其自身的可阅读性和简便性,使其依然是目前常用的编程语言之一。汇编语言通常被应用于底层、硬件操作和高要求的程序优化的场合。汇编语言与机器语言一样,都与计算机硬件密切相关,所以被称为“面向机器的语言”。

(3)高级语言

在汇编语言出现之后,人们发现了限制程序推广的关键因素是程序的可移植性,需要设计一个能够不依赖于计算机硬件,能够在不同机器上运行的程序,这样可以免去重复编程,提高效率。同时,这种语言还要接近于人的自然语言或数学语言。在 20 世纪 50 年代中期,诞生了高级编程语言。

高级语言是“面向用户的语言”,较接近于人类的自然语言或数学公式,基本脱离了机器的硬件系统。其优点是表达能力强,功能多,编程效率高,上手速度快,自动化程度高,因而在大部分软件开发中,使用者都采用高级语言编程。使用高级语言编写的程序称之为源程序。

3.数据库系统

在信息社会里,人们每天面临着来自社会、网络、生产活动等产生的大量信息,单靠人工无法对这些信息进行有效的管理,而计算机凭借其高速度、大容量、高精度等特点可以对信息进行搜集、存储、处理和使用,数据库系统就是在这种需求背景下应运而生和不断发展起来的。

数据库系统(database system,DBS)主要由数据库、数据库管理系统以及相应的应用程序组成。

数据库(database,DB)是指按照一定的数据模型存储的数据集合,如学生成绩信息、宿舍管理信息、仓库货物信息、病人就诊信息等都可以分别组成数据库。

数据库管理系统(database management system,DBMS)是一种操纵和管理数据库的软件,用于建立、使用和维护数据库,能够有组织地、动态地存储大量数据,可为多种应用共享,使人们能方便、高效地使用这些数据。比如,Oracle、DB2、MySQL、SQL Server、Access和Sybase都是数据库管理系统。

数据库系统不但能够存放大量的数据,更重要的是能迅速、自动地对数据进行检索、修改、统计、排序、合并等操作,以得到所需的信息。这一点是传统的文件柜无法做到的。

4.各种服务性程序

服务性程序也是系统软件的一部分,也称工具软件,主要是提供一些常用的服务功能并支持其他软件开发而编制的一类程序,可以帮助用户使用与维护计算机,主要有编辑程序、软件调试程序以及诊断程序等。

(1)编辑程序

编辑程序为用户提供良好的编辑环境。在这个环境中,用户可以使用简单的命令或菜单即可方便地进行程序文档或数据文档的建立、修改和生成。常用的编辑程序有DOS环境下的EDIT、DLIN;Windows环境下的记事本程序及专用的集成环境,如Visual Basic、Visual C++等。

(2)连接装配程序

一个大型软件通常由多个功能模块构成,分别由不同的人员编译后,然后将各自生成的目标模块通过连接装配程序与相应高级语言函数库等连接在一起,生成一个可执行文件(程序)才能运行。

(3)纠错程序

纠错程序也叫DEBUG,其功能是帮助用户检查程序中的错误,以便修正。当然,使用纠错程序,需要有机器语言和汇编语言方面的训练。

(4)诊断程序

诊断程序主要用来帮助用户维修计算机硬件,可以自动检测计算机内存、硬盘以及硬件故障,又可用于对程序错误的定位。

此外,工具软件还包括杀毒软件、数据压缩软件、备份软件、软件测试工具、结构化流程图绘图程序等。

3.6.2 应用软件

1.通用软件

这类软件通常是为解决某一类问题而设计的,而这类问题是很多人都要遇到和解决的,包括字处理软件、报表处理软件、地理信息软件、网络软件、游戏软件、企业管理软件、多媒体应用软件、辅助设计与辅助制造软件和信息安全软件等其他通用软件。

2.专用软件

在市场上可以买到通用软件,但有些具有特殊功能和需求的软件是无法买到的。比如,能自动控制车床的程序,同时也能将各种事务性工作集成起来统一管理;仅适用于个别单位会计业务的会计软件;为解决现代科学技术各领域中所提出的数学问题的数学软件,等等。因为这些软件对于一般用户来说太特殊了,所以只能组织人力开发。当然开发出来的这种软件也只能专用于这种情况。 Ho7k2PLlVcUFo0z8rx6hMRzBLRYEerGvvrfybcr/Ppoh+G2uOP8BpTFhdnECsMJ/

点击中间区域
呼出菜单
上一章
目录
下一章
×