问题标签 [cpuid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
990 浏览

assembly - 在 BIOS 中禁用超线程,但仍显示在 CPUID 中

我做了一个函数(见下文),它检测 CPU 内核是否具有超线程。当我在 BIOS 中禁用超线程时,CPUID 仍然报告内核具有超线程。我怎样才能正确地确定是否启用了超线程?

0 投票
0 回答
61 浏览

sdl - 为什么 SDL2 中缺少 SDL_HasMMXExt

在 SDL 1.2 中,有SDL_HasMMXExt. 见这里。文件的完整来源可以在这里看到。

在 SDL 2 中,缺少该功能。为什么?可以在此处查看同一文件的 SDL2 的完整源代码。

SDL 1.2 的相关代码是这样的:

CPU_getCPUIDFeaturesExtSDL2 中也缺少。为什么被移除?

0 投票
1 回答
2892 浏览

c++ - `__asm` 语句中需要一个表达式

我正在使用此论坛主题中的代码来获取 CPU 的系列信息:

但是,Visual Studio 2013 给了我一个 'InteliSense:expected an expression' 错误:

正如 Visual Studio 2013 告诉我的那样error C2290: C++ 'asm' syntax ignored. Use __asm.,我asm改为__asm.

我遇到的每个错误都与上面的代码块有关:

由于我实际上是在使用上面提到的线程提供的代码而没有任何更改(除了__asm编辑),我假设我不包括不需要包含在早期版本中的必需库或头文件的 Visual Studio。

如果是这样,我错过了哪些标题/库?如果没有,我做错了什么?

0 投票
0 回答
132 浏览

assembly - CPUID 信息在占有者中存储在哪里?

CPUID 是一个 x86 汇编指令,用于获取 CPU 规格和信息,例如是否允许超线程或支持虚拟化。但是有人知道,这些信息存储在处理器中的什么位置?是微码吗?

0 投票
2 回答
935 浏览

c - 使用 cpuid 在 C 中获取供应商 ID

我只想获取我的供应商 ID,即 GenuineIntel 在 C 中使用 cpuid。

这是我要使用的功能:

这是我的错误代码:

0 投票
1 回答
1045 浏览

c - 如何通过 cpuid 指令识别 c/assembler 中的 cpu 品牌名称

我不知道这个程序应该如何工作,我找到了一些代码,但我不明白它们,如果这里有人这么好并且有这样的程序,你能给我解释一下吗?

0 投票
1 回答
168 浏览

xcode - __asm 块在 Xcode 5 中导致崩溃

我有一个小班来获取 CpuID 信息。在类构造函数中,我有一个使用 asm 代码获取 cpuid 信息的内联函数。它在 Windows 中运行良好,在 Xcode 3 中运行良好,但现在类本身被破坏了。

这是函数的开头:

在 __asm 阻止 CPUDetector 类本身之后,我在它的构造函数中的那个变得无效(NULL)。我尝试禁用不同的 Xorcpuid,但每次都得到相同的结果。

有人可以建议我做错了什么吗?

0 投票
0 回答
1381 浏览

x86 - AMD 处理器的 CPUID 系列/型号

我想使用 CPUID (eax=1) 来检查特定范围的 AMD CPU,特别是 Bulldozer 系列,但我似乎无法在网上找到任何关于这些 CPU 型号范围的信息是。也就是说,我可以在这里获得相当多的英特尔 CPU:

https://software.intel.com/en-us/articles/intel-architecture-and-processor-identification-with-cpuid-model-and-family-numbers

我确实知道我需要读取 19:16 和 7:4 位才能获取模型 ID。

0 投票
2 回答
422 浏览

assembly - Rdrand 指令 SIGILL

Cpuid 说我的系统上有 rdrand,但是 rdrand 指令会抛出 sigill。我在 VmWare 工作站 11 中使用 linux mint,我搜索了 rdrand 的工作站支持,他们说它从第 9 版开始启用。主机进程是i5-2550k,应该支持rdrand。我能以某种方式解决这个问题吗?这是 gdb 清单:

0 投票
1 回答
436 浏览

assembly - 如何可靠地检测最大附加 CPUID 级别?

我想使用该cpuid指令查询 CPU 功能。我对所有其他 CPUID 级别感兴趣,包括0x800000000xc0000000(Centaur)。问题是我看不到确定是否支持特定级别的明确方法。

特别是,我担心Intel(R) 64 and IA-32 Architectures Software Developer's Manual中的这一特殊内容:

返回两种类型的信息:基本功能信息和扩展功能信息。如果为 CPUID.EAX 输入的值高于该处理器的基本或扩展功能的最大输入值,则返回最高基本信息叶的数据。

这意味着,如果我cpuid使用EAX = 0x80000000or进行查询EAX = 0xc0000000,我可以获得 中的最大 CPUID 级别EAX,或者输出一些随机的基本级别叶。

是否有可靠且相对简单的方法来确定是否支持特定级别?