Jawaban:
Menurut jawaban SO ini , archbedakan antara PowerPC ( ppc) dan Intel ( i386), bukan antara kernel 32- dan 64-bit pada x86. Jadi dalam konteks ini, i386berarti CPU x86.
Periksa output uname -muntuk mengetahui jenis mesin Anda. (Di Linux, archsetara dengan uname -m.)
Lihat juga Tanya Jawab yang Berbeda ini .
Pada sistem macOS, seperti pada sistem BSD lainnya, Anda harus menggunakan machineutilitas:
$ arch
i386
$ machine
x86_64h
Ini i386menyesatkan jika Anda terbiasa dengan archutilitas pada sistem lain. Di macOS Mojave, i386berarti mampu menjalankan perangkat lunak 32-bit yang dikompilasi untuk keluarga prosesor Intel. Perhatikan bahwa archutilitas pada macOS digunakan untuk hal-hal yang sangat berbeda dibandingkan pada misalnya Linux (lihat manualnya).
Anda juga dapat menggunakan uname -mseperti di Linux:
$ uname -m
x86_64
i386penunjukan menyiratkan itu mampu menjalankan perangkat lunak 32-bit ... man archtentu tidak menyarankan itu. IMHO, Apple baru saja menjatuhkan bola, dan membiarkan hal-hal menjadi sedikit berantakan - mungkin atas nama kompatibilitas mundur?
Saya merasa bahwa menggunakan utilitas "tradisional" (mis arch. uname, sw_vers) Untuk menemukan perangkat keras atau perangkat lunak Mac Anda mungkin tidak terlalu andal. Ini tentu saja tidak konsisten! Bahkan manual sistem penuh dengan ketidakkonsistenan.
Ini bukan untuk mengatakan bahwa Anda tidak bisa mendapatkan informasi yang berguna dari utilitas ini, itu hanya untuk mengatakan bahwa kecuali Anda tahu apa yang Anda cari, Anda mungkin mendapatkan hasil yang berbeda dari apa yang Anda dapatkan di sistem lain.
Sebagai contoh:
$ arch
i386
Tidak! (Kecuali jika Anda menggunakan komputer yang benar-benar tua.)
Contoh lain adalah versi OS. man sw_versdan man unamekeduanya mengklaim melaporkan "Versi OS":
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.14.4
BuildVersion: 18E226
$ uname -v
Darwin Kernel Version 18.5.0 .... # output snipped
Semuanya baik dan bagus - kami sadar bahwa penomoran versi rilis kernel dan distro berbeda, tetapi manual sistem untuk kedua perintah ini mengatakan Anda dapatkan OS Version. Memahami asalmacos - usul arus menjelaskan beberapa hal ini, tetapi tidak menjelaskan mengapa manual sistem tidak konsisten.
Jadi, untuk pertanyaan OP mengenai cara mendapatkan informasi yang jelas dan andal tentang suatu sistem, saya merasa jawabannya harus digunakan system_profileruntuk perangkat keras dan perangkat lunak:
$ 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
Juga, manual sistem untuk system_profilertampaknya dipertahankan ke kondisi yang lebih saat ini.
Dan akhirnya, tentang Pertanyaan Headline : "Apa arti [output arch] i386 pada macOS Mojave?" . Jawaban: Sayangnya, itu berarti bahwa Apple belum memelihara dokumentasi dan / atau aplikasi mereka dengan benar.
uname -mdan itu memberi sayax86_64. Jadi saya kira itu adalah arsitektur CPU 64 bit. Saya mencobaarchhanya untuk mencoba cmd yang saya temui saat belajar untuk sertifikasi Linux.