理论教育 系统软件发展历程及其在计算机操作系统中的重要性

系统软件发展历程及其在计算机操作系统中的重要性

时间:2023-11-09 理论教育 版权反馈
【摘要】:系统软件主要包含操作系统、程序设计语言和语言处理程序、数据库管理、辅助程序等。1964年,IBM发布了S/360系统。集中控制的手段是来自“Exec-8系统”的软件。随着计算机硬件和软件的不断升级,微软的Windows也在不断升级,从架构的16位、32位再到64位,系统版本从最初的Windows 1.0到大家熟知的Windows 95、Windows 98、Windows 2000、Windows XP、Windows Vista、Windows 7、Windows 8、Windows 8.1、Windows 10和Windows Server服务器企业级操作系统,微软一直在致力于Windows操作系统的开发和完善。

系统软件发展历程及其在计算机操作系统中的重要性

系统软件是指控制和协调计算机及外部设备,支持应用软件开发和运行的系统,是无须用户干预的各种程序的集合,主要功能是调度、监控和维护计算机系统,负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。

系统软件主要包含操作系统、程序设计语言和语言处理程序、数据库管理、辅助程序等。

(1)操作系统

1)操作系统的基本概念

操作系统(Operating System,OS)是管理计算机系统的全部硬件资源、控制程序运行、改善人机界面、合理组织计算机工作流程和为用户使用计算机提供良好运行环境的一种系统软件。它使计算机系统中所有资源最大限度地发挥作用,为用户提供方便、有效、友善的服务界面。

从资源管理的角度,操作系统是用来控制和管理计算机系统的硬件资源和软件资源的管理软件。如记录资源的使用状况(哪些资源空闲,哪些可以使用,能被谁使用,使用多长时间等),合理分配及回收资源等。

从用户的角度,操作系统是用户与计算机硬件之间的界面。用户通过使用操作系统所提供的命令和交互功能实现访问计算机的操作,完成用户指定的任务。

从层次的角度,操作系统是由若干层次、按照一定结构形式组成的有机体。操作系统的每一层完成特定的功能,并对上一层提供支持,通过逐层功能的扩充,最终完成用户的请求。

2)操作系统的发展

操作系统的发展是一个漫长的过程,计算机发展之初并没有操作系统的概念,当时每一台计算机必须匹配专有的程序,完成相关的工作;随着时代的发展,产生了为用户管理计算机资源的操作系统,最初的操作系统一次只能运行一个程序,为了节约人力和提高计算机的工作效率,便出现了多任务的操作系统;随后,计算机走入千家万户,便有了面向企业、个人用户的操作系统,直到今天的操作系统。操作系统的发展过程大致经历了4个阶段:人工操作计算机、管理程序使用计算机、操作系统的形成和操作系统的发展。

3)操作系统的分类

在整个操作系统的发展历程中,操作系统的分类没有一个单一的标准,可以根据工作方式分为:

批处理操作系统。

②分时操作系统。

③实时操作系统。

嵌入式操作系统。

个人计算机操作系统。

⑥网络操作系统。

⑦分布式操作系统。

根据运行的环境,可分为桌面操作系统、嵌入式操作系统等;根据指令的长度分为8,16,32,64 bit的操作系统。

4)操作系统的管理功能

一个标准PC的操作系统应该提供以下功能:

①进程与处理机管理。包括:进程控制、进程同步、进程通信、进程调度。

②内存管理(存储器管理)。包括:内存分配、内存保护、地址映射、内存扩充。

设备管理。包括:缓冲管理、设备分配、设备处理、设备独立性和虚拟设备。

④文件管理。包括:文件存储空间的管理、目录管理、文件读/写管理、文件存取控制。

⑤作业管理。作业是指用户在一次计算过程中要求计算机系统所做工作的集合。包括一个作业从进入系统到运行结束,一般需要经历提交、准备、执行和完成4种状态。

