在 Linux 中使用「cpuid」存取 CPU 資訊
在 Linux 中,可以透過「cpuid」指令存取 CPUInfo 功能。但是,要有效地利用此指令,您需要了解其實現和潛在的替代方案。
在您的程式碼片段中,您嘗試使用 Windows API 中的「_cpuinfo()」函數,該函數與Linux。相反,Linux 提供了“cpuid.h”標頭,允許您透過以下函數存取“cpuid”指令:
這些函數提供了一種無需彙編程式碼即可檢索 CPU 資訊的便捷方法。以下是如何使用這些函數的範例:
<code class="c++">#include <cpuid.h> int main() { unsigned int eax, ebx, ecx, edx; // Get the highest supported CPUID level unsigned int max_level = __get_cpuid_max(0, NULL); // Iterate over the supported levels for (unsigned int level = 0; level <= max_level; level++) { // Get the CPUID data for the current level if (__get_cpuid(level, &eax, &ebx, &ecx, &edx)) { // Display the data std::cout << "CPUInfo at level " << level << ":\n"; std::cout << "EAX: " << eax << "\n"; std::cout << "EBX: " << ebx << "\n"; std::cout << "ECX: " << ecx << "\n"; std::cout << "EDX: " << edx << "\n"; } } return 0; }</code>
透過使用「cpuid.h」標頭和這些函數,您可以在Linux 環境中有效地存取和使用「cpuid」指令,而無需使用需要重新實作功能。
以上是如何在 Linux 中使用「cpuid」存取 CPU 資訊?的詳細內容。更多資訊請關注PHP中文網其他相關文章!