计算机软件通常分为系统软件和应用软件两大类。系统软件是计算机系统的一部分,用来支持应用软件的运行。应用软件是指计算机用户利用计算机的软件、硬件资源为某一专门的应用目的而开发的软件。例如,科学计算、工程设计、数据处理、事务处理和过程控制等方面的程序,以及文字处理软件、表格处理软件、辅助设计软件(CAD)和实时处理软件等。常用的系统软件有操作系统、语言处理程序、链接程序、诊断程序和数据库管理系统等。操作系统是计算机系统中必不可少的核心系统软件,其他软件是建立在操作系统的基础上,并在操作系统的统一管理和支持下运行的,是用户与计算机之间的接口。
传统计算机系统资源分为硬件资源和软件资源。硬件资源包括中央处理机、存储器和输入/输出设备等物理设备;软件资源是以文件形式保存在存储器上的程序和数据等信息。现代计算机系统资源管理范围已经扩展到感知、能源、通信资源和服务资源。本文主要介绍传统计算机系统资源管理。
操作系统定义:能有效地组织和管理系统中的各种软/硬件资源,合理地组织计算机系统工作流程,控制程序的执行,并且向用户提供一个良好的工作环境和友好的接口。
操作系统有两个重要的作用:第一,通过资源管理提高计算机系统的效率;第二,改善人机界面向用户提供友好的工作环境。
操作系统是计算机系统的资源管理者,它含有对系统软/硬件资源实施管理的一组程序。其首要作用就是通过CPU管理、存储管理、设备管理和文件管理对各种资源进行合理的分配,改善资源的共享和利用程度,最大限度地发挥计算机系统的工作效率,提高计算机系统在单位时间内处理工作的能力(称为系统的“吞吐量(throughput)”)。
大家知道,没有安装操作系统的计算机,用户将要面对的是0、1代码和一些难懂的机器指令,通过按钮或按键来操作计算机,这样既笨拙又费时。一旦安装操作系统后,用户面对的不再是笨拙的裸机,而是操作便利、服务周到的操作系统,从而明显地改善了用户界面,提高了用户的工作效率。
操作系统的4个特征是并发性、共享性、虚拟性和不确定性。从传统的计算机资源管理的观点来看,操作系统的功能可分为处理机管理、文件管理、存储管理、设备管理和作业管理5大部分。操作系统的5大部分通过相互配合、协调工作来实现对计算机系统中资源的管理,控制任务的运行。
(1)进程管理。实质上是对处理机的执行“时间”进行管理,采用多道程序等技术将CPU的时间合理地分配给每个任务,主要包括进程控制、进程同步、进程通信和进程调度。
(2)文件管理。主要包括文件存储空间管理、目录管理、文件的读/写管理和存取控制。
(3)存储管理。存储管理是对主存储器“空间”进行管理,主要包括存储分配与回收、存储保护、地址映射(变换)和主存扩充。
(4)设备管理。实质是对硬件设备的管理,包括对输入/输出设备的分配、启动、完成和回收。
(5)作业管理。包括任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等。
操作系统提供系统命令一级的接口,供用户用于组织和控制自己的作业运行,如命令行、菜单式或GUI“联机”、命令脚本“脱机”。操作系统还提供编程一级接口,供用户程序和系统程序调用操作系统功能,如系统调用和高级语言库函数。
通常,操作系统可分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、微型计算机操作系统和嵌入式操作系统等类型。
批处理操作系统分为单道批处理和多道批处理。
单道批处理操作系统是一种早期的操作系统,该系统可以提交多个作业,“单道”的含义是指一次只有一个作业装入内存执行。作业由用户程序、数据和作业说明书(作业控制语言)3个部分组成。当一个作业运行结束后,随即自动调入同批的下一个作业,从而节省了作业之间的人工干预时间,提高了资源的利用率。
多道批处理操作系统允许多个作业装入内存执行,在任意一个时刻,作业都处于开始点和终止点之间。每当运行中的一个作业由于输入/输出操作需要调用外部设备时,就把CPU交给另一个等待运行的作业,从而将主机与外部设备的工作由串行改变为并行,进一步避免了因主机等待外设完成任务而浪费宝贵的CPU时间。多道批处理系统主要有3个特点.多道、宏观上并行运行、微观上串行运行。
在分时操作系统中,一个计算机系统与多个终端设备连接。分时操作系统是将CPU的工作时间划分为许多很短的时间片,轮流为各个终端的用户服务。例如,一个带20个终端的分时系统,若每个用户每次分配一个50ms的时间片,则每隔Is即可为所有的用户服务一遍。因此,尽管各个终端上的作业是断续地运行的,但由于操作系统每次对用户程序都能做出及时的响应,因此用户感觉整个系统均归其一人占用。
分时系统主要有4个特点:多路性、独立性、交互性和及时性。
实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内做出快速反应。实时系统对交互能力要求不高,但要求可靠性有保障。为了提高系统的响应时间,对随机发生的外部事件应及时做出响应并对其进行处理。
实时系统分为实时控制系统和实时信息处理系统。实时控制系统主要用于生产过程的自动控制,例如数据自动采集、武器控制、火炮自动控制、飞机自动驾驶和导弹的制导系统等。实时信息处理系统主要用于实时信息处理,例如飞机订票系统、情报检索系统等。实时系统与分时系统除了应用的环境不同,主要有以下三点区别。
(1)系统的设计目标不同。分时系统是设计成一个多用户的通用系统,交互能力强;而实时系统大多是专用系统。
(2)交互性的强弱不同。分时系统是多用户的通用系统,交互能力强;而实时系统是专用系统,仅允许操作并访问有限的专用程序,不能随便修改,且交互能力差。
(3)响应时间的敏感程度不同。分时系统是以用户能接收的等待时间为系统的设计依据,而实时系统是以被测物体所能接受的延迟为系统设计依据。因此,实时系统对响应时间的敏感程度更强。
网络操作系统是使联网计算机能方便而有效地共享网络资,为网络用户提供各种服务的软件和有关协议的集合。因此,网络操作系统的功能主要包括高效、可靠的网络通信;对网络中共享资源(在LAN中有硬盘、打印机等)的有效管理;提供电子邮件、文件传输、共享硬盘和打印机等服务;网络安全管理;提供互操作能力。
计算机网络系统除了硬件外,还需要有系统软件,二者结合构成计算机网络的基础平台。操作系统是最重要的系统软件。网络操作系统是网络用户和计算机网络之间的一个接口,它除了应具备通常操作系统应具备的基本功能外,还应有联网功能,支持网络体系结构和各种网络通信协议,提供网络互联功能,支持有效、可靠安全的数据传送。
一个典型的网络操作系统的特征包括硬件独立性、多用户支持等。其中,硬件独立性是指网络操作系统可以运行在不同的网络硬件上,可以通过网桥或路由器与别的网络连接;多用户支持,应能同时支持多个用户对网络的访问,应对信息资源提供完全的安全和保护功能;支持网络实用程序及其管理功能,如系统备份、安全管理、容错和性能控制;多种客户端支持,如Windows NT网络操作系统包括OS/2、Windows 98和UNIX等多种客户端,极大地方便了网络用户;提供目录服务,以单一逻辑的方式让用户访问位于世界范围内的所有网络服务和资源的技术;支持多种增值服务,如文件服务、打印服务、通信服务和数据库服务等。
网络操作系统可分为如下三类。
(1)集中模式。集中式网络操作系统是由分时操作系统加上网络功能演变而来的,系统的基本单元由一台主机和若干台与主机相连的终端构成,将多台主机连接起来形成了网络,信息的处理和控制是集中的。UNIX就是这类系统的典型例子。
(2)客户端/服务器模式。这是流行的网络工作模式,该种模式网络可分为服务器和客户端。服务器是网络的控制中心,其任务是向客户端提供一种或多种服务,服务器可有多种类型,如提供文件/打印服务的文件服务器等。客户端是用于本地处理和访问服务器的站点,在客户端中包含了本地处理软件和访问服务器上服务程序的软件接口。
(3)对等模式(Peer-to-Peer)模式。在采用这种模式的操作系统网络中,各个站点是对等的。它既可作为客户端去访问其他站点,又可作为服务器向其他站点提供服务,在网络中既无服务处理中心,也无控制中心,或者说,网络的服务和控制功能分布在各个站点上。可见,该模式具有分布处理及分布控制的特征。
现代操作系统已把网络功能包含到操作系统的内核中,作为操作系统核心功能的一个组成部分。Microsoft公司的Windows NT、AT&T公司的UNIX System V、Sun公司的SunOS、HP公司的HP/OX、IBM公司的AIX和Linux等都已把TCP/IP网络功能包含在内核中。
网络操作系统是整个网络的灵魂,它决定了网络的功能,并由此决定了不同网络的应用领域及方向。目前,网络操作系统主要有三大阵营:UNIX、Windows NT和NetWare。各种网络操作系统其有不同的特点,随着网络技术的发展,新的网络操作系统还会不断出现,用户可根据自己的需要进行选择,而不要仅局限于其技术水平的高低。
分布式计算机系统是由多个分散的计算机经连接而成的计算机系统,系统中的计算机无主、次之分,任意两台计算机可以通过通信交换信息。通常,为分布式计算机系统配置的操作系统称为分布式操作系统。
分布式操作系统能直接对系统中的各类资源进行动态分配和调度、任务划分、信息传输协调工作,并为用户提供一个统一的界面、标准的接口,用户通过这一界面实现所需要的操作和使用系统资源,使系统中若干台计算机相互协作完成共同的任务,有效地控制和协调诸任务的并行执行,并向系统提供统一、有效的接口的软件集合。
分布式操作系统是网络操作系统的更高级形式,它保持网络系统所拥有的全部功能,同时又有透明性、可靠性和高性能等特性。
微型计算机操作系统简称微机操作系统,常用的有Windows、Mac OS、Linux。Windows操作系统是Microsoft公司开发的图形用户界面、多任务、多线程操作系统。Mac OS操作系统是美国苹果计算机公司为它的Macintosh计算机设计的操作系统的一代操作系统,该机型于1984年推出,率先采用了一些我们至今仍为人称道的技术,如GUI图形用户界面、多媒体应用、鼠标等。Linux是一套免费使用并可自由传播的类UNIX操作系统,由世界各地成千上万的程序员设计和实现,其目的是建立不受任何商品化软件版权制约的、全世界都能自由使用的UNIX兼容产品。
嵌入式操作系统运行在嵌入式智能芯片环境中,对整个智能芯片以及它所操作、控制的各种部件装置等资源进行统一协调、处理、指挥和控制。其主要特点如下:
(1)微型化。从性能和成本角度考虑,希望占用的资源和系统代码量少,如内存少、字长短、运行速度有限、能源少(用微小型电池)。
(2)可定制。从减少成本和缩短研发周期考虑,要求嵌入式操作系统能运行在不同的微处理器平台上,能针对硬件变化进行结构与功能上的配置,以满足不同应用需要。
(3)实时性。嵌入式操作系统主要应用于过程控制、数据采集、传输通信、多媒体信息及关键要害领域需要迅速响应的场合,所以对实时性要求较高。
(4)可靠性。系统构件、模块和体系结构必须达到应有的可靠性,对关键要害应用还要提供容错和防故障措施。
(5)易移植性。为了提高系统的易移植性,通常采用硬件抽象层(Hardware Abstraction Level,HAL)和板级支撑包(Board Support Package,BSP)的底层设计技术。
嵌入式实时操作系统有很多,常见的有VxWorks、μClinux、PalmOS、WindowsCE、μC/OS-II和eCos等。
操作系统是在人们不断地改善计算机系统性能和提高资源利用率的过程中逐步地形成和发展起来的。推动操作系统发展的主要动力是“需求推动发展”。回顾计算机的发展历史,用户就会发现操作系统的重大改进与计算机硬件的更新换代相吻合。因此,计算机各代的划分主要是以硬件和操作系统软件技术的创新为标志。每当对操作系统做出新的关键性需求分析时,这些新的需求有些必须得到计算机系统的硬件支持。任何事物都是在不断解决问题的过程中向前发展的,作为新一代计算机系统除了要继承上一代的全部优点外,更重要的是克服上一代存在的问题和不足,与此同时,新的设计理论和技术又会产生许多新的有待解决的问题。
促使操作系统发展的因素主要有3个方面:第一,硬件的不断升级与新的硬件产品出现,需要操作系统提供更多、更复杂的支持;第二,新的服务需求,操作系统为了满足系统管理者和用户需求,需要不断扩大服务范围;第三,修补操作系统自身的错误,操作系统在运行的过程中其自身的错误也会不断地被发现,因此需要不断地修补操作系统自身的错误(即所谓的“补丁”)。需要说明的是,在修补的过程中也可能会产生新的错误。
到此这篇操作系统的基础抽象(操作系统中的重要概念)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/te-jc/35700.html