RSS

初出:2005年1月15日 19:05

Today's BGM:
Crumbs From Your Table from the album "How To Dismantle An Atomic Bomb" by U2

En050112P02 B-1 Mac miniが出たことで、「んじゃま、とりあえずMacでも買ってみるかー」というカジュアル購入層が一気に増えそうだ。Mac miniの良いところは、お店で5万ちょっと払えば、その場でお持ち帰り。しかも片手でヒョイヒョイっと持ち帰れてしまう。コンピュータ本体を買ったと知れたらタダじゃ済まない家庭であっても、Mac miniであれば、奥さんに「まーたパソコンの周辺機器買ってきたの?」と呆れられるくらいで終わるかもしれない。これはコンピュータマーケットを形成してきた歴史を紐解いて考察した際に、大変意義深いことだと思う(ことにしよう)。

さて、Mac mini。価格もプロセッサスピードも申し分ないが、心もとないのは搭載メモリである。Mac miniの本体を裏返すと、本体の淵に無数の吸引口があるのだが、これが全部ツメになっていて、それを外さないと本体が開かない設計になっている。それなので特別な工具が必要になったり、無理矢理開けようとするとアルミの部分を傷つけたり、開けたことがバレるので保証対象外になったり…と散々な結果になりそう。そんなわけで、標準の256MBのまま買ってなんとか使い倒すか、早々にApple Storeでメモリ増設するか、ということになる(購入後にサービスプロバイダで増設というオプションもあるが、今のところは特に詳細なアナウンスなし)。

長い前振りのあとでようやく今日の本題。「果たしてMacは256MBで使い切ることができるのだろうか?」自宅にたまたまあったPowerBook G4のメモリが256MBだったので、この状態でのOSおよびアプリケーションのメモリ使用状態を調べてみた。

256Ram-01

まず、これが初期状態。OSをインストールした直後なので、常駐プロセスなどは追加されていない。注目すべきは「空き」の容量と、「ページイン/アウト」の特にアウトのほう。「空き」はその名のとおりメモリの空き容量。ページアウトはメインメモリに納めるべきものをHDD(仮想記憶)にどけてある量のこと。初期状態では105MBも空きがあり、ページアウトは0。

256Ram-02

手始めにWebブラウザのSafariを起動し、Yahoo!を表示したところ、実メモリとして16MB消費し、空き容量のそれに応じて減少。しかしまだ余裕があるためページングは発生していない。その後、2枚、3枚とSafariのウインドウを増やしていくと、Yahoo!であれば、その都度6MB程度の容量を使って表示していた。

256Ram-03

続いてiTunesの場合。実メモリは25.6MBを消費するものの、音楽の再生であればこの程度で済む。CDからのリッピングの場合は、33MB。空きはまだ16MBほど残っていて、すべてはメインメモリ内で処理できている。

ここまでは割と優秀で、256MBでも使えるのか!? と驚きつつ、iPhotoを起動して3,000枚ほどある写真を表示してみると……

256Ram-04

なんと使用量はいっきに165MB!! 当然メインメモリは食い潰し、膨大なページアウトが発生。iPhotoでもうこれか! と驚きつつ、実際に写真を大きくしたり小さくしたり、いろんな写真をスクロールして表示させたりしても、体感的にはそれほど重くなっていない。なるほど、これがMac OS Xの優秀なところか、と納得。

そうはいっても、RAMより断然遅いHDDに逃がしているってことは、ページングが大量に発生すると処理は当然遅くなる。HDDがガリガリ鳴りまくるので、精神衛生上もよくない。画像や映像など大きなデータを扱うアプリケーションは、その性質上、大量のメモリを確保する傾向にあるので、できれば大きなメモリ容量を確保しておいたほうがよいだろう。ちなみに、Photoshop CSは(画像を一切開かずに)114MB、Excelは43MB、IEは起動直後で23MBだった。

結論:メール、Web、iTunesなどを軽く使うレベルであれば、256MBでも遜色ない。メモリが足りないと動かないということもないし、低下した速度に対する体感も人それぞれ。操作していて動作が突っかかるのが許せない、せっかちな人は512MBに増設を。また、複数のアプリを一緒に立ち上げて何かしたり、制作系の作業をする場合も512MBは必要になるだろう。

じゃあ、1GBは? という人には、この画像を。うちのメインマシンは1.2GBだが、こんな状態になる。

256Ram-05

Googleさんは、この記事をこう解釈しました

記事の詳細ページ

記事の全文を表示します。関連するコメントやトラックバックなどもこちらからどうぞ。

本日のBGM

★印があったら「これは聴いてみてほしい!」という推薦曲です。曲名をクリックするとiTunes Storeへジャンプします。

'; // loop through the songs in the array and get 4 fields that I want to see foreach ($songs as $song) { $output .= '
  • '; if ($song["Rating"] == 100){ $output .= ''.$song["Rating"].''; } $output .= '
    '; $output .= '
    '.$song["Name"].''; $output .= '
    '.$song["Artist"].''; $output .= ''.$song["Album"].''; if ($song["Year"]){ $output .= '('.$song["Year"].')'; } $output .= '
  • '; } // end the table $output .= ''; // show my new table print ($output); } ?>

    Now & Then

    Twitter Updates

      OAuthRequest('https://api.twitter.com/1.1/statuses/user_timeline.json','GET',array('screen_name' =>$search_word,'count' =>'3')); //Jsonデータをオブジェクトに変更 $oObj = json_decode($vRequest); //var_dump(json_decode($vRequest)); //オブジェクトを展開 for($i_tweet = 0; $i_tweet < sizeof($oObj); $i_tweet++){ $screen_name = $oObj[$i_tweet] -> {'screen_name'};//ユーザーID $profile_image_url = $oObj[$i_tweet] -> {'profile_image_url'};//プロフィール画像のURL $text = $oObj[$i_tweet] -> {'text'};//ツイート $date = $oObj[$i_tweet] -> {'created_at'};//時間 $tweet_time=strtotime($date);//Unixタイムスタンプ形式に変換 $now_time=time();//現在の時刻をUnixタイムスタンプで取得 $relative_time=$now_time-$tweet_time;//つぶやかれたのが何秒前か if($relative_time<60){//ss $displayTime = $relative_time.'秒前'; }elseif($relative_time>=60 && $relative_time<(60*60)){//mm $displayTime = floor($relative_time/60).'分前'; }elseif($relative_time>=(60*60) && $relative_time<(60*60*24)){//hh $displayTime = floor($relative_time/(60*60)).'時間前'; }elseif($relative_time>=(60*60*24)){//日付 $displayTime = date('n月j日',$tweet_time); } //表示 echo '
    • ' . $text .'' . $displayTime . '
    • '; } ?>
    follow me on Twitter