Mac OS X 10.6.8 64bit Kernel boot Success! 2

Facebooktwittermail

今更ですがネットで調べ物しているとMac OS Xってデフォルト32bit kernelだったんですね

やっぱりスゴい! Snow Leopardの「64bit対応」
http://ascii.jp/elem/000/000/455/455691/

Intel Mac mini (Early 2009) @ 私的ウィキ(blog)
OSXの64bit対応について
http://www39.atwiki.jp/macmini/pages/26.html

Mac OS X Snow Leopardからはハードウェアの条件がそろえば64bit kernelで起動できるようですが、そもそもMac miniはAppleが制限を掛けて起動できないようにしているとのこと

この制限を解除してMac miniでも64bit kernelで起動させようというものですが、こんな情報を知ったからには私もやらずにはいられません:-)


基本的な情報はこちら
[Snow Leopardを64bitカーネルで動作させる]
http://www39.atwiki.jp/macmini/pages/30.html

カーネルは起動時に32bit/64bitが選択できるのだが、Mac mini, Mac Book, Mac Book Airにおいては、Appleは上位機種との差別化の為、EFIが64bitに対応していても64bitカーネルがロードできないよう意図的に制限をかけている。32bitカーネルでも32GBまでのメモリを扱える為、実用的には問題ないのだが、これはユーザをがっかりさせる結果を招いた

Mac miniでこの制限を解除する方法は

/System/Library/CoreServices/boot.efiをバイナリエディタでoffset 0x266dbの値0x00を0x80に書き換えboot optionを追加する

というものでしたが有り難いことにboot.efi修正スクリプトがありました

Mac mini/MacBook/MacBook Air/iMac対応boot.efi修正スクリプト
http://www.mediafire.com/file/uzy0myvjwhm/efi64_patch.zip

早々にdownloadして解凍してreadme.txtを確認します

# Fist time
copy boot.efi to boot64.efi, patch boot64.efi to load 64bit kernel on Mac mini/MacBook/MacBook Air/iMac.

NOTE1: target boot.efi’s checksum is MD5 (/System/Library/CoreServices/boot.efi) = 9a7e6e458ad563740c4268427d9e4824
NOTE2: Macmini3,1/MacBook4,1/MacBook5,1/MacBookAir1,1/MacBookAir2,1/iMac7,1

# Second time or later
if boot64.efi is exist, re-bless boot64.efi.

Step 1. click efi64_patch(.command)
Step 2. enter root password
Step 3. nvram boot-args=”arch=x86_64″
Step 4. reboot

注意書きにboot.efiのチェックサムが9a7e6e458ad563740c4268427d9e4824でないとダメなようです。

それでは私のMac OS X 10.6.8は

$ shasum /System/Library/CoreServices/boot.efi
0242b79c8852fd28ccc3efa0f1412eb7d70f172b /System/Library/CoreServices/boot.efi

違います。このまま実行してもきっと再起動するとお亡くなりになる可能性大なのでバイナリエディタで書き換えることにしました

offset 0x266dbの前後を確認するとWebの情報と全く違います。そもそも 10.6.8のboot.efiにはこの情報を適用できない気がして諦めていました

でもやっぱりここまでくると諦められない(^_^;
世界を駆け巡ること何時間かしたころ下記の情報がありました

Snow Leopard 32bit vs 64bit – FAQ
http://173.192.77.187/showthread.php?t=783948&page=4

I put together boot.efi x64 patches for all models that do not support native booting into 64-bit kernel.

Just run patch, enter admin password (required to modify a system file), reboot and you should boot into 64-bit kernel.
Restore to original boot.efi also included.

x64patch-10.6.8.tar.bz2
x64patch-10.7.tar.bz2

I have tested the patches with MacBook3,1 & MacBookAir3,2

MacBook3,1 & MacBookAir3,2でこのパッチを使って64bit kernelのbootに成功したとのこと

早々にx64patch-10.6.8.tar.bz2をdownloadします
http://dl.dropbox.com/u/35856129/x64patch-10.6.8.tar.bz2

解凍してterminalから実行して再起動すると64bit kernelでbootできました(^_^)v
しかしつくづく世界にはとんでもない人々が多いですね

こうなったらメモリ増設しないとな

2 thoughts on “Mac OS X 10.6.8 64bit Kernel boot Success!

  1. Reply hemperor 11月 27,2015 13:55

    The Patch works fine !!!! on my MacBook
    MacBook 5.1
    Boot-ROM-Version: MB51.007D.B03
    SMC-Version (System): 1.40f2
    boot.efi shasum 0242b79c8852fd28ccc3efa0f1412eb7d70f172b before Patch
    boot.efi shasum e14462f01b437969908c24d0dc8cf9b12c6caf91 after Patch

    ==>bless –info /
    finderinfo[0]: 45 => Blessed System Folder is /System/Library/CoreServices
    finderinfo[1]: 821215 => Blessed System File is /System/Library/CoreServices/boot.efi
    finderinfo[2]: 0 => Open-folder linked list empty
    finderinfo[3]: 0 => No alternate OS blessed file/folder
    finderinfo[4]: 0 => Unused field unset
    finderinfo[5]: 45 => OS X blessed folder is /System/Library/CoreServices
    64-bit VSDB volume id: 0xE35B7BD1124EDD60

  2. Reply matsuoka 11月 27,2015 21:11

    Thanks!

Leave a Reply to matsuoka Cancel Reply