多道批处理系统 分时系统 实时系统都具有 并发 共享 虚拟 异步四个基本特征
并行是指两个或者多个时间在同一时刻发生
在多道程序环境下,并发是指一段时间内宏观上有多个程序在同时运行
如果有系统中有多个处理机,这些可以并发执行的程序便可被分配到多个处理机上,实现并行执行。即利用多个处理机来处理一个可并发执行的程序。
若对内存中的多个程序都分别建立一个进程,它们就可以并发执行,这样便能极大地提高系统资源的利用率,增加系统的吞吐量。
所谓进程,是指在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个能独立运行的活动实体。
多个进程之间可以并发执行和交换信息。
OS环境下的资源共享或称为资源复用,是指系统中的资源可供内存中多个并发执行的进程共同使用。
因为系统中的资源远少于多道程序需求的总和,会形成它们对共享资源的争夺。所以,系统必须对资源共享进行妥善处理。
目前主要实现资源共享的方式有如下两种:
互斥共享方式
系统中的某些资源,如打印机、磁带机等,虽然可以提供给多个进程(线程)使用,但应规定在一段时间内,只允许一个进程访问该资源。为此,在系统中应建立一种机制,以保证多个进程对这类资源的互斥访问。
这种资源共享方式成为 互斥式共享,这种在一段时间内只允许一个进程访问的资源,称为 临界资源(或者独占资源)
同时访问方式
系统中还有一类资源,允许在一段时间内由多个进程“同时”对它们进行访问。这里所谓的“同时”,在单处理机环境下是宏观意义上的,而在微观上,这些进程对资源的访问交替进行的。典型的可供多个进程“同时”访问的资源是磁盘设备。一些用重入码编写的文件也可以被“同时”共享,即允许若干个用户同时访问该文件。
并发和共享是多用户(多任务)OS的两个最基本的特征。
它们彼此为是互为存在的条件。
资源共享是以进程的并发执行为条件的,若系统不允许并发执行也就不存在资源共享问题;
若系统不能对资源共享实施有效管理,以协调好诸进程对共享资源的访问,也必然会影响到诸进程间并发执行的程度,甚至根本无法并发执行。
在OS中,把通过某种技术将一个物理实体变为若干个逻辑上的对应物的功能称为“虚拟”。前者是实际存在的,后者是用户感觉上的东西。
相应地,把用于实现虚拟的技术称为虚拟技术。在OS中也是利用时分复用和空分复用技术来实现“虚拟”的。
时分复用技术能提高资源利用率的根本原因在于,它利用某设备为一用户服务的空闲时间,又转去为其他用户服务。使设备得到最充分的利用。
虚拟处理机技术。利用多道程序设计技术,为每道程序建立至少一个进程,让多道程序并发执行。此时虽然系统中只有一台处理机,但通过分时复用的方法,能实现同时(宏观上)为多个用户服务,是每个终端用户都认为是有一个处理机在专门为他服务。
利用多道程序设计技术,可将一台物理上的处理机虚拟为多台逻辑上的处理机,在每台逻辑处理机上运行一道程序,我们把用户感觉到的处理机称为虚拟处理机。
虚拟设备技术。通过分时复用的方法,讲一台物理I/O设备虚拟为多台逻辑上的I/O设备,并允许每个用户占用一台逻辑上的I/O设备。
这样便可使原来只能在一段时间内允许一个用户访问的设备(即临资源),变为允许多个用户“同时”访问的共享设备。
空分复用技术是利用存储器的空闲空间 分区域存放和运行其他多道程序,以此来提高内存的利用率。
但是,单纯的空分复用存储器只能提高内存的利用率,并不能实现在逻辑上扩大存储器容量的功能,还必须引入虚拟存储技术才能达到此目的。
虚拟存储技术在本质上是实现内存的分时复用,即它可以通过分时复用内存的方式,使一道程序仅在远小于它的内存空间中运行。
对于内存中的每个进程,在何时能获得处理机运行,何时又因提出某红资源请求而暂停,以及进程以怎样的速度向前推进,每道程序总共需要多少时间才能完成等等,都是不可控制的。
进程以人们不可预知的速度向前推进,此即进程的异步性
但只要在OS中配置有完善的进程同步机制,且运行环境相同,则作业即便经过多次运行,也会获得完全相同的结果。因此异步运行方式是允许的,而且是操作系统的一个重要特征
原文:https://www.cnblogs.com/woshi123/p/12883913.html