Preferred Executable Format(PEF)は、かつて
Classic Mac OSとmacOSで採用されていた
実行ファイルおよび
オブジェクトファイルの形式です。また、
BeOSの
PowerPC版システムにおいても使用されていました。
Classic Mac OSでは、
PowerPCプロセッサの導入に伴いPEFが採用され、その特徴として、一つのファイル内に
PowerPCコードと68Kコードの両方を格納し、同一のAPIを通じて呼び出すことができる、いわゆる「
ファットバイナリ」の構造を持っていました。この仕組みにより、
PowerPC搭載機と従来の68K Macintoshの両方で同じアプリケーションが動作することが可能になりました。ただし、68K MacintoshでPEFアプリケーションを使用するためには、「CFM-68K Runtime Enabler」という機能拡張が必要でした。
macOSでは、現在では
Mach-O形式が標準の
実行ファイル形式となっています。しかし、PEFも完全に過去のものになったわけではなく、Carbonアプリケーションでは引き続き利用することができました。PEF Carbonアプリケーションの利点は、Mac OS 9とmacOSの両方で実行可能であるという互換性にありました。一方、
Mach-O CarbonアプリケーションはmacOSでのみ動作します。このため、旧来の資産を活かしつつ、両方の環境でアプリケーションを動作させたい場合には、PEFが有効な選択肢でした。
しかしながら、
Intel Macの登場により、PEFの利用は限定的なものとなりました。
Intel Mac上でPEFアプリケーションを実行するためには、
Rosettaというエミュレーション環境を経由する必要があり、ネイティブなパフォーマンスを発揮することはできませんでした。
Intel Macでネイティブに動作する「
Universal Binary」を作成するためには、
Mach-O形式への移行が必須となりました。これは、Intelプロセッサに対応した新しいアーキテクチャに合わせた最適化が
Mach-Oでしか実現できないためです。
このように、PEFはMac OSの歴史の中で重要な役割を果たしましたが、技術の進化とともにその役目を終え、現在では
Mach-O形式が主流となっています。しかし、過去のソフトウェア資産を考慮すると、PEFはMacの歴史を語る上で欠かせない要素であると言えるでしょう。