线程与进程的概念与区别

电子说

1.2w人已加入

描述

一、线程与进程

1.概念

线程:是程序执行流的最小单元,是系统独立调度和分配CPU(独立运行)的基本单位。

进程:是资源分配的基本单位。一个进程包括多个线程。

2.区别:

1、线程与资源分配无关,它属于某一个进程,并与进程内的其他线程一起共享进程的资源。

2、每个进程都有自己一套独立的资源(数据),供其内的所有线程共享。

3、不论是大小,开销线程要更“轻量级”

4、一个进程内的线程通信比进程之间的通信更快速,有效。(因为共享变量)

二、多线程与多进程

多线程:同一时刻执行多个线程。如,用浏览器一边下载,一边听歌,一边看视频,一边看网页......

多进程:同时执行多个程序。如,同事运行YY,QQ,以及各种浏览器。

三、并发与并行

并发:当有多个线程在操作时,如果系统只有一个CPU,则它根本不可能真正同时进行一个以上的线程,它只能把CPU运行时间划分成若干个时间段,再将时间 段分配给各个线程执行,在一个时间段的线程代码运行时,其它线程处于挂起状。.这种方式我们称之为并发(Concurrent)。

并行:当系统有一个以上CPU时,则线程的操作有可能非并发。当一个CPU执行一个线程时,另一个CPU可以执行另一个线程,两个线程互不抢占CPU资源,可以同时进行,这种方式我们称之为并行(Parallel)。

强烈注意:多核,多cup,多机是不同的概念。

补充:

多内核是指在一枚处理器中集成两个或多个完整的计算引擎(内核)。

多核心cpu主要分原生多核和封装多核。

- 原生多核指的是真正意义上的多核,每个核心之间都是完全独立的,都拥有自己的前端总线,不会造成冲突,即使在高负载状况下,每个核心都能保证自己的性能不受太大的影响,通俗的说,原生多核的抗压能力强,但是需要先进的工艺,每扩展一个核心都需要很多的研发时间。

- 封装多核是只把多个核心直接封装在一起,和原生的比起来还是差了很多,而且后者成本比较高,优点在于多核心的发展要比原生快的多。

多个处理机及存储器模块构成的并行处理机被称为多处理机系统(multiprocessor system),简称多处理机。多机系统是将多个VLSI(超大规模集成电路)工艺集成的微处理机芯片结合在一起,由多个处理机并行工作以达到所需的高速度的,因此多机系统实际上是并行处理技术和VLSI技术相结合的产物。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分