1.5.2 计算机软件组成

1.5.2 计算机软件组成

软件是用户与硬件之间的接口界面。用户主要通过软件与计算机进行交流。软件是计算机系统设计的重要依据。为了方便用户,为了使计算机系统具有较高的总体效用,在设计计算机系统时,必须通盘考虑软件与硬件的结合,以及用户的要求和软件的要求。

软件是由计算机程序和程序设计的概念发展演化而来的,是在程序和程序设计发展到一定规模并且逐步商品化的过程中形成的。软件开发经历了程序设计阶段、软件设计阶段和软件工程阶段的演变过程。

程序设计阶段出现在1946—1955年。此阶段的特点是:尚无软件的概念,程序设计主要围绕硬件进行开发,采用机器语言编程,规模很小,程序设计追求节省空间和编程技巧,无文档资料(除程序清单外),主要用于科学计算,计算量较大,但输入/输出量不大。

软件设计阶段出现在1956—1970年。此阶段的特点是:硬件环境相对稳定,出现了“软件作坊”的开发组织形式,开始广泛使用产品软件(可购买),从而建立了软件的概念。随着计算机技术的发展和计算机应用的日益普及,软件系统的规模越来越庞大,高级编程语言层出不穷,应用领域不断拓宽,出现了操作系统、数据库及其管理系统,社会对软件的需求量剧增。但软件开发技术没有重大突破,软件产品的质量不高,生产效率低下,从而导致了“软件危机”的产生。

自1970年起,软件开发进入了软件工程阶段。由于“软件危机”的产生,基于个人和简单团队分工的传统软件开发效率低下,可靠性低,迫使人们不得不研究、改变软件开发的技术手段和管理方法,研究工程的方法。从此软件开发进入了软件工程时代。此阶段的特点是:硬件已向巨型化、微型化、网络化和智能化四个方向发展,数据库技术已成熟并广泛应用,第三代、第四代语言出现。

计算机软件总体分为系统软件和应用软件两大类:

系统软件是指计算机厂家为实现计算机系统的管理、调度、监视和服务等功能而提供给用户使用的软件。系统软件包括各类操作系统,如Windows、Linux、UNIX 等,还包括操作系统的补丁程序及硬件驱动程序、语言处理系统、数据库系统、分布式软件系统、网络软件系统、人机交互系统等。

应用软件是指专门为数据处理、科学计算、事务管理、多媒体处理、工程设计等应用编写的各类程序,可以细分的种类就更多了,如工具软件、游戏软件、管理软件等都属于应用软件类。

由计算机软件与计算机硬件共同构成计算机系统,如图1.23所示。

图1.23 计算机系统的组成