MacBook Pro 15(Late 2008)は公式では最大メモリ容量は4Gまでサポートなのだが、ファームウェアを最新のアップデート(MacBook Pro EFI ファームウェア・アップデート 1.8)を適用すれば、最大 8G まで普通に認識し速度低下せずに使えるそうである。
2009年末位には結構高価だったのだが、最近値下がりして手ごろになってきたので、交換した。 次いで HDD も交換して SSD (TOSHIBA THNS256GG8BBAA)に入れ替えた。
まぁ、SSD に入れ替えたお陰でOSの起動もアプリの起動も機敏で、いい感じ。
空きメモリが増えてたので、ちょっと1Gくらいブラウザのキャッシュに割り当ててみた。
MacOSX では「hdid
」コマンドを使えば簡単にRAMディスクを作成できる。
ramlabel="RamDisk"
ramdev=$(hdid -nomount ram://10240)
diskutil eraseDisk HFS+ ${ramlabel} ${ramdev}
で、コイツを rc.local
に仕込んでやれば、起動時にRAMディスクを作成できる。
なぜか上手く行かない。起動後に手打ちで入力すれば、出来るのだが、、、
はて、なんでだろうかぁ?
まぁ、ググっても明快な正解がわからない。。。
当てずっぽに答えれば、『「hdiejectd
」デーモンが起動して、正常に定常状態に無いときには「hdid
」は機能しない』っぽいのかなぁ。。。多分 SSD で起動が拙速になったからだと思うが、、、
上記の憶測のもとに rc.local を次のようにすれば、起動直後にユーザ用にRAMディスクに載ってる作業領域が作れるようになる。
#!/bin/sh
RAMSIZE=1024 # MBtyes
MP=/tmp/ramdisk
MYNAME=username
# Start hdiXXX
launchctl start com.apple.hdiejectd
sleep 5
# Make RamDIsk
RAMNUMSECTORS=$((${RAMSIZE}*2048))
ramdev=$(hdid -verbose -kernel -nomount ram://${RAMNUMSECTORS})
newfs_hfs -v ramdisk $ramdev
[ -d ${MP} ] || mkdir ${MP}
mount -t hfs -o nobrowse $ramdev ${MP}
# Finder.appで /Volume 以下で参照したいときは nobrowse を外す
# for ${MYNAME}
mkdir ${MP}/${MYNAME}
chown -R ${MYNAME}:${MYNAME} ${MP}/${MYNAME}
あとは、ログイン項目に、次のような キャッシュを調節するシェルスクリプトを埋め込んだ Automator アプリを登録すれば良い。
まぁ、サクサクになったのかなぁ?
追記 (2010/11/06)
コードをちょっとだけ整理して、Xcode と TMPDIR もRAMDISKにのせてみた。
追記 (2010/12/23)
TMPDIR もRAMDISKに載せると、どうも ramdisk のアクセス出来ない現象が時々発生し、キャッシュを載せている Chromeなどのブラウザが固まって、まともに使えない結果になる。。。どうも TMPDIR は ramdisk に載せて運用するのは難しそうである。仕方がないので、設定を削除してみた。。。ここ1ヶ月は、安定してるっぽいので正解かな。。。
0 件のコメント:
コメントを投稿