5)常见的操作系统

①个人计算机

个人计算机市场目前分为两大阵营,此两种架构分别有支持的操作系统:

Apple Macintosh——Mac OSX,Windows(仅Intel平台),Linux、BSD。

IBM兼容PC——Windows、Linux、BSD、Mac OSX(非正式支持)。

大型机

最早的操作系统是针对20世纪60年代的大型主结构开发的,由于这些系统在软件方面作了巨大投资,因此原来的计算机厂商继续开发与原来操作系统相兼容的硬件与操作系统。这些早期的操作系统是现代操作系统的先驱。现在仍被支持的大型主机操作系统包括:

Burroughs MCP——B5000。Burroughs在1916年引入了MCP(Master Control Program)大型机操作系统,它主要是该公司B5000大型机的专有操作系统。在众多商用操作系统中,这是一款为数不多的仍然沿用至今的操作系统。在2010年的时候还被升级到13.0版本,不过目前主要应用在Unisys ClearPath/MCP。

IBM OS/360——IBM System/360。1964年,IBM发布了S/360系统。支持多道程序,最多可同时运行15道程序。为了便于管理,OS/360把中央存储器划分为多个(最多15个)分区,每个程序在一个分区中运行。

UNIVAC EXEC 8——UNIVAC 1108。UNIVAC1108计算机系统是通用的单处理机和多处理机系统,它的模块化结构允许选择系统的部件,以满足从作业安排(job-shop)系统到公共应用的综合复杂计算使用范围的速度和容量要求。集中控制的手段是来自“Exec-8系统”的软件。

现代的大型主机一般也可运行Linux或UNIX变种。

③嵌入式系统(www.daowen.com)

嵌入式系统使用较为广泛的操作系统(如VxWorks、eCos、Symbian OS及Palm OS)以及某些功能缩减版本的Linux或其他操作系统。某些情况下,OS指的是一个自带了固定应用软件的巨大泛用程序。在许多最简单的嵌入式系统中,所谓的OS,就是唯一的应用程序。

④类UNIX系统

所谓的类UNIX家族,指的是一族种类繁多的OS,此族包含了System V、BSD与Linux。UNIX操作系统是一个通用、交互型分时操作系统,是目前唯一可以安装和运行在微型机、工作站甚至大型机和巨型机上的操作系统。

⑤微软Windows

Windows采用了图形用户界面(GUI),比起从前的Dos需要输入指令使用的方式更为人性化。随着计算机硬件和软件的不断升级,微软的Windows也在不断升级,从架构的16位、32位再到64位,系统版本从最初的Windows 1.0到大家熟知的Windows 95、Windows 98、Windows 2000、Windows XP、Windows Vista、Windows 7、Windows 8、Windows 8.1、Windows 10和Windows Server服务器企业级操作系统,微软一直在致力于Windows操作系统的开发和完善。

苹果Mac OS

Mac OS是一套运行于苹果Macintosh系列计算机上的操作系统。Mac OS是首个在商用领域成功的图形用户界面系统。Macintosh组包括比尔·阿特金森(Bill Atkinson)、杰夫·拉斯金(Jeff Raskin)和安迪·赫茨菲尔德(Andy Hertzfeld)。

(2)程序设计语言和语言处理程序

根据程序设计语言发展的历程,可将其大致分为3类:机器语言汇编语言和高级语言。

1)机器语言

机器语言是指直接用二进制代码指令表达的计算机语言,指令是用“0”和“1”组成的一串代码,它们有一定的位数,并分成若干段,各段的编码表示不同的含义。例如,某台计算机字长为16位,即有16个二进制数组成一条指令或其他信息。16个“0”和“1”可组成各种排列组合,通过线路变成电信号,让计算机执行各种不同的操作。处理器类型不同的计算机,其机器语言是不同的,按照一种计算机的机器指令编制的程序,不能在指令系统不同的计算机中执行。机器语言的缺点是:难记忆、难书写、难编程、易出错、可读性差和可执行性差。

