古いMacを64bit起動する


先日中古のMACを買った際にもともとLeopardが付いていたが、Core2duoを積んでいるということでSnow Leopardにアップグレードした。
アプリケーションが64bitで立ち上がっていたので、あまり気にしなかったのですがこれで64bitで動いていると思っていた。



ふとしたときに「システムソフトウェアの概要」の「64bitカーネル拡張機能」を見たときに「いいえ」と・・・????
ハード的に64bitで動いているんじゃないの???

っと、思っていましたが64bitのエミュレーションで動いていたことにショック!!


調べてみると
64bitカーネルが動作する為の必要条件は、

1. CPUが64bitに対応している
2. EFIが64bitに対応している


・・・2.がだめっぽい

iMAC7.1だから、iMAC9.0以上じゃないとだめみたい。
そんなの嫌だ!ということであるサイトを見つけました。
なんとかできそう〜



下記のサイトを参考にやっていけば、ハード的にも64bitで起動できました。

MacBook (late2008) を64bit起動する
Snow Leopardを64bitカーネルで動作させる


やり方はhokypoky.blogさんのところが詳しいのでそこを参照!
やったことは

1. /System/Library/CoreServices/boot.efiをユーザーフォルダにリネームしてコピー
2. コピーしたboot.efiをHexEditorにて編集
3. 下記の表のiMacを値を使う
4. /System/Library/CoreServices/に編集したファイルを入れる
5. アクセス権限を変更
6. 起動時にboot.efiでなく新しく編集したファイルを読むように設定する
7. 32- or 64-bit Kernel Startup Mode Selector.appより64bit起動モードに設定する


Model (with 64-bit EFI) Byte Position in boot.efi Old Value New Value
Mac mini 0x266DB 0x00 0x80
MacBook 0x266E8 0x00 0x04
MacBook Air 0x266FB 0x00 0x80
iMac 0x2671B 0x00 0x80