分享

Cpu 核和线程的区别?

 宜宾翠屏区 2019-11-05

       CPU的核心的作用:
       cpu核心主要由运算器、控制器、寄存器三部分组成,运算器从字面意思看就是起着运算的作用,控制器就是负责发出cpu每条指令所需要的信息,寄存器就是保存运算或者指令的一些临时文件,这样可以保证更高的速度。
        单核就是CPU集成了一个运算核心; 双核是两个运算核心,相当于两个CPU同时工作;四核是四个运算核心,相当于四个CPU同时工作;
        多核:CPU最初发展的时候是一个CPU一个处理核心,CPU的性能主要靠提高核心工作频率来提高,由于物理限制,不能把CPU的核心频率无限提高,所以发展出来双核心或多核心的CPU。相当于在一枚处理器上集成多个完整的计算引擎(内核),他们共享缓存,内存,寄存器等。两个核心一起工作需要靠软件的支持。软件要明白怎么把任务分给两个核心让他们一起工作,这样变相的提高了CPU的处理性能,现在新出的软件都支持多核心了。本来是一个核心一个线程,不过INTEL发明了一个核心跑出两个线程,这叫超线程技术。所以有双核4线程的说法。
        CPU线程的作用
        源于多任务处理的需要。线程数越多,越有利于同时运行多个程序,因为线程数等同于在某个瞬间CPU能同时并行处理的任务数。
        什么是线程?
        每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。进程也可能是整个程序或者是部分程序的动态执行。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程的调度和执行。

        什么是多线程?
        多线程是为了使得多个线程并行的工作以完成多项任务,以提高系统的效率。线程是在同一时间需要完成多项任务的时候被实现的。
        CPU核心和线程的关系
        CPU的核心数是指物理上,也就是硬件上存在着几个核心。比如,双核就是包括2个相对独立的CPU核心单元组,四核就包含4个相对独立的CPU核心单元组,等等,依次类推。
        线程数是一种逻辑的概念,简单地说,就是模拟出的CPU核心数。比如,可以通过一个            CPU核心数模拟出2线程的CPU,也就是说,这个单核心的CPU被模拟成了一个类似双核心CPU的功能。我们从任务管理器的性能标签页中看到的是两个CPU。
       cpu线程是一堆寄存器,例如当前指令寄存器地址,堆栈指针,页面寄存器等.x86 cpu刚刚开始支持多线程切换,并在cpu指令级实现线程切换,如任务门。但是操作系统通常不使用此函数,而是仅使用一个线程通过修改堆栈指针来实现线程切换。,64位x86将取消任务门。         因此,cpu的线程与操作系统所说的线程几乎没有关系。即使CPU不支持线程,操作系统也可以实现线程。要说连接,现在多核cpu,有多个虚拟cpu,每个虚拟cpu都有一个cpu线程,为了发挥cpu的最大效果,操作系统还必须准备相应数量的线程。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多