【并行】
计算机操作系统上的并行,指的是同时存在于内存中的多道作业都处于运行状态。
(实际上都是宏观上并行,微观上串行,因为这些作业都是开始各自的运行,但都没运行完毕,只是交替地使用CPU)
在操作系统中是指,一组程序按独立异步的速度执行,不等同于时间上的重叠(同一个时刻发生),也可以表述为8为数据同时通过并行线进行传送,数据传送速度大大提高,但并行传送的线路长度收到限制,长度增加,干扰会增加,数据出错;
【并发】
并发是指:在同一个时间段内,两个或多个程序执行,有时间上重叠(宏观上是同时,围观上仍是顺序执行)。
在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机制上运行。
在关系数据库中,允许多个用户同时访问和更改共享数据的进程。
操作系统并发程序执行的特点:
【并发环境下,由于程序的封闭性被打破,出现了新的特点的】
1)程序与计算不再一一队形,一个程序副本可以有多个计算;
2)并发程序之间有相互制约的关系,直接制约体现为一个程序需要另一个程序的计算结果,间接制约体现为多个程序竞争某一资源(如处理机制,缓存区)
3)并发程序在执行中是走走停停,断续推进的。
并行,无论是从微观上,还是宏观上,二者都是一起执行的。
并发,是在同一个CPU上同时(不是真正的同时,而是看来是同时,因为CPU要在多个程序间切换)运行多个程序。
并行,是每个CPU运行一个程序。
并发和并行是即相似又有区别的两个概念,并行是指两个或者多个事情在同一时刻发生;
而并发是指两个或多个事件同一时间间隔内发生。
在多道程序环境下,并发性是指一段时间内宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻仅有一道程序执行,故微观上这些程序只能是分时地交替执行。倘若在计算机系统
中有多个处理机,则这些可以并发执行的程序便可被分配到多个处理机上,实现并行执行,即利用每个处理机来处理一个可并发执行的程序,这样,多个程序便可以同时执行。