软件系统(Software Systems)是指由
系统软件、
支撑软件和应用软件组成的计算机软件系统,它是
计算机系统中由软件组成的部分。
系统软件是指担负控制和协调计算机及其
外部设备、支持应用软件的开发和运行的一类计算机软件。系统软件一般包括操作系统、
语言处理程序、
数据库系统和
网络管理系统。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。
支撑软件是在系统软件和应用软件之间,提供应用软件设计、开发、测试、评估、运行检测等
辅助功能的软件,有时以
中间件形式存在。
应用软件(Application)是和系统软件相对应的,是用户可以使用的各种
程序设计语言,以及用各种程序设计语言编制的
应用程序的集合,分为
应用软件包和
用户程序。应用软件包是利用计算机解决某类问题而设计的程序的集合,多供用户使用。应用软件是为满足用户不同领域、不同问题的应用需求而提供的那部分软件。 它可以拓宽
计算机系统的
应用领域,放大硬件的功能。应用软件是直接面向用户需要的,它们可以直接帮助用户提高
工作质量和效率,甚至可以帮助用户解决某些难题。应用软件一般分为两类:一类是为特定需要开发的实用型软件,如
会计核算软件、订景系统、
工程预算软件和教育辅助软件等:另一类是为了方便用户使用计算机而提供的一种工具软件,如用于文字处理的Word、用于辅助设计的
AutoCAD及用于
系统维护的
瑞星杀毒软件等。
分布式软件系统(Distributed Software Systems)是支持
分布式处理的软件系统,是在由通信网络互联的
多处理机体系结构上执行任务的系统。它包括
分布式操作系统、分布式
程序设计语言及其编译(解释)系统、
分布式文件系统和
分布式数据库系统等。
分布式操作系统负责管理分布式处理
系统资源和控制分布式程序运行。它和集中式操作系统的区别在于
资源管理、
进程通信和
系统结构等方面。
分布式程序设计语言用于编写运行于
分布式计算机系统上的分布式程序。一个分布式程序由若干个可以独立执行的
程序模块组成,它们分布于一个分布式处理系统的多台计算机上被同时执行。它与集中式的
程序设计语言相比有三个特点:分布性、通信性和
稳健性。
分布式文件系统具有执行远程
文件存取的能力,并以透明方式对分布在网络上的文件进行管理和存取。
分布式数据库系统由分布于多个计算机结点上的若干个
数据库系统组成,它提供有效的存取手段来操纵这些结点上的子数据库。
分布式数据库在使用上可视为一个完整的数据库,而实际上它是分布在地理分散的各个结点上。当然,分布在各个结点上的子数据库在逻辑上是相关的。