操作系统概述

一、定义:裸机功能有限,需要软件支持,操作系统是加到计算机硬件上的第一层软件,它是对计算机硬件的首次扩充,是用户与硬件设备之间的接口,管理硬件资源。此基础之上,加上其它系统软件和应用软件称为功能更强的“虚拟机”。

二、操作系统的目标:目前存在着多种类型的OS,不同类型的OS,其目标各有所侧重。通常在计算机硬件上配置的OS,其目标有以下几点:

1.方便性:配置了OS可使计算机更容易使用;

2.有效性:提高资源利用率和系统吞吐量,使CPU和I/O设备保持忙碌;

3.可扩充性:采用模块化结构,便于增加新功能,方便适应计算机硬件、体系结构以及应用发展的要求;

4.开放性:应用程序的可移植性和互操作性,遵循开放系统互联(OSI)国际标准。

其中方便性和有效性是设计操作系统时最重要的两个目标。

三、操作系统的作用:

1. OS作为用户与计算机硬件系统之间的接口

OS作为用户与计算机硬件系统之间接口的含义是:OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。或者说,用户在OS帮助下,能够方便、快捷、安全、可靠地操纵计算机硬件和运行自己的程序。应注意,OS是一个系统软件,因而这种接口是软件接口。用户可以通过命令方式、系统调用方式和图形窗口方式使用计算机。

2. OS作为计算机系统资源的管理者

在一个计算机系统中,通常都含有各种各样的硬件和软件资源。归纳起来可将资源分为四类:处理器、存储器、I/O设备以及信息(数据和程序)。相应地,OS的主要功能也正是针对这四类资源进行有效的管理,即:处理器管理,用于分配和控制处理机;存储器管理,主要负责内存的分配与回收;I/O设备管理,负责I/O设备的分配与操纵;文件管理,负责文件的存取、共享和保护。可见,OS确是计算机系统资源的管理者。事实上,当今世界上广为流行的一个关于OS作用的观点,正是把OS作为计算机系统的资源管理者。 

3. OS实现了对计算机资源的抽象

OS是铺设在计算机硬件上的多层软件系统,它不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,由它们实现了对计算机操作的多个层次的抽象。随着抽象层次的提高,抽象接口所提供的功能就越来越强,用户使用起来也更加方便。

四、操作系统的发展过程

1.  无操作系统的计算机系统

人工操作方式直接使用计算机硬件系统,由程序员将事先已穿孔(对应于程序和数据)的纸带(或卡片)装入纸带输入机(或卡片输入机),再启动它们将程序和数据输入计算机,然后启动计算机运行。当程序运行完毕并取走计算结果后, 才让下一个用户上机。这种人工操作方式有以下两方面的缺点:

        (1) 用户独占全机,    (2) CPU等待人工操作。

为解决人机矛盾以及CPU和I/O设备不匹配的矛盾,出现了脱机输入/输出(Off-Line I/O)方式,程序和数据的输入和输出都是在外围机的控制下完成,实现将装有用户程序和数据的纸带(或卡片)装入纸袋输入机(或卡片机),在一台外围机的控制下,把纸袋(卡片)上的数据(程序)输入到磁带上,当CPU需要这些程序或数据时,再从磁带上将其高速地调入内存。这种脱机I/O方式的主要优点如下:

(1)减少了CPU的空闲时间,(2) 提高I/O速度。

2.  单道批处理系统

批处理是指计算机系统对一批作业自动进行处理的一种技术,系统中有一个监控程序,它负责完成用户程序的调入、启动运行、输出运行结果等工作。单道批处理在内存中仅有一道作业。

单道批处理系统是最早出现的一种OS,严格地说,它只能算作是OS的前身而并非是现在人们所理解的OS。尽管如此,该系统比起人工操作方式的系统已有很大进步。该系统的主要特征如下:

       (1) 自动性: 磁带上的一批作业能够自动地逐个依次运行,无需人工干预;

       (2) 顺序性:磁带上的作业顺序进入内存,各道作业完成的顺序与它们进入内存的顺序是完全相同的; 

       (3) 单道性:监督程序每次只能从磁带上调入一道程序进入内存运行。

3.  多道批处理系统

在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源,致使系统性能较差。为了进一步提高资源的利用率和系统吞吐量,在60年代中期又引入了多道程序设计技术,由此而形成了多道批处理系统(Multiprogrammed Batch Processing System)。在该系统中, 用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。

特征:

(1) 多道性: 多道指某个作业占用CPU,若由于某种原因暂时不用CPU 则系统让第二个作业占用CPU.

(2) 无序性:  作业完成的先后顺序和它们进入内存的顺序之间,无严格的对应关系

(3) 调度性:作业从递交直至完成,需要经过二次调度:

      ① 作业调度:按一定的作业调度算法,从外存的后备作业队列中,选择若干个作业调入内存;

      ②进程调度:按一定的进程调度算法,从已在内存的作业中选择一个作业,分配处理器。

优缺点:

(1) 资源利用率高: 内存中装入多道程序,它们共享资源,得到充分利用。

