0

有没有办法动态了解 Linux 体系结构,无论是它x86-64还是x86

4

3 回答 3

4

Posix 标准uname函数(在uname(2)系统调用中实现)动态地为您提供有关 CPU 的信息。你可能想要这个 machine领域。

注意运行 32 位程序的 x86-64 内核(例如chroot,在 64 位 Debian 中运行的 32 位 Debian 发行版,或者在 64 位系统上运行的 32 位 ELF 二进制文件);我不知道他们在那种情况下会给出什么;在那种情况下,我会想象一些x86_64,因为内核并不真正了解二进制文件和libc系统。

另请参见 Linux 特定的个性 (2)系统调用。

于 2013-01-02T13:42:05.397 回答
1

谷歌是你的朋友:http: //sourceforge.net/p/predef/wiki/Architectures/

您想测试宏__amd64____i386__. 理想情况下,您根本不测试宏并编写正确的、可移植的代码。

于 2013-01-02T13:34:18.017 回答
0

您可以使用 lscpu 命令列出有关 CPU 的特征。

于 2013-01-02T14:01:59.067 回答