Solaris 64 ビット 開発ガイド

AMD64 ABI の特徴

64 ビットアプリケーションは、ELF64 実行可能およびリンク形式 (Executable and Linking Format) によって作成されます。この形式によって、大規模なアプリケーションおよびアドレス空間を完全に記述することができます。

次に AMD ABI の特徴を示します。

amd64 psABI 草案文書『System V Application Binary Interface, AMD64 Architecture Processor Supplement』(草案バージョン 0.92、2004 年 9 月 9 日) を参照してください。

amd64 アプリケーションのアドレス空間の配置

64 ビットアプリケーションのアドレス空間の配置は、32 ビットアプリケーションのアドレス空間の配置に密接に関係しています。ただし、開始アドレスとアドレス指定の制限値は大きく変更されています。SPARC V9 と同様に、amd64 のスタックはアドレス空間の上端から下方に広がり、ヒープは下端から上方にデータセグメントを拡張します。

以下の図は、64 ビットアプリケーションに与えられたデフォルトのアドレス空間を示します。「予約済み」となっているアドレス空間の領域は、アプリケーションからマップすることはできません。これらの制約は、将来のシステムで緩和される可能性があります。

代表的な amd 64 ビットアプリケーションのアドレス空間の配置を示しています。

上図の実際のアドレスは、ある特定のマシンの特定の実装を示しており、説明のためにだけ掲載してあります。