核心和处理器之间的区别

2024-03-18

核心和处理器有什么区别?

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


核心通常是 CPU 的基本计算单元 - 它可以运行单个程序上下文(如果支持硬件线程,例如 Intel CPU 上的超线程,则可以运行多个程序上下文),维护正确的程序状态、寄存器和正确的执行顺序,以及通过执行操作ALUs https://en.wikipedia.org/wiki/Arithmetic_logic_unit。出于优化目的,核心还可以保存核心缓存以及常用内存块的副本。

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

除了一个或多个核心之外,CPU 还将包括一些将核心连接到外部世界的互连,通常还包括一个大型的“最后一级”共享缓存。使 CPU 工作还需要多个其他关键元件,但它们的确切位置可能会根据设计而有所不同。您需要一个内存控制器来与内存、I/O 控制器(显示器、PCIe、USB 等)通信。过去,这些元件位于 CPU 外部的互补“芯片组”中,但大多数现代设计已将它们集成到 CPU 中。

此外,CPU 可能有一个集成 GPU,以及设计人员出于性能、功耗和制造考虑而想要保持密切联系的几乎所有其他内容。 CPU 设计主要趋向于所谓的片上系统 https://en.wikipedia.org/wiki/System_on_a_chip (SoC).

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

核心和处理器之间的区别 的相关文章

  • 在两个逻辑 CPU 之间共享 TLB 条目 (Intel)

    我想知道当属于同一程序且具有相同PCID的两个线程被安排在同一物理CPU上运行时是否可以共享TLB条目 我已经研究过SDM https www intel com content www us en developer articles t
  • 超线程/SMT 是一个有缺陷的概念吗?

    HT SMT 背后的主要思想是 当一个线程停止时 同一核心上的另一个线程可以选择该核心的其余空闲时间并透明地与之一起运行 2013 年 英特尔放弃了 SMT 转而采用乱序执行 Silvermont 处理器核心 因为他们发现这可以提供更好的性
  • 嵌入式领域“软复位”和“硬复位”有什么区别?

    在我看来 软复位 从复位向量启动 硬重置 拉cpu的电平 硬复位当然意味着整个CPU芯片及其所有外设都被复位 造成这种情况的原因可能有很多 复位引脚被外部拉动 时钟故障 片上低电压检测 看门狗 非法指令陷阱等 软复位可能意味着返回复位向量的
  • 多处理和并行处理之间的比较

    有人能告诉我多处理和并行处理之间的确切区别吗 我有点困惑 感谢您的帮助 多重处理 多重处理是使用两个或多个中央处理单元 单个计算机系统中的 CPU 该术语还指 系统支持多个处理器和 或的能力 在他们之间分配任务的能力 并行处理 在计算机中
  • 为什么我的核心文件没有被覆盖?

    在 Ubuntu 12 04 上 打开一个新的文本文件并写入 include
  • 屏障/栅栏以及获取、释放语义是如何在微架构上实现的?

    很多问题以及文章 书籍 例如https mirrors edge kernel org pub linux kernel people paulmck perfbook perfbook 2018 12 08a pdf https mirr
  • 核心和处理器之间的区别

    核心和处理器有什么区别 我已经在谷歌上寻找过它 但我只得到了多核和多处理器的定义 这不是我正在寻找的 核心通常是 CPU 的基本计算单元 它可以运行单个程序上下文 如果支持硬件线程 例如 Intel CPU 上的超线程 则可以运行多个程序上
  • Intel x86 与 AMD x86 CPU 上的访问性能不一致

    我已经实现了一个带有结构内存布局数组的简单线性探测哈希图 该结构包含键 值和指示条目是否有效的标志 默认情况下 该结构体由编译器填充 因为键和值是 64 位整数 但该条目仅占用 8 个布尔值 因此 我也尝试以未对齐访问为代价来打包结构 由于
  • CPU利用率和能耗之间有什么关系?

    描述 CPU 利用率和能源消耗 电 热方面 之间关系的函数是什么 我想知道它是否是线性 次线性 exp 等 我正在编写一个程序 可以降低其他程序的 CPU 利用率 负载 我主要关心的是我能在能源方面受益多少 此外 我的服务器主要用作数据中心
  • CPU如何对指令重新排序

    我最近读到了有关 CPU 指令重新排序以提高效率的内容 但我无法理解CPU如何重新排序其指令 我的意思是编译时重新排序是可以想象的 因为编译器可以预见即将到来的代码 但是对于一个接一个地读取指令的CPU 它如何看到即将到来的指令并对它们重新
  • java中获取某些进程的cpu使用率的正确命令行是什么

    给定进程 ID 在 Java 中从进程获取当前 cpu 使用情况的正确命令是什么 命令 typeperf Memory Available bytes processor total process time 不适用于特定进程 并且任何第
  • 为什么较长的管道会导致单个延迟槽不够用?

    我在 Patterson Hennessy 的文章中读到了以下声明计算机组织与设计教科书 随着处理器使用更长的管道并在每个时钟周期发出多个指令 分支延迟变得更长 并且单个延迟槽是不够的 我可以理解为什么 每个时钟周期发出多个指令 会使单个延
  • gcc 优化标志 -O3 使代码比 -O2 慢

    我找到这个话题为什么处理排序数组比处理未排序数组更快 https stackoverflow com questions 11227809 why is processing a sorted array faster than an un
  • 当执行 uop 计数不是处理器宽度倍数的循环时,性能是否会降低?

    我想知道不同大小的循环在最新的 x86 处理器上如何执行 作为 uop 数量的函数 这里引用 Peter Cordes 的一段话 他在 中 中提出了非 4 倍数的问题另一个问题 https stackoverflow com a 31027
  • Xcode 9 - CPU 使用率高 - 风扇最大速度

    自从我升级到 Xcode 9 后 当我在 Xcode 上工作时 我的粉丝就变得疯狂了 当我使用 Storyboards 和 Interface Builder 时 尤其会发生这种情况 Xcode有时会占用100 的CPU 并且名为 Inte
  • 手臂“版本”之间的差异? (仅限 ARMv7)

    基本上我想知道ARMv7l和ARMv7之间的区别hl 我有一个带有armv7l的arm处理器 并且有很多armv7的rpmhl 我完全不知道我必须搜索什么才能获得相关信息 这个 后缀 叫什么 还有其他类型吗 他们的做法有何不同 我假设它指示
  • RISC-V 规范引用了“hart”一词 - “hart”是什么意思?

    我找到了参考文献hart在第 35 页RISC V 2 1 规范 https content riscv org wp content uploads 2016 06 riscv spec v2 1 pdf 但是 我找不到它的定义hart在
  • x86 汇编中 cmove 指令的用途?

    反汇编可执行文件时我遇到了cmove操作说明 我已经在互联网上搜索过 但我只发现这是一个有条件的移动 如果源和目的地相等mov发生 我还不明白为什么我需要它 因为它不会改变操作数 它的目的是什么 The CMOVcc指令不比较源和目标 它们
  • 什么是微编码指令?

    我看过很多参考微编码指令的文献 这些是什么以及为什么使用它们 CPU 读取机器代码并将其解码为内部控制信号 将正确的数据发送到正确的执行单元 大多数指令映射到一个内部操作 并且可以直接解码 例如 在 x86 上 add eax edx只是将
  • python 进程占用 100% CPU

    我正在尝试运行 python 应用程序并根据指定的时间间隔执行操作 下面的代码持续消耗 100 的 CPU def action print print hello there interval 5 next run 0 while Tru

