TOPシステム開発> 【新・言語進化論】アレで使われている言語って何?> 第1回:iPod touchはハンドヘルドMac!? (2/3)

【新・言語進化論】アレで使われている言語って何?

【新・言語進化論】アレで使われている言語って何?

第1回:iPod touchはハンドヘルドMac!?

著者:masuidrive

公開日:2007/11/2(金)

Mac OS XとiPod touchのディレクトリ構成はほぼ同じ

それでは実際にMac OS XとiPod touchを比較した結果について解説します。なお、ここではiPod touchの16GBモデルとMac OS Xバージョン10.4を比較しています。

まずはディレクトリ構成に着目してみました。

ホーム画面で表示されるアプリケーションは「/Appilications」に保存されており、拡張子として「.app」のついたディレクトリになっています。そのほかにも、Mac OS Xと共通した部分が多く、Mac OS Xを使っている方なら、非常によく見慣れたディレクトリ構成だとわかります。

Mac OS Xはアプリケーション開発時に「Cocoa」フレームワークを利用しています。iPod touch側にもこれと同様のディレクトリ構成になっており、「iPod touchもMac OS Xと同様にCocoaを使ってアプリケーションが構築できる可能性がある」と考えられます。

iPod touchにSSHでログインしてdfコマンドでディスク構成を表示したところ、30MBほどがシステム領域として「/(ルート)」にマウントされており、残りが「/private/var」に割り当てられていることがわかりました。なおスワップ領域は用意されていません。

アプリケーションなどは前者に、メディアプレーヤ機能からあつかうデータは後者に、それぞれインストールされています。iTunesなどで表示されるiPod touchのディスク容量は、後者の値が表示されていることになります。

Mac OS Xとの共通点とメモリ状況
Mac OS Xとの共通点とメモリ状況
(画像をクリックすると別ウィンドウに拡大図を表示します)

iPod touchのメモリとプロセス構成

続いて、いったん電源をオフにした後で再度電源をオンにし、ホーム画面を表示した状態でtopコマンドを実行しました。iPod touchは128MBのメモリを搭載していますが、ホーム画面を表示した状態で、すでに空きメモリは60MBを切っています。

前述のdfコマンドでわかったように、スワップ領域が設定されていないことから、メモリを使いすぎるとアプリケーション側で必要なメモリを取得できなくなる可能性があります。

さらにプロセス状況を確認するためにpsコマンドを実行してみたところ、「cron」や「syslogd」といったUNIXで見慣れたデーモンが多数表示されました。

iPod touch上で「ミュージック」を起動した状態で同様にpsコマンドを実行すると、「MobileMusicPlayer」というデーモンが表示されることを確認しました。この手法によって、ホーム画面上とプロセスのそれぞれのアプリケーション名の対応と、それぞれの動作状況をチェックできるようになります。

なお、これらすべてのプロセスは「root」で起動していることもわかりました。 次のページ




masuidrive
著者プロフィール
masuidrive
最近は風呂の人と呼ばれるが、別にいつも風呂で仕事なわけじゃない。喫茶店が好きでMacBook proを持って、あちこちのお店で仕事してる。でも良い喫茶店が見つからず、マクドが多いのが残念。
http://masuidrive.jp/


INDEX
第1回:iPod touchはハンドヘルドMac!?
  知ってるようで知らない「アレ」の中
Mac OS XとiPod touchのディレクトリ構成はほぼ同じ
  iPod touchの開発はObjective-C+Cocoaで