机器、处理器、硬件平台有什么区别?

机器、处理器、硬件平台有什么区别?

我刚刚检查了一下uname,发现-m结果-p相同,但-i返回的结果不同。i686 和 i386 有什么区别?

$ uname -mpi给出i686 i686 i386

答案1

答案不多,但是...

uname -mpi 给出:

在我的(64 位)i7 Intel xenial 系统上: x86_64 x86_64 x86_64

在我的 Ubuntu BQ Aquaris m10 平板电脑上 aarch64 aarch64 aarch64

在 qemnu-arm 模拟系统上 armv7l armv7l armv7l

在 32 精度系统上 i686 i686 i386

xenial 的手册页说

       -m, --machine
              print the machine hardware name

       -p, --processor
              print the processor type (non-portable)

       -i, --hardware-platform
              print the hardware platform (non-portable)

虽然精确的手册页说

   -m, --machine
          print the machine hardware name

   -p, --processor
          print the processor type or "unknown"

   -i, --hardware-platform
          print the hardware platform or "unknown"

这个 GNU 手册页提供更多信息:

processor打印处理器类型(有时称为指令集架构或 ISA)。如果此信息不可用,则打印“未知”。请注意,这是不可移植的(即使跨 GNU/Linux 发行版)。

machine打印机器硬件名称(有时称为硬件类别或硬件类型)。

hardware-platform打印硬件平台名称(有时称为硬件实现)。如果此信息不可用,则打印“未知”。请注意,这是不可移植的(即使跨 GNU/Linux 发行版)。

hardware-platform这样说是有道理的,i386因为(我相信)这是第一个 32 位 x86 处理器。(并且所有后续的 32 位 x86 处理器都与它兼容)

猜测(不可移植)意味着它可能无法在某些平台上给出合理的答案 - 所以就我的使用而言,我认为我坚持使用uname -m

答案2

-p == central processor
-m == mainboard (housing the periphery parts the cpu needs to be able to work)
-i == architecture the OS was compiled against

x86指的是 32 位英特尔处理器架构,其中i386i686是不同的处理器系列成员,它们实现相同的架构,但具有不同的功能集。只要较新的系列向后兼容,它们就属于同一架构。

根据 CPU / 主板 / OS(字面上)所构建的处理器架构规范,您可以使用不同的 CPU 指令集。

因为在您的情况下,您的 CPU 和主板支持与您的操作系统相同的指令集,并且您的操作系统不使用您的硬件不支持的功能,所以您不会遇到任何问题。

相关内容