2)汇编语言

为了克服机器语言的缺点,人们采用了与二进制代码指令实际含义相近的英文缩写词、字母和数字等符号来取代二进制指令代码,这就是汇编语言(也称为“符号语言”)。汇编语言是由助记符(memoni)代替操作码,用地址符号(symbol)或标号(label)代替地址码所组成的指令系统。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序称为汇编程序。汇编程序是系统软件中的语言处理系统软件。汇编程序把汇编语言翻译成机器语言的过程称为汇编。

汇编语言比机器语言易于读写、调试和修改,同时具有机器语言的全部优点。但在编写复杂程序时,相对高级语言代码量较大,而且汇编语言依赖于具体的处理器体系结构,不能通用,因此,不能直接在不同处理器体系结构之间移植。

3)高级语言

机器语言和汇编语言统称为低级语言,由于二者依赖于硬件体系,且汇编语言中的助记符量大、难记,于是人们又发明了更加方便易用的高级语言。在这种语言下,其语法和结构更类似普通英语,且由于远离对硬件的直接操作,使得一般人经过学习之后都可以进行编程。高级语言主要有:FORTRAN、ALGOL、COBOL、BASIC、Pascal、C、Ada、C﹢﹢、Java、PowerBuilder、Delphi、PHP、HTML等。

机器语言编写的程序是能被计算机直接识别和执行的,而其他语言编写的程序是需要用处理程序进行翻译后才能被计算机执行,而处理程序一般是由汇编程序、编译程序、解释程序和相应的操作程序等组成。

1)汇编程序

汇编程序又称为汇编系统,它的功能是将汇编语言程序翻译成机器语言程序。由于汇编语言的指令与机器语言的指令基本保持了一一对应关系,因此,汇编的过程比较简单,效果非常高。汇编的基本步骤如下:

①将指令助记符转换为机器操作码。

②将符号操作数转换为地址码。

③将操作码和操作数构成机器指令。

如果汇编程序中定义了宏指令,汇编语言程序中的一条宏指令可能被翻译成若干条机器语言指令,这种情况称为宏汇编程序。

2)编译程序

编译程序又称为编译系统,它的主要功能是将高级语言编写的程序翻译成等效的机器语言程序,以便直接运行程序。编译程序主要执行下列步骤:

①编译。首先把源程序编译成等效的汇编代码,然后再由汇编程序将汇编代码翻译成可重新定位的目标程序,目标程序是由浮动的机器语言程序模块和相关的信息表所组成,它也不能够直接在计算机上执行,必须要经过装配连接,才能构成可执行的机器语言程序,即可执行程序。

②连接。将若干可重新定位的目标程序连接在一起,构成一个完整的可重新定位的目标程序。

③加载。将完整的可重新定位的目标程序装入主存储器中,并对目标程序重新定位,成为可直接执行的机器语言程序。

3)解释程序

解释程序又称为解释系统。所谓解释,实际上是对源程序的每一种可能的行为都以机器语言编写一个子程序,用来模拟这一行为。因此,对高级语言程序的解释,实际上可调用一系列的子程序来完成。解释程序重复执行下列步骤:

①取下一个语句。

②确定被执行的子程序。

③执行这一子程序。

解释程序按源程序中语句的动态顺序逐句进行分析翻译,并调用子程序执行程序功能,不产生目标程序。解释程序的执行效率要比编译程序低很多。

(3)数据库管理

数据库管理系统有组织地、动态地存储大量数据,使人们能方便、高效地使用这些数据。数据库管理系统是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。FoxPro,Access,Oracle,Sybase,DB2和Informix则是数据库系统

(4)辅助程序

系统辅助处理程序也称为“软件研制开发工具”“支持软件”和“软件工具”,主要有编辑程序、调试程序、装备和连接程序、调试程序。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