美文网首页
进程、线程、超线程

进程、线程、超线程

作者: JavaM | 来源:发表于2019-07-31 18:39 被阅读0次

1.1 线程和进程

计算机发展初期进程既是资源分配也是调度的最小单位,那时候没有线程的概念,但是由于CPU性能越来越好,后来为了不浪费cpu资源,才将资源分配和调度分开,就有了线程。线程是建立在进程的基础上的一次程序运行单位。多个线程可以共享进程中的绝大部分资源(内存等)。(超线程也是为了充分利用CPU资源而诞生)

定义:进程是OS操作系统资源分配的基本单位,而线程是CPU调度和执行的基本单位(我理解为资源调度的基本单位);

关系:进程是线程的容器,不存在没有线程的进程,所以线程也被称为轻量级进程。

内存分配:系统会为每个进程分配不同的内存空间;而对线程而言,除了CPU外,系统不会为线程分配内存,线程组之间共享所属进程的资源。

进程拥有自己的资源空间,每启动一个进程,系统就会为它分配地址空间和其他资源;而线程与CPU资源分配无关,线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,栈等),进程的其他资源多个线程共享。(服务器中我们的JVM就是一个进程,里面可以创建很多线程)

资源共享和资源同步:进程拥有各自独立的地址空间,资源,所以共享复杂,需要用IPC(进程间通信),同步简单;线程共享所属进程的资源,共享简单,但同步复杂,要通过加锁等措施。

进程占用内存多,切换复杂,CPU利用率低; 线程占用内存少,切换简单,CPU利用率高

相互影响: 因为进程拥有各自独立的地址空间和资源,因此不会相互影响;线程共享所属进程的资源,所以一个线程挂掉可能会导致整个进程挂掉。

1.2 超线程技术

物理CPU:硬件层面的实际CPU   逻辑CPU:支持超线程的机器逻辑CPU为物理CPU的2倍,不支持超线程的机器逻辑CPU没用意义,和物理CPU数量一样。

超线程是英特尔研发的一种技术。此技术实现了在一个实体CPU中,提供两个逻辑线程。超线程的目的,是提升处理器的逻辑线程,进而充分发挥CPU的资源。
超线程技术把处理器内部的两个逻辑内核模拟成两个物理芯片,让单个处理器就能同时运行两个线程,实现并行计算。超线程技术可以充分利用空闲CPU资源。但是当两个线程同时需要CPU内相同的某个资源时,没抢到资源的线程必须暂时挂起,直到另一个线程将该资源释放以后才能继续。因此,超线程的性能并不等于两个CPU的性能。

1.3 协程

协程:协程不是进程,也不是线程,它是一个特殊的函数——可以在某个地方挂起,并且可以重新在挂起处继续运行。现在的java多线程可以充分利用多核资源,但是协程本质是一个函数,从函数层面在一个线程下创建多个协程,当一个协程阻塞时(依赖异步回调模式)去执行另一个协程,不需要切换CPU,因为使用的都是当前线程,具体实现方式我还没有研究。大佬们可以给我讲讲,在此谢过。个人感觉就是会有轮询任务一样,执行阻塞直接其他任务。

相关文章

  • 进程、线程、超线程

    1.1 线程和进程 定义:进程是OS操作系统资源分配的基本单位,而线程是CPU调度和执行的基本单位(我理解为资源调...

  • 多线程 2020-11-17

    线程:cpu 调度的最小单位,不能独立于进程存在的进程:分配资源的最小单位 超线程技术:特尔研发的一种技术 物理核...

  • 超线程

    转载:https://blog.csdn.net/abidingdj/article/details/523137...

  • 超线程

    超线程:一个核对应多个线程,一个CPU中一个计算单元(ALU),对应两组寄存去(Register、PC寄存器); ...

  • 线程基础,线程之间的共享和协作

    1.基础概念 1.1 CPU核心数和线程数的关系 核心数:线程数=1:1 ;使用了超线程技术后---> 1:2 ...

  • 阿里云-云计算-超详细-各模块虚拟化(二)

    1. CPU虚拟 Socket (实体):插槽 单路 双路 Thread 线程 给虚拟机分配 超线程Hyper T...

  • 线程基础,线程之间的共享和协作

    基础概念CPU 核心数和线程数的关系核心数:线程数 = 1:1 ,后面使用了超线程技术后--》1:2CPU 时间...

  • 线程基础、线程之间的共享和协作

    基础概念 CPU核心数和线程数的关系 核心数:线程数=1:1 ;使用了超线程技术后---> 1:2 CPU时间片轮...

  • 线程和进程概念

    线程和进程 进程 线程 线程和进程的区别

  • 一、基础1

    cpu核心数和线程数的欢喜 核心数:线程数 = 1:1。 使用了超线程技术后 --> 1:2 cpu时间偏轮转机制...

网友评论

      本文标题:进程、线程、超线程

      本文链接:https://www.haomeiwen.com/subject/uatxdctx.html