随机推荐

  • Angular 2抛出错误:插座未激活

    我已经设置了我的应用程序 以便我有一个Recipe Book其中有一个列表Recipies当我点击食谱时 它会显示Recipe Details在嵌套路由中 然后 它还有一个按钮 单击该按钮会将成分加载到嵌套路径中Recipes Detail
  • 如何在 Vim 中普遍使用相对行号

    我喜欢 Vim 7 3 中的相对行编号功能 但我很难让它普遍适用 对于许多文件 行编号会恢复为绝对模式 即使我已指定 set rnu in my vimrc文件 知道是什么原因造成的吗 我在 OSX 10 6 上使用 Vim 7 3 以及
  • 等待线程是否重新访问synchronized方法内的代码

    我正在阅读有关线程同步和等待 通知结构的内容tutorial http docs oracle com javase tutorial essential concurrency guardmeth html 它指出 当调用 wait 时
  • 将 $cond 运算符与 Spring-data-mongodb 一起使用[重复]

    这个问题在这里已经有答案了 我希望汇总以下数据 user user1 error true user user2 error false user user1 error false Into id user1 errorCount 1 t
  • Docker run --volume 不断创建随机卷而不使用指定的卷

    Docker 不断创建随机卷 而不是使用我在运行时指定的卷docker run 我将从无卷开始 docker volume ls DRIVER VOLUME NAME 我将创建一个 docker volume create myvol 它将
  • 缓存一致性有什么意义?

    在像 x86 这样提供缓存一致性的 CPU 上 从实际角度来看这有何用处 据我所知 这个想法是让一个核心上完成的内存更新在所有其他核心上立即可见 这是一个有用的属性 然而 如果不是用汇编语言编写 就不能太依赖它 因为编译器可以将变量赋值存储
  • 如何在 Mac 上恢复 .bash_profile?我的 Unix 终端都无法工作 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我在尝试将 Playframework 添加到我的路径时向我的 bash profile 添加了一些内容 但有些内容严重混乱 我将以下行添
  • Angular2-Webpack-Typescript - 3rd 方库

    我开始了一个美丽的种子项目 https github com AngularClass angular2 webpack starter https github com AngularClass angular2 webpack star
  • 在构建时设置.net core库程序集/文件/nuget包版本

    我正在寻找一种在构建时设置 net core 库的程序集版本 以及文件版本和 nuget 包版本 的方法 我的库是使用最新的 Visual Studio 2017 RC 编写的 因此不再需要projects json文件 并由 TeamCi
  • iOS UI 元素移植到 Android 上

    女士们 先生们 在我的工作中 在开发 Android 应用程序时 我经常满足客户的以下要求 使其看起来像 iPhone 应用程序 是的 我知道 最好的方法是为他提供规范的 Android 设计 其中包含所有这些模式 例如仪表板 使用菜单按钮
  • Firestore (9.6.6):连接 WebChannel 传输错误:

    在反应应用程序中 我在同一个文件中有两个几乎相同的函数来将文档添加到子集合中 一个每次都有效 另一个使用不同的子集合 大多数时候都会收到以下警告 注意 不是错误 并且不会添加数据 await addDoc collection db use
  • 使用 XLW 项目和 Visual Studio 2022 C++ 构建和调试 Excel 加载项

    我正在使用以下命令创建 Excel 加载项XLW https github com xlw xlwGitHub 上的 Visual Studio 2022 C 项目 我做了以下事情 创建一个解决方案 MyFunction 其中包含两个项目
  • 来自 的警报对话框被阻止

    当我使用 webview 并显示此错误时 Dart 不显示警报对话框 警报对话框被阻止 扩展名 webViewEvents 225 确认对话框被阻止 扩展名 webViewEvents 225 有谁知道如何绕过该问题或如何捕获错误 Than
  • 在 IE 10 中使用复合键创建索引时出现 DataError

    我正在使用 IE10 测试基于 indexedDB 的应用程序 我无法创建具有多个键的对象存储 例如 var objectStore theDb createObjectStore store1 keyPath key1 key2 当我尝试
  • 在Python中生成字典树中的所有叶到根路径

    我有一个 非标准 形式的字典树 如下所示 tree 0 A B C D E F 叶节点被定义为字典键值对 其中值是空字典 我想将所有叶到根路径提取为列表列表 如下所示 paths C B A 0 E D 0 F D 0 如果有帮助的话 也可
  • 如何使用 Firebase Analytics 定义受众群体?

    我想通过使用自定义属性分隔应用程序的受众来跟踪它们 每个用户都有一个权限列表 我希望在登录我的应用程序时能够使用此属性将它们分开 目前 所有用户都属于 所有用户 类别 而不是单独的类别 我使用 CEO 登录超过 10 次 并且等待了几天 不
  • Openssl 从 CSR 创建证书(无私钥 - 存储在另一个系统中)

    我需要创建一个基于CSR由第三方生成我无权访问私钥 生成的证书需要有keyUsage keyCertSign至少作为证书的一部分 C OpenSSL Win32 bin openssl exe req in C xampp htdocs c
  • FTP 对 PASV 命令的响应应该是什么

    我正在编写一个 FTP 服务器 但我不理解 PASV 命令 任何服务器都会发送如下响应 227 Entering Passive Mode 213 229 112 130 216 4 括号里的数字是什么意思 普通模式和被动模式有什么区别 是
  • 在 WooCommerce 中显示促销购物车商品格式的价格范围

    我尝试在购物车和结帐页面中显示每个产品的小计价格和销售价格 我已经设法使用以下代码将销售价格 24TL 添加到正常价格 33TL Show sale prices on the Cart and Checkout pages functio
  • 核心和处理器之间的区别

    核心和处理器有什么区别 我已经在谷歌上寻找过它 但我只得到了多核和多处理器的定义 这不是我正在寻找的 核心通常是 CPU 的基本计算单元 它可以运行单个程序上下文 如果支持硬件线程 例如 Intel CPU 上的超线程 则可以运行多个程序上