并发是什么意思 并发解释

并发是什么意思 并发解释,第1张

1、并发,在 *** 作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。

2、在关系数据库中,允许多个用户同时访问和更改共享数据的进程。SQL Server 使用锁定以允许多个用户同时访问和更改共享数据而彼此之间不发生冲突。

不能。在多道程序环境下,程序并发执行将失去其封闭性,并具有间断性,以及其运行结果不可再现性的特征。由此,决定了通常的程序是不能参与并发执行的。为了能使程序并发执行,并且可以对并发执行的程序加以描述和控制,人们引入了进程的概念。

程序并发执行时的特征

间断性:因相互制约

失去封闭性:主要由共享资源引起

不可再现性:程序的执行结果与程序运行的速度有关

“并行”是指无论从微观还是宏观,二者都是一起执行的,就好像两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑

而“并发”在微观上不是同时执行的,只是把时间分成若干段,使多个进程快速交替的执行,从宏观外来看,好像是这些进程都在执行

在不同类型的 *** 作系统中并发性的含义会有一些区别。在单处理器 *** 作系统中每个特定时刻只有一个程序在cup中运行。但是一个较长的时间可以被分为很多小的时间段,来运行不同的程序,使得这个较长的时间段内所有的程序都得到了运行。这些程序就具有并发性不具有并行性。,这就好像两个人用同一把铁锨,轮流挖坑,一小时后,两个人各挖一个小一点的坑,要想挖两个大一点得坑,一定会用两个小时

从以上本质不难看出,“并发”执行,在多个进程存在资源冲突时,并没有从根本提高执行效率

所谓程序并发性是指在计算机系统中同时存在有多个程序,宏观上看,这些程序是同时向前推进的在单CPU环境下,这些并发执行的程序是交替在CPU上运行的程序的并发性具体体现在如下两个方面:用户程序与用户程序之间并发执行;用户程序与 *** 作系统程序之间并发执行

比如你有2个程序,一个程序A是往地址0x2000里面写入整数5,另一程序B往相同地址0x2000写入8,那么如果是串行,那么就是先A执行,再B执行。最后地址0x2000里面是8所以串行的意思是程序一个个按顺序执行,只有前一个执行完,后面的才执行。

并发的意思是,程序A和程序B同时执行,那地址0x2000里面到底写入啥?这个时候就设计到程序的并发控制了。所以并发的意思是程序同时执行。

两个程序并发的判断通常需要考虑以下几个方面:

1 是否共享资源:如果两个程序需要同时访问同一个资源,比如文件、数据库、网络连接等,那么它们就可能会产生并发。如果两个程序没有共享资源,它们就不会产生并发。

2 是否存在竞争条件:如果两个程序在访问共享资源的过程中,它们的 *** 作顺序会影响最终的结果,那么它们就可能会产生竞争条件,从而产生并发。

3 是否具有时间重叠性:如果两个程序的执行时间有重叠部分,那么它们就可能会产生并发。

4 是否交替执行:如果两个程序的执行顺序没有固定的规律,或者它们会在不同的时间片上交替执行,那么它们就可能会产生并发。

综上所述,如果两个程序共享资源、存在竞争条件、具有时间重叠性或者交替执行,那么它们就可能会产生并发。可以通过观察它们的执行过程、分析它们的代码逻辑等方式来判断它们是否并发。

一组在逻辑上互相独立的程序或程序段在执行过程中,其执行时间在客观上互相重叠,即一个程序段的执行尚未结束,另一个程序段的执行已经开始的这种执行方式。程序的并发执行可进一步分为两种,第一种是多道程序系统的程序执行环境变化所引起的多道程序的并发执行;第二种并发执行是在某道程序的几个程序段中,包含着一部分可以同时执行或顺序颠倒执行的代码。例如:read(a);read(b);它们既可以同时执行,也可以颠倒次序执行。也就是说,对于这样的语句,同时执行不会改变顺序程序所具有的逻辑性质。因此,可以采用并发执行来充分利用系统资源以提高计算机的处理能力。[1]在大多数计算问题中,仅要求部分 *** 作在时间上是有序的。有些 *** 作必须在其他 *** 作之后执行,另外有些 *** 作却可以并行地执行。如图32所示,其先后次序是:I1先于P1和I2;P1先于O1、P2和I3;O1先于O2,P3……部分有序使某些 *** 作的并行执行成为可能,如I2和P1,I3,P2与O1等 *** 作的执行可以在时间上互相重叠。 摘自:>

进程和线程都是由 *** 作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性。进程和线程的区别在于:

简而言之,一个程序至少有一个进程,一个进程至少有一个线程

也就是说一个进程可以有很多线程。

“并行”是指无论从微观还是宏观,二者都是一起执行的,就好像两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑。

而“并发”在微观上不是同时执行的,只是把时间分成若干段,使多个进程快速交替的执行,从宏观外来看,好像是这些进程都在执行,这就好像两个人用同一把铁锨,轮流挖坑,一小时后,两个人各挖一个小一点的坑,要想挖两个大一点得坑,一定会用两个小时。

从以上本质不难看出,“并发”执行,在多个进程存在资源冲突时,并没有从根本提高执行效率。

采纳自:>

以上就是关于并发是什么意思 并发解释全部的内容,包括:并发是什么意思 并发解释、程序并发执行的条件是什么、 *** 作系统里的并行性和并发性指什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10174205.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存