Mac OS X 資料一覧
2008/3/3更新
対応バージョン: 10.5(Leopard)
モジュールのファイル構成
アプリケーションやフレームワークなど、バンドル構造を持つモジュールは以下のようなファイル/ディレクトリ構成になっている。
まず対象となるモジュール名のディレクトリの中にContentsディレクトリを持つ。
例)
% ls -l /Applications/Safari.app drwxrwxr-x 8 root admin 272 2 13 02:24 Contents/
その中に以下のファイル/ディレクトリを持つ。モジュールによっては必要ないファイルやディレクトリもある。
CodeResources
Resourcesディレクトリ配下のファイルの使用目的などが定義されている。
Frameworksディレクトリ
アプリケーションで使用するライブラリがディレクトリ毎にまとめられている。
Info.plist
拡張子などの情報やアプリケーションの属性などが定義されている。
MacOS/<アプリケーション>
アプリケーション本体のバイナリが格納されている。
PkgInfo
バンドルの種類が定義されている。
例)
APPLemal (Mail)
APPLsfri (Safari)
APPLiPho (iPhoto)
APPLhook (iTunes)
APPLkeyn (Keynote)
Resourcesディレクトリ
アイコンファイルや言語別リソースが格納されている。
version.plist
アプリケーションのバージョン情報やビルド番号などが定義されている。
モジュールの種類
バンドル構造を持つモジュールには以下のような種類がある。
アプリケーション
Cocoaアプリと一部のCarbonアプリ。拡張子は「.app」。
例) iTunes
/Applications/iTunes.app
バンドル
バンドル構造を持つプログラム。拡張子は「.bundle」。
例) メールのデフォルトメッセージ
/private/etc/mail/DefaultMessages.bundle
コンポーネント
他のアプリケーションのコンポーネント(部品)として利用されるプログラム。拡張子は「.component」。
例) QuickTimeのコーデック
/Library/QuickTime/AppleIntermediateCodec.component
フレームワーク
ヘッダファイルや共有ライブラリなど。拡張子は「.framework」。
カーネルエクステンション(機能拡張)
カーネルの機能を拡張するモジュール。拡張子は「.kext」。
エクストラメニュー
メニューバーの右側に表示されるアドオン。拡張子は「.menu」。
パッケージ
インストーラが使用するパッケージファイル。拡張子は「.pkg」。
プラグイン
アプリケーションでアドオン利用可能なモジュール。拡張子は「.plugin」。
例) QuickTimeプラグイン
/Library/Internet Plug-Ins/QuickTime Plugin.plugin
システム環境パネル
システム環境設定に表示されるパネル。拡張子は「.prefPane」。
例) ネットワーク設定
System/Library/PreferencePanes/Network.prefPane
スクリーンセーバ
スクリーンセーバ。拡張子は「.saver」「.slideSaver」。
例) iTunesアートワークスクリーンセーバ
System/Library/Screen Savers/iTunes Artwork.saver
サービス
システムに常駐するタイプのサービス。拡張子は「.service」。
例) Spotlightサービス
System/Library/Services/Spotlight.service
ダウンロードファイル
Safariでダウンロード中のファイル。拡張子は「.download」。
Spotlightプラグイン
Spotlightで検索可能にするファイル種別毎のプログラム。拡張子は「.mdimporter」。
例) PDFファイル用プラグイン
/System/Library/Spotlight/PDF.mdimporter