(2) 系统吞吐量大:吞吐量指单位时间内所完成的总工作量。能提高吞吐量的原因归结为:a) CPU和系统其他资源保持忙碌状态; b)仅当作业完成或运行不下去时,才进行切换,系统开销小。

(3) 平均周转时间长:作业要排队,依次进行处理

(4) 无交互能力:一旦把作业递交系统后直至作业完成,用户无法与作业进行交互

4.  分时系统

分时系统是指在一台主机上连接了n个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,用户通过终端与计算机进行交互。

5. 实时控制系统
通常是指以计算机为中心的生产过程控制系统,又称计算机控制系统。系统实时采集现场数据并进行及时处理,进而自动地控制相应的执行机构。

五、操作系统的基本特性

1. 并发性

并行性和并发性是既相似又有区别的两个概念,并行性是指两个或多个事件在同一时刻发生;而并发性是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,并发性是指在一段时间内,宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分时地交替执行。倘若在计算机系统中有多个处理机,则这些可以并发执行的程序便可被分配到多个处理机上,实现并行执行,即利用每个处理机来处理一个可并发执行的程序,这样,多个程序便可同时执行。 

2. 共享性

在操作系统环境下,所谓共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用。由于资源属性的不同,进程对资源共享的方式也不同,目前主要有以下两种资源共享方式。

a 互斥共享方式

       系统中的某些资源,如打印机、磁带机,虽然它们可以提供给多个进程(线程)使用,但为使所打印或记录的结果不致造成混淆,应规定在一段时间内只允许一个进程(线程)访问该资源。为此,当一个进程A要访问某资源时,必须先提出请求,如果此时该资源空闲,系统便可将之分配给请求进程A使用, 此后若再有其它进程也要访问该资源时(只要A未用完)则必须等待。仅当A进程访问完并释放该资源后,才允许另一进程对该资源进行访问。我们把这种资源共享方式称为互斥式共享,而把在一段时间内只允许一个进程访问的资源称为临界资源或独占资源。 计算机系统中的大多数物理设备,以及某些软件中所用的栈、变量和表格,都属于临界资源,它们要求被互斥地共享。

b 同时访问方式

       系统中还有另一类资源,允许在一段时间内由多个进程“同时”对它们进行访问。这里所谓的“同时”往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问。典型的可供多个进程“同时”访问的资源是磁盘设备,一些用重入码编写的文件,也可以被“同时”共享,即若干个用户同时访问该文件。

并发和共享是操作系统的两个最基本的特征,它们又是互为存在的条件。一方面,资源共享是以程序(进程)的并发执行为条件的,若系统不允许程序并发执行,自然不存在资源共享问题;另一方面,若系统不能对资源共享实施有效管理, 协调好诸进程对共享资源的访问,也必然影响到程序并发执行的程度,甚至根本无法并发执行。

3. 虚拟

操作系统中的所谓“虚拟”,是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。物理实体(前者)是实的,即实际存在的;而后者是虚的,是用户感觉上的东西。相应地,用于实现虚拟的技术,称为虚拟技术。在OS中利用了多种虚拟技术,分别用来实现虚拟处理机、虚拟内存、虚拟外部设备和虚拟信道等。

   在虚拟处理机技术中,是通过多道程序设计技术,让多道程序并发执行的方法,来分时使用一台处理机的。此时,虽然只有一台处理机,但它能同时为多个用户服务,使每个终端用户都认为是有一个CPU在专门为他服务。亦即,利用多道程序设计技术,把一台物理上的CPU虚拟为多台逻辑上的CPU,也称为虚拟处理机,我们把用户所感觉到的CPU称为虚拟处理器。 

4. 异步性

在多道程序环境下,允许多个进程并发执行,但只有进程在获得所需的资源后方能执行。在单处理机环境下,由于系统中只有一个处理机,因而每次只允许一个进程执行,其余进程只能等待。当正在执行的进程提出某种资源要求时,如打印请求,而此时打印机正在为其它某进程打印,由于打印机属于临界资源,因此正在执行的进程必须等待,且放弃处理机,直到打印机空闲,并再次把处理机分配给该进程时,该进程方能继续执行。可见,由于资源等因素的限制,使进程的执行通常都不是“一气呵成”,而是以“停停走走”的方式运行。 

内存中的每个进程在何时能获得处理机运行,何时又因提出某种资源请求而暂停,以及进程以怎样的速度向前推进,每道程序总共需多少时间才能完成,等等,都是不可预知的。由于各用户程序性能的不同,比如,有的侧重于计算而较少需要I/O;而又有的程序其计算少而I/O多,这样,很可能是先进入内存的作业后完成;而后进入内存的作业先完成。或者说,进程是以人们不可预知的速度向前推进,此即进程的异步性。尽管如此,但只要运行环境相同,作业经多次运行,都会获得完全相同的结果。因此,异步运行方式是允许的,是操作系统的一个重要特征。 


六、操作系统主要功能

1.处理机管理功能(进程控制、进程同步、进程通信、调度);

2.存储器管理功能(内存分配、内存保护、地址映射、内存扩充);

3.设备管理功能(缓冲管理、设备分配、设备处理);

4.文件管理功能(文件存储空间的管理、目录管理、文件读/写管理和保护);

5.接口功能(用户接口、程序接口)。






  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值