i386在macOS Mojave上意味着什么?


12

我使用的是2013年末推出的二手MacBook Pro(Mojave 10.14.3),当我arch在Terminal上键入内容时,我会回来i386。不应该是x86_64吗?卖方虚假陈述了该物品吗?请参阅“关于本机”下面的屏幕截图。 屏幕截图

Answers:


15

根据该SO答案arch区分PowerPC(ppc)和Intel(i386),而不是x86上的32位和64位内核。因此,在这种情况下,i386意味着x86 CPU。

检查的输出uname -m以找出您的机器类型。(在Linux上,arch等效于uname -m。)

另请参阅“ 询问不同的问题与解答”


是的 我做到了uname -m,它给了我x86_64。所以我想这是64位CPU架构。我arch只是想尝试一个在学习Linux认证时碰到的cmd。
WobblyWindows '19

14

在macOS系统上,就像在其他BSD系统上一样,您应该使用该machine实用程序:

$ arch
i386
$ machine
x86_64h

i386,如果你使用的是误导arch其他系统上的程序。在macOS Mojave上,i386意味着它能够运行为Intel处理器系列编译的32位软件。请注意,与archmacOS相比,macOS 上的实用程序用于完全不同的事情(请参见其手册)。

您也可以uname -m在Linux上使用as:

$ uname -m
x86_64

5
并不是为了制造麻烦,而是因为AFAIK,Apple没有提供任何文档来表明该i386名称暗示它能够运行32位软件... man arch当然不建议这样做。恕我直言,苹果公司只是丢球了,让事情变得有些混乱-也许是以向后兼容的名义?
Seamus

3

我觉得用“传统”的工具(例如archunamesw_vers)来发现Mac的硬件或软件可能不是很可靠。肯定是不一致的!甚至系统手册也充斥着不一致之处。

这并不是说您无法从这些实用程序中获得有用的信息,而是说除非您知道所要查找的内容,否则您得到的结果可能会与其他系统上得到的结果有所不同

例如:

$ arch
i386

没有!(除非您使用的是真正的旧计算机。)

另一个示例是OS版本。man sw_vers并且man uname都声称报告“ OS版本”:

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.14.4
BuildVersion:   18E226

$ uname -v
Darwin Kernel Version 18.5.0 ....  # output snipped 

一切都很好,我们知道内核和发行版的版本编号是不同的,但是这两个命令的系统手册都说you get OS Version。了解电流macos起源可以解释其中的某些原因,但不能解释为什么系统手册不一致。

因此,对于OP关于如何在系统上获得清晰可靠信息的问题,我认为答案应该是同时system_profiler用于硬件和软件:

$ system_profiler SPHardwareDataType
Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: MacBookPro13,3
      Processor Name: Intel Core i7
      Processor Speed: 2.9 GHz
      Number of Processors: 1
      Total Number of Cores: 4
      L2 Cache (per Core): 256 KB
      L3 Cache: 8 MB
      Memory: 16 GB
      Boot ROM Version: 254.0.0.0.0
      SMC Version (system): 2.38f7
      Serial Number (system): C02*********
      Hardware UUID: ********-****-****-****-************

$ system_profiler SPSoftwareDataType
Software:

    System Software Overview:

      System Version: macOS 10.14.4 (18E226)
      Kernel Version: Darwin 18.5.0
      Boot Volume: Macintosh HD
      Boot Mode: Normal
      Computer Name: MacBook No 2
      User Name: Seamus (seamus)
      Secure Virtual Memory: Enabled
      System Integrity Protection: Enabled
      Time since boot: 13:13

另外,system_profiler似乎系统手册仍处于最新状态。

最后,关于标题问题“ [ archi386 的输出在macOS Mojave上意味着什么?” 答:不幸的是,这意味着 Apple没有正确维护其文档和/或应用程序。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.