1

Can I install 64 bit software on a 32 bit OS X?
Or could I "update" my 32 bit OS X to 64 bit OS X?

This is what I get when I put uname -a in a terminal:

Darwin gaukhar-alibayevas-macbook.local 9.8.0 Darwin Kernel Version 9.8.0: 
Wed Jul 15   16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386
1
  • 1
    It depends from your Mac model, so please post it.
    – Ruskes
    Oct 2, 2013 at 10:38

3 Answers 3

4

Short answer: if your model of MacBook has a 64-bit capable CPU, you can run 64-bit apps under 10.5.8. You can check the CPU with the command sysctl hw.cpu64bit_capable (0 means no, 1 means yes) or by looking up the model (if it has a "Core Solo" or "Core Duo" CPU it's 32-bit only; if it's a "Core 2 Duo" -- note the "2" -- it's 64-bit).

Long answer: OS X doesn't have 32-bit and 64-bit versions; it uses a universal binary format which allows programs, system components, etc to be installed with both 32- and 64-bit code, and the system simply picks the "best" one to use based on the CPU you're on. Over different versions of OS X, what comes with the OS has gradually migrated from 32-bit-only (through 10.2) to having minimal support for background-only 64-bit apps (10.3 and 10.4), to full support for 64-bit Cocoa apps (10.5), to a full 32/64 OS including the kernel (10.6) to actually starting to drop support for 32-bit mode (10.7 shipped with many 64-bit-only system apps, and will not run on a 32-bit-only CPU).

The 64-bit-capable kernel that was added in 10.6 is cool, but basically irrelevant to user applications. OS X is unusual in that it can transparently run 64-bit apps under a 32-bit kernel as well as 32-bit apps under a 64-bit kernel. Since 10.5 has full support for 64-bit Cocoa apps, upgrading to 10.6 is not necessary.

Adendum: even if you do upgrade to 10.6, the kernel may not actually run in 64-bit mode -- Apple configured it to boot in 32-bit mode on most models by default. If your model uses 64-bit EFI firmware, you can configure 10.6 to boot in 64-bit mode, but if it's an older one that uses 32-bit EFI, even that's not possible. But again, it doesn't really matter, since 64-bit apps work fine either way.

1
  • With GRUB I was able to boot my 32 bit EFI imac into 64 bit OS X 10.6.8 and Debian Jessie.
    – Wyatt Ward
    Apr 21, 2015 at 3:18
2

This can get pretty complex pretty quickly, but the short version is that if you are running Snow Leopard or later, on a Mac that is running on a Core 2 Duo Intel chip (or newer) then you can run 64 bit apps.

You should note that there is no distinction between the 32bit and 64bit versions of OSX, the difference is in the EFI which is essentially the firmware controlling the interface between your OS and your hardware. Some older Macs come with a 32 bit EFI, some with 64 bit. In this exmaple you will see mine is running a 64 bit EFI.

StuffeMac:~ stuffe$ ioreg -l -p IODeviceTree | grep firmware-abi
| |   "firmware-abi" = <"EFI64">
StuffeMac:~ stuffe$ 

So, up to now you know that if you have a 64 bit EFI on the right CPU hardware, you are good to go with 64 bit, and it will boot into a 64 bit kernel at the operating system level, and allow you to run 64 bit apps.

However, there are exceptions, in that some fully 64 bit Macs still boot into 32bit mode by default. Whatever your system default, you can attempt the opposite by holding down 3 and 2 on bootup, or 6 and 4, however this was very much a short term issue for certain macs when running Snow Leopard, and is largely a non issue now on newer macs/OS.

You can see which kernel you are using in System Profiler:

  • Choose About This Mac from the Apple () menu.
  • Click More Info.
  • Click System Report (Optional step dependant on OS level)
  • Select Software in the Contents pane.
  • Look for "64-bit Kernel and Extensions: Yes (or No)" under the System Software Overview heading.

And now for the final kicker, any Mac running on the above CPU spec, irregardless of if they have a 32 bit or 64 bit EFI, and irregardless of if they are then booted into 32 bit or 62 bit kernels can still run 64 bit apps on top of a 32 bit OS kernel(!), which is pretty damn cool, not to mention highly unusual for most desktop class OS, as this note from a good review of 10.6 shows when discussing the 64 bit question.:

Finally, this is worth repeating: please keep in mind that you do not need to run the 64-bit kernel in order to run 64-bit applications or install more than 4GB of RAM in your Mac. Applications run just fine in 64-bit mode on top of the 32-bit kernel, and even in earlier versions of Mac OS X it's been possible to install and take advantage of much more than 4GB of RAM.

1
  • Just to be clear: a Mac with a 32-bit CPU booted on a 32-bit kernel can not run 64-bit applications right? And it can't even boot up a 64-bit kernel right?
    – Cecile
    Dec 23, 2019 at 11:20
0

No, it is not possible to run 64 bit software on a 32 bit computer.

If your MacBook contains a 64 bit CPU, then you can upgrade to a later version of Mac OS X and run 64 bit applications. To tell if your Mac is 64 bit capable, use the following command in Terminal.app:

sysctl hw.cpu64bit_capable
4
  • I am using 32 bit OS X , however I have Java 64 bit installed in it... That's little bit strange... Oct 2, 2013 at 12:37
  • What is the output of java -version? Oct 2, 2013 at 13:38
  • I believe this statement to be wrong, as per my answer. 64 bit apps work fine on a 32bit kernel, so long as you have a 64bit CPU and the app does not require to address kernel extensions.
    – stuffe
    Oct 2, 2013 at 21:10
  • Thanks, I clarified the answer. Now we need @user1111261 to identify if the MacBook has a 64 bit CPU. Oct 3, 2013 at 6:11

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .