概述
文章目录
- 1.并发(concurrence)[^1]
- 2.共享(sharing)
- 3.虚拟(virtual)
- 4.异步(asynchronism)
1.并发(concurrence)1
并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。
常考易混淆概念–并行:指两个或多个事件在同一时刻同时发生。
并发 VS 并行
exp:假设小渣和老渣每人有两个女朋友。任务一:和一号约会;任务二:和二号约会…
并发约会:分时间段和一、二号约会。。。上午和一号约会,下午和二号约会。
并行约会:和一、二号一起约会
操作系统的并发性:指计算机系统中同时存在着多个运行着的程序。
一个单核处理机(CPU)同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行(这些程序微观上是交替执行的,但宏观上看起来就像在同时执行)
不管是几核CPU,操作系统的并发性依然是必不可少的。
2.共享(sharing)
共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
两种资源共享方式:
互斥共享方式:系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源。
同时共享方式:系统中的某些资源,允许一个时间段内由多个进程“同时”对它们进行访问。所谓的“同时”往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问的(即分时共享)
生活实例:
互斥共享方式:使用QQ和微信视频。同一时间段内摄像头只能分配给其中一个进程。
同时共享方式:使用QQ发送文件A,同时使用微信发送文件B。宏观上看,两边都在同时读取并发送文件,说明两个进程都在访问硬盘资源,从中读取数据。微观上看,两个进程是交替着访问硬盘的。
注意:扬声器,游戏音效和音乐播放器,微观上也是同时使用的。
并发和共享的关系
并发性是指计算机系统中同时存在着多个运行着的程序。
共享性是指系统中的资源可供内存中多个并发执行的进程共同使用。
通过上述例子来看并发与共享的关系:
使用QQ发送文件A,同时使用微信发送文件B。
1. 两个进程正在并发执行(并发性)。如果失去并发性,则系统中只有一个程序正在运行,则共享性失去存在的意义。
2. 需要共享地访问硬盘资源(共享性)。如果失去共享性,则QQ和微信不能同时访问硬盘资源,就无法实现同时发送文件,也就无法并发。
并发性和共享性互为存在条件
3.虚拟(virtual)
虚拟指把一个物理上的实体变为若干个逻辑上的对应物。物理实体是实际存在的,而逻辑上对应物是用户感受到的。
背景知识:一个程序需要放入内存并给它分配CPU才能执行。
虚拟技术分为:
空分复用技术(如虚拟存储器技术)
时分复用技术(如虚拟处理器):微观上处理机在各个微小的时间段内交替着为各个进程服务。
显然,如果失去了并发性,则一个时间段内系统中只需运行一道程序,那么就失去了实现虚拟性的意义了。因此,没有并发性就谈不上虚拟性。
4.异步(asynchronism)
异步是指在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是异步性。
显然,如果失去了并发性,则系统只能串行地处理各个进程,每个进程的执行会一贯到底。只有系统拥有并发性,才有可能导致异步性。
重要考点:
理解并发和并行的区别
并发和共享互为存在条件
没有并发和共享,就谈不上虚拟和异步,因此并发和共享是操作系统的两个最基本的特征
以上所有内容均整理自王道考研 ↩︎
最后
以上就是哭泣汽车为你收集整理的操作系统的四个基本特征的全部内容,希望文章能够帮你解决操作系统的四个基本特征所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复