并发和并行概念区别

        并发和并行是一个相似而本质上又有不同的一个概念。

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

        并行:在操作系统中是指,一组程序按独立异步的速度执行,无论从微观还是宏观,程序都是一起执行的。

        拆开来讲,我们先说并行,并行相对来讲更容易解释。并行即同一时间,多个CPU运行多个不同的的程序。圈重点,这里并行的前提条件必须有多个CPU,类似于公路上多个车道,可以同时让多辆车子并排行走。这里车辆可以类比为程序,而车道则类比为CPU。

        并发相对于并行解释起来要复杂一些。众所周知,一个CPU同一时刻点只能有一个进程或线程正在运行。那么单核处理器是如何同时运行多个程序呢?这就要说到并发这一概念了,宏观来讲,这些程序都是同时运行,但是从微观层面又不是。它只能把CPU运行时间划分成若干个时间段,再将时间段分配给各个线程执行,在一个时间段的线程代码运行时,其它线程处于挂起状。.这种方式我们称之为并发。

        区别:并发和并行是即相似又有区别的两个概念,并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,并发性是指在一段时间内宏观上有多个程序在同时运行,但在单核处理器中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分时地交替执行。倘若在操作系统中有多个CPU,则这些可以并发执行的程序便可被分配到多个处理机上,实现并行执行,即利用每个处理机来处理一个可并发执行的程序,这样,多个程序便可以同时执行。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值