gpt4 book ai didi

assembly - 如何检测 x86 组件中的核心数量?

转载 作者:行者123 更新时间:2023-12-03 04:56:20 24 4
gpt4 key购买 nike

我正在编写一个非常简单的操作系统作为自己的学习工具。我当前的任务是尽可能多地检测硬件。

到目前为止,我已经能够使用CPUID指令找到很多有关CPU的信息。我似乎找不到的一件事是物理和/或逻辑核心的数量。有没有办法结合使用 x86 汇编和 C 来做到这一点?

我正在编写操作系统,因此代码可以在supervisor模式下运行,并且没有系统库可以查询此信息。

最佳答案

为了查找系统中的所有处理器,您必须解析 ACPI 表或 Intel 的 MP 配置表。请参阅Bringing SMP to your UP Operating System有关使用 MP 配置表查找并启动其他处理器的教程。有关 ACPI 的更多信息,请访问 http://www.acpi.info/spec.htm 。您可能还想查看Detecting CPU Topology ,它可以告诉您系统中的哪个物理芯片上有哪些处理器和内核。

在您的操作系统上工作时,http://wiki.osdev.org将是你最好的 friend 。它充满了有关操作系统开发的所有不同部分的信息,包括常见的硬件和工具。

关于assembly - 如何检测 x86 组件中的核心数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6146059/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com