核心和处理器的区别是什么?

我已经在谷歌上找过了,但我只得到多核和多处理器的定义,这不是我要找的。


当前回答

核心通常是CPU的基本计算单元——它可以运行单个程序上下文(如果它支持硬件线程,如Intel CPU上的超线程,则可以运行多个程序上下文),维护正确的程序状态、寄存器和正确的执行顺序,并通过alu执行操作。出于优化的目的,内核还可以保存带有常用内存块副本的内核缓存。

CPU可以有一个或多个内核在给定时间执行任务。这些任务通常是操作系统调度的软件进程和线程。请注意,操作系统可能有许多线程要运行,但CPU在给定时间只能运行X个这样的任务,其中X =核数*每个核的硬件线程数。其余的将不得不等待操作系统调度它们,无论是通过抢占当前正在运行的任务还是任何其他方式。

In addition to the one or many cores, the CPU will include some interconnect that connects the cores to the outside world, and usually also a large "last-level" shared cache. There are multiple other key elements required to make a CPU work, but their exact locations may differ according to design. You'll need a memory controller to talk to the memory, I/O controllers (display, PCIe, USB, etc..). In the past these elements were outside the CPU, in the complementary "chipset", but most modern design have integrated them into the CPU.

此外,CPU可能有一个集成的GPU,以及几乎所有设计师想要保持接近的性能、功耗和制造方面的考虑。CPU设计主要趋向于所谓的片上系统(SoC)。

这是一种“经典”设计,被大多数现代通用设备(客户端PC、服务器、平板电脑和智能手机)所使用。你可以找到更精细的设计,通常在学院,那里的计算不是在基本的“核心”单元中完成的。

其他回答

让我们先弄清楚什么是CPU,什么是核心,一个中央处理单元CPU,可以有多个核心单元,这些核心本身就是一个处理器,能够执行一个程序,但它是独立在同一个芯片上的。

在过去,一个CPU分布在相当多的芯片中,但随着摩尔定律的发展,他们在一个芯片(模具)中有一个完整的CPU,自90年代以来,制造商开始在同一个模具中安装更多的内核,所以这就是多核的概念。

在这些日子里,有可能在同一个CPU(芯片或芯片)gpu上有数百个内核,英特尔至强。90年代开发的另一项技术是同步多线程,基本上他们发现在同一个单核CPU中有另一个线程是可能的,因为大多数资源已经重复了,比如ALU,多个寄存器。

所以基本上一个CPU可以有多个内核,每个内核都能够同时运行一个或多个线程,我们可能会期望将来有更多的内核,但更难以有效地编程。

核心通常是CPU的基本计算单元——它可以运行单个程序上下文(如果它支持硬件线程,如Intel CPU上的超线程,则可以运行多个程序上下文),维护正确的程序状态、寄存器和正确的执行顺序,并通过alu执行操作。出于优化的目的,内核还可以保存带有常用内存块副本的内核缓存。

CPU可以有一个或多个内核在给定时间执行任务。这些任务通常是操作系统调度的软件进程和线程。请注意,操作系统可能有许多线程要运行,但CPU在给定时间只能运行X个这样的任务,其中X =核数*每个核的硬件线程数。其余的将不得不等待操作系统调度它们,无论是通过抢占当前正在运行的任务还是任何其他方式。

In addition to the one or many cores, the CPU will include some interconnect that connects the cores to the outside world, and usually also a large "last-level" shared cache. There are multiple other key elements required to make a CPU work, but their exact locations may differ according to design. You'll need a memory controller to talk to the memory, I/O controllers (display, PCIe, USB, etc..). In the past these elements were outside the CPU, in the complementary "chipset", but most modern design have integrated them into the CPU.

此外,CPU可能有一个集成的GPU,以及几乎所有设计师想要保持接近的性能、功耗和制造方面的考虑。CPU设计主要趋向于所谓的片上系统(SoC)。

这是一种“经典”设计,被大多数现代通用设备(客户端PC、服务器、平板电脑和智能手机)所使用。你可以找到更精细的设计,通常在学院,那里的计算不是在基本的“核心”单元中完成的。

一幅图可以胜过千言万语:

图中描述了现代多处理器、多核系统的复杂性。

来源:

https://software.intel.com/en-us/articles/intel-performance-counter-monitor-a-better-way-to-measure-cpu-utilization

CPU是中央处理单元。自2002年以来,我们只有单核处理器,也就是说,我们一次只能执行一个任务或一个程序。

为了同时运行多个程序,我们必须使用多个处理器同时执行多个进程,因此我们需要另一个主板,这是非常昂贵的。

因此,英特尔引入了超线程的概念,即它将单个CPU转换为两个虚拟CPU,即我们的任务有两个内核。现在CPU是单个的,但它只是假装(伪装)它有一个双CPU并执行多个任务。但是拥有真正的多核会比这更好,所以人们开发了多核处理器,即在一个盒子上安装多个处理器,即在一个大CPU上安装多个CPU。即多核。

我已经阅读了所有的答案,但是这个链接对我来说更清楚地解释了CPU(处理器)和核心之间的区别。所以我在这里留下了一些笔记。

CPU和核心的主要区别在于,CPU是计算机内部的电子电路,执行算术、逻辑、控制和输入/输出操作的指令,而核心是CPU内部的执行单元,接收和执行指令。