回答:
このSO回答によれば、arch
はPowerPC(ppc
)とIntel(i386
)を区別し、x86上の32ビットカーネルと64ビットカーネルを区別しません。したがって、このコンテキストでi386
は、x86 CPUを意味します。
の出力をチェックしuname -m
て、マシンタイプを確認します。(Linuxでは、arch
と同等ですuname -m
。)
このAsk Ask Q&Aもご覧ください。
macOSシステムでは、他のBSDシステムと同様に、次のmachine
ユーティリティを使用する必要があります。
$ arch
i386
$ machine
x86_64h
i386
あなたが使用している場合誤解されarch
、他のシステムでユーティリティ。macOS Mojaveではi386
、Intelプロセッサファミリ用にコンパイルされた32ビットソフトウェアを実行できることを意味します。arch
macOS のユーティリティは、Linuxなどとはかなり異なることに使用されていることに注意してください(そのマニュアルを参照)。
uname -m
Linuxの場合と同様に使用することもできます。
$ uname -m
x86_64
i386
指定が32ビットソフトウェアを実行できることを示唆していることを示すAppleからのドキュメントman arch
はありません... 確かにそれを示唆していません。私見、Appleはボールを落としたばかりで、物事が少し厄介なものになった-おそらく後方互換性の名の下に?
私は、(例えば、「伝統的な」ユーティリティを使用していることを感じarch
、uname
、sw_vers
)お使いのMacのハードウェアやソフトウェアを発見することは非常に信頼性がないかもしれません。それは確かに矛盾しています!システムマニュアルでさえ、一貫性に欠けています。
これは、これらのユーティリティから有用な情報を取得できないと言っているのではなく、探しているものがわからなければ、他のシステムで得ているものとは異なる結果が得られる可能性があるというだけです。
例えば:
$ arch
i386
番号!(本当に古いコンピュータを使用している場合を除きます。)
別の例は、OSバージョンです。両方とも「OSバージョン」を報告するman sw_vers
とman uname
主張します。
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.14.4
BuildVersion: 18E226
$ uname -v
Darwin Kernel Version 18.5.0 .... # output snipped
すべてが順調と良いですが、どの-私たちはしている認識してカーネルとディストリビューションのリリースバージョン番号が異なっているが、これらのコマンドの両方のためのシステムのマニュアルは、あなたが得ると言うこと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
、より最新の状態に維持されているようです。
そして最後に、見出しの質問について:「arch
macOS Mojave で[の出力] i386 は何を意味しますか?」。回答:残念ながら、これは Appleがドキュメントやアプリを適切に管理していないことを意味します。
uname -m
、そしてそれは私に与えましたx86_64
。つまり、64ビットCPUアーキテクチャだと思います。私が試したarch
だけで、私は、Linuxの認証のために勉強しながらぶつかっていたことCMDを試してみます。