批处理系统具有高资源利用率和系统吞吐量;分时系统能够获得及时响应;实时系统具有实时特征。而这三种系统都具有并发、共享、虚拟和异步四个基本特征
一、并发
OS通过并发提高系统中的资源利用率,增加系统的吞吐量
1.并行和并发
并行:两个或多个事件在同一时刻 发生
并发:两个或多个事件在同一时间间隔 内发生
在多道程序环境下,并发性是一段时间内宏观上有多个程序在同时执行。但在单处理系统中,每个时刻只有一个程序执行,所以微观上这些程序只能是分时的交替执行
比如:1s的时间内,0-15ms是程序A允许,15-30ms是程序B执行,30-45ms是程序C执行,45-60ms是程序D执行。因此在宏观1s的时间间隔上看,有四个程序在同时执行,即并行的;在微观1s内的时间上看A、B、C、D是分时交替执行的,即并发的
如果有多个处理机,则可以将并发的程序分配,使其变成并行执行
2.进程
在未引入进程概念的系统中,属于同一个应用程序的计算程序和IO程序只能顺序执行。如果为计算程序和IO程序分别建立一个进程,则可以并发执行
进程:在系统中能独立运行并作为资源分配的基本单位,由一组机器指令、数据和堆栈等组成,是一个能独立运行的活动实体
多个进程可以并发执行和交换信息
二、共享
操作系统下的共享指资源共享或资源复用,即系统中的资源可供内存中多个并发执行的进程共同使用
一般系统中的资源远少于多道程序需求的总和,因此程序会争夺共享资源。由OS进行资源共享管理
1.互斥共享方式
系统中诸如打印机等设备,可以共多个进程使用,但只允许一个进程访问资源。因此需要保证多个进程对此类资源的互斥访问
一个进程A请求一个资源,如果资源空闲则可以使用,如果有其他进程访问该资源,则必须等待进程A使用完毕。这种资源共享方式称为互斥式共享,把这种一段时间内只运行一个进程访问的资源,称为临界资源(或独占资源)
2.同时访问方式
诸如磁盘设备,允许多个进程同时访问资源。这里的同时在单处理机环境下是宏观的,在微观上的访问仍然是交替进行的
并发和共享式多用户OS的两个最基本特征。是互为存在的条件。即一方面资源共享是以进程的并发执行为条件的,系统如果不允许并发则不存在资源共享;另一方面,系统如果不能对资源共享有效管理,将会影响各进程的并发执行
三、虚拟
最早的虚拟计数是在通信系统中,用于提高通信信道的利用率,将一条物理信道划分为多条逻辑信道
OS中的虚拟:指通过某种计数将一个物理实体变成若干个逻辑上的对应物
1.时分复用技术
时分复用技术可以提高资源利用率,在设备为用户服务的空闲时间,为其他用户服务
(1)虚拟处理机技术:利用多道程序设计技术,为每个程序建立至少一个进程,多个程序并发执行,在一台处理机下为多个用户服务。即将一台物理上的处理机虚拟为多台逻辑上的处理机,在每个逻辑处理机上运行一道程序,用户仅能感知到虚拟处理器
(2)虚拟设备技术:将一台物理IO设备虚拟为多台逻辑上的IO设备,允许每个用户占用一台逻辑上的IO设备
2. 空分复用技术
空分复用技术可以提高内存利用率,利用存储器的空闲空间分区域存放和运行其他的多道程序
单纯的空分复用存储器只能提高利用率,不能在逻辑上扩大存储器容量,需要使用虚拟存储技术。比如一个100MB的程序可以运行在30MB的内存空间上,本质上就是每次只把程序的一部分调入内存运行,完成后将该部分换出,换入另一部分。将用户程序的各个部分分时地进入内存运行
四、异步
多道程序环境下,允许多个程序并发执行;单处理机环境下,多个程序分时交替执行;
进程的异步性:进程一般是以不可预知的速度向前推进的,可能由于资源等因素限制,并不一次性执行。但多次运行获得的结果相同
宏观上“一气呵成”,微观上“停停走走”