ldedit コマンド

目的

XCOFF 実行可能ファイルのヘッダーを変更します。

構文

ldedit -b Option [ -V ] File

説明

ldedit コマンドを使用して、実行可能ファイルの XCOFF ヘッダーまたは補助ヘッダー内のさまざまなフィールドを変更できます。ldedit コマンドによって、アプリケーションを 'large page data' プログラムとしてマークを付けたり、そのマークを外したりすることが可能になります。ldedit コマンドによって、再リンクしないで MAXDATA および MAXSTACK の値を追加または変更することも可能になります。

-b フラグのフォーマットは、リンケージ・エディター ld コマンドが使用するフォーマットと類似しています。-b フラグは、コマンド・ラインで複数回使用することができます。

フラグが指定されていない場合は、ldedit コマンドは標準エラー出力を使用して使用方法メッセージを表示します。

フラグ

項目 説明
-b Option Option で指定されたように、実行可能ファイルを変更します。 Option で指定できる値は次のとおりです。
datapsize:psize
バイト数で psize のページ・サイズをデータとして要求します。 この値は、10 進数、16 進数、または 8 進数で指定できます。 数値の仕様は C プログラミング言語と同じです。 さらに、以下のように、ページ・サイズを数字のうしろに 1 文字のサフィックスとして指定できます。
  • k または K はキロまたは 0x400 バイト
  • m または M はメガまたは 0x100000 バイト
  • g または G はギガまたは 0x40000000 バイト
  • t または T はテラまたは 0x10000000000 バイト
  • p または P はペタまたは 0x4000000000000 バイト
  • x または X はエクサまたは 0x1000000000000000 バイト
例えば、-b datapsize:16k または -b datapsize:0x4000 のいずれもデータとして 0x4000 を要求して F_VARPG ビットを XCOFF ヘッダーに設定します。 これは補助ヘッダーに対応するメンバーを、対数の底が 2 である psize の指定された値に設定することで行われます。値が 0 と異なる場合、XCOFF ヘッダーの f_flags メンバーの F_VARPG ビットも設定されます。 それ以外の場合、このビットは消去されます。
forkpolicy:policy
File が 64 ビット・プログラムの場合、XCOFF 補助ヘッダーで _AOUT_FORK_POLICY フラグを設定します。policycor である場合、_AOUT_FORK_COW も設定され、コピー・オン・ライト fork ツリー・ポリシーの使用を要求します。policycow である場合、_AOUT_FORK_COW フラグがクリアされ、コピー・オン・リファレンス fork ツリー・ポリシーの使用を要求します。File が 32 ビット・プログラムの場合、変更は行われません。
noforkpolicy
File が 64 ビット・プログラムの場合、XCOFF 補助ヘッダーで _AOUT_FORK_POLICY フラグおよび _AOUT_FORK_COR フラグをリセットします。 fork ツリー・ポリシーが VMM_CNTRL 環境変数と一緒に指定されていない限り、デフォルトの fork ツリー・ポリシーが使用されます。File が 32 ビット・プログラムの場合、変更は行われません。
lpdata
'large page data' 実行可能ファイルとして、ファイルをマークします。
nolpdata
'large page data' 実行可能ファイルとして、ファイルをマーク解除します。
noshrsymtab
XCOFF 補助ヘッダー内で _AOUT_SHR_SYMTAB フラグをクリアします。 File が 32 ビット・オブジェクトの場合、変更は行われません。
maxdata:value
MAXDATA の値を設定します。value は、 0 で開始する場合は 8 進数、0x で開始する場合は 16 進数、 それ以外はすべて 10 進数です。
maxdata:value/dsa
MAXDATA 値および DSA ビットを設定します。value は、 0 で開始する場合は 8 進数、0x で開始する場合は 16 進数、 それ以外はすべて 10 進数です。
 
maxstack:value
MAXSTACK の値を設定します。value は、 0 で開始する場合は 8 進数、0x で開始する場合は 16 進数、 それ以外はすべて 10 進数です。
norwexec
ファイルの書き込み可能セクションおよびマップ可能セクションにマークを付け、 実行不可ファイルとしてスタックします。
rwexec
ファイルの書き込み可能セクションおよびマップ可能セクションにマークを付け、 実行可能ファイルとしてスタックします。
shrsymtab
XCOFF ヘッダー内で _AOUT_SHR_SYMTAB フラグをセットします。 File が 64 ビット・プログラムの場合、そのプログラムの実行時に共用記号テーブルが作成されます。 Flag が 64 ビット・オブジェクトであっても 64 ビット・プログラムでない場合、_AOUT_SHR_SYMTAB フラグをセットできますが、実行時に何ら影響を及ぼしません。 File が 32 ビット・オブジェクトの場合、変更は行われません。
 
stackpsize:psize
バイト数で psize のページ・サイズをプロセスのメイン・スレッド・スタックとして要求します。 この値は、10 進数、16 進数、または 8 進数で指定できます。 数値の仕様は C プログラミング言語と同じです。 さらに、以下のように、ページ・サイズを数字のうしろに 1 文字のサフィックスとして指定できます。
  • k または K はキロまたは 0x400 バイト
  • m または M はメガまたは 0x100000 バイト
  • g または G はギガまたは 0x40000000 バイト
  • t または T はテラまたは 0x10000000000 バイト
  • p または P はペタまたは 0x4000000000000 バイト
  • x または X はエクサまたは 0x1000000000000000 バイト
例えば、-b stackpsize:16k または -b stackpsize:0x4000 のいずれもプロセスのメイン・スレッド・スタックとして 0x4000 を要求して F_VARPG ビットを XCOFF ヘッダーに設定します。これは補助ヘッダーに対応するメンバーを、対数の底が 2 である psize の指定された値に設定することで行われます。値が 0 と異なる場合、XCOFF ヘッダーの f_flags メンバーの F_VARPG ビットも設定されます。 それ以外の場合、このビットは消去されます。
textpsize:psize
バイト数で psize のページ・サイズをテキストとして要求します。 この値は、10 進数、16 進数、または 8 進数で指定できます。 数値の仕様は C プログラミング言語と同じです。 さらに、以下のように、ページ・サイズを数字のうしろに 1 文字のサフィックスとして指定できます。
  • k または K はキロまたは 0x400 バイト
  • m または M はメガまたは 0x100000 バイト
  • g または G はギガまたは 0x40000000 バイト
  • t または T はテラまたは 0x10000000000 バイト
  • p または P はペタまたは 0x4000000000000 バイト
  • x または X はエクサまたは 0x1000000000000000 バイト
例えば、-b textpsize:16k または -b textpsize:0x4000 のいずれもテキストとして 0x4000 を要求して F_VARPG ビットを XCOFF ヘッダーに設定します。 これは補助ヘッダーに対応するメンバーを、対数の底が 2 である psize の指定された値に設定することで行われます。値が 0 と異なる場合、XCOFF ヘッダーの f_flags メンバーの F_VARPG ビットも設定されます。 それ以外の場合、このビットは消去されます。
-V ldedit コマンドのバージョンを、標準エラー出力に印刷します。

  1. システムが選択したテキスト、データ、およびスタックのページ・サイズを要求するには、下記のコマンドを入力します。
    ldedit -b textpsize:0 -b datapsize:0 -b stackpsize:0
    これは XCOFF ヘッダーの F_VARPG ビットをクリアします。