一、并发
并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。
并行 :是指两个或多个事件同一事件发生。
操作系统的并发性指计算机系统中“同时”运行着多个程序,这些程序宏观上看是同时运行着的,而微观上看是交替运行的。操作系统就是伴随着“多道程序技术”而出现的。因此,操作系统和程序并发是一起诞生的。
单核CPU同一时刻只能执行一个程序,各个程序只能并发地执行
多核CPU同一时刻可以同时执行多个程序,多个程序可以并行地执行。
二、共享
共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
所谓的“同时”往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问的(即分时共享)
互斥共享方式:使用QQ和微信视频。同一时间段内摄像头只能分配给其中一个进程。
同时共享方式:使用QQ发送文件A,同时使用微信发送文件B。
宏观上看,两边都在同时读取并发送文件说明两个进程都在访问硬盘资源,从中读取数据。微观上看,两个进程是交替着访问硬盘的。 但有时候,在微观上也确实是同时共享。
三、 虚拟
虚拟是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。
-
虚拟技术的空分复用:
- 空分复用在虚拟化中可以体现为将物理资源(例如处理器、内存、磁盘空间)划分成多个虚拟实例。
- 虚拟化层通过将物理资源划分为多个虚拟资源,每个虚拟实例独立使用这些资源,实现了多个虚拟环境之间的隔离。
- 例如,在虚拟机管理器(Hypervisor)中,多个虚拟机可以在同一台物理主机上运行,每个虚拟机被分配一部分物理资源,这样它们在执行时彼此独立。
-
虚拟技术的时分复用:
- 时分复用在虚拟化中通常体现为对资源的时间切片分配。
- 例如,在虚拟机或容器中,处理器时间可以被分割成时间片,每个虚拟实例在其分配的时间片内执行。这种方式使得多个虚拟实例能够在同一物理资源上轮流执行,从而实现了对处理器资源的时分复用。
- 虚拟化平台可以使用调度算法来决定哪个虚拟实例在某个时间点执行,以最大程度地利用物理资源。
四、异步
异步是指,在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。
由于并发运行的程序会争抢着使用系统资源,而系统中的资源有限,因此进程的执行不是一贯到底的,而是走走停停的,以不可预知的速度向前推进。
如果失去了并发性,即系统只能串行地运行各个程序,那么每个程序的执行会一贯到底。只有系统拥有并发性,才有可能导致异步性。