64 Bit Kernel booten

Snow Leopard stellt einen optionalen 64-Bit Kernel bereit. Standardmäßig startet Mac OSX mit einem 32-Bit Kernel, Sie können das System aber auch im 64-Bit Modus starten, wenn Sie eine Anwendung haben, die vom 64-Bit Support profitiert. Allerdings können in einen 64-Bit Kernel keine 32-Bit KEXTs (Kernel Extensions) geladen werden. Ob sich ihr System im 32-Bit oder 64-Bit Modus befindet, können Sie im -Menü im System Profiler in der Software Übersicht feststellen oder in einem Terminal mit dem system_profiler Kommando:

$ system_profiler SPSoftwareDataType
Software:

    System Software Overview:

      System Version: Mac OS X 10.6.4 (10F569)
      Kernel Version: Darwin 10.4.0
      Boot Volume: Macintosh HD
      Boot Mode: Normal
      Computer Name: Pronto-MacPro
      User Name: pronto (pronto)
      Secure Virtual Memory: Not Enabled
      64-bit Kernel and Extensions: No
      Time since boot: 39 minutes

Während des Startvorgangs können Sie mit der Tastenkombination 4 + 6 das Laden des 64-Bit Kernels erzwingen. Diese Bootoption ist allerdings nicht permanent, wenn Sie den 64-Bit Kernel Mode permanent einstellen möchten, können Sie das mit dem CLI systemsetup-Kommando festlegen. Für weitere Informationen zum systemsetup-Kommando konsultieren Sie die Manpage.

Zum aktivieren des 64-Bit Kernel auf einem Snow Leopard führen Sie folgendes Kommando aus (10.6 only):

$ sudo systemsetup -setkernelbootarchitecture x86_64

Zum aktivieren des 32-Bit Kernel auf einem Snow Leopard führen Sie folgendes Kommando aus (10.6 only):

$ sudo systemsetup -setkernelbootarchitecture i386

Apple verlässt den Benutzer mit den Worten, dass er den 64-Bit Kernel gerne laden darf, wenn denn eine Anwendung davon profitiert. Da stellt sich natürlich die Frage, wann denn dieser Fall gegeben ist? Aber fangen wir mal mit dem (wahrscheinlichen) Grund an, warum Apple eigentlich noch einen 32-Bit Kernel bootet. Der 64-Bit Kernel kann keine 32-Bit Kernelerweiterungen (KEXT) laden, was vor allem beim Treibersupport Probleme aufwirft. Third-Party Treiber und Software Hersteller sollen so mehr Zeit haben ihre Software auf 64-Bit zu schreiben. Die Not ist allerdings für uns Verbraucher nicht groß, denn der 32-Bit Kernel kann auch 64-Bit Programme starten (und tut das auch schon rege) und das Verwalten von mehr als 4GB Arbeitsspeicher auf 32-Bit Systemen ist eigentlich nur noch für Windows ein Problem. Die CPU Hersteller hatten lange schon den Adressbus von 32-Bit auf 36-Bit erweitert, was fortan mittels PAE den adressierbaren Speicher auf 64GB festlegte. Bei den heutigen 64-Bit CPUs ist das schon gar kein Thema mehr, vielmehr stellt sich hier eher das Problem, dass durch 32-Bit Software eher noch Ressourcen verschwendet werden.

Fazit: Es besteht also kein Grund den oben genannten Workaround anzuwenden. Wer unter Snow Leopard dem neuen 64-Bit Photoshop CS 5 mal richtig RAM spendieren möchte, kann das bedenkenlos auch in der 32-Bit Kernel Variante tun.

Es besteht noch eine weitere Einschränkung, welche das Ausführen eines 64-Bit Betriebssystems verhindern könnte und das ist das verwendete EFI. Ältere Macs haben uU noch eine 32-Bit Variante des EFIs, der 64-Bit Kernel muss allerdings zwingend von einem 64-Bit EFI gebootet werden. Um herauszufinden, welche EFI Version Ihr Mac verwendet, führen Sie in einem Terminal folgendes Kommando aus:

$ ioreg -l -p IODeviceTree | grep firmware-abi
    | |   "firmware-abi" = <"EFI64">

Eine Liste welche Macs ein 64-Bit Betriebssystem booten können, finden Sie in diesem Apple Tech Note Artikel1)

Verwandte Artikel:
-> Mac OS Startsequenz 10.6
-> Physikalische Adresserweiterung (PAE)

pronto 2010/08/01 12:34