GNUの派生版
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/03/10 14:18 UTC 版)
「ar (UNIX)」の記事における「GNUの派生版」の解説
GNU arは"//"という名前のレコードを持ち、ファイルのデータセクション上に複数の拡張型ファイル名を格納している。このレコードは将来のヘッダ参照用に確保されている。ヘッダは、レコード"/"の格納によって拡張されたファイル名を参照する。このレコードの後に拡張ファイル名データセクション上に存在するファイル名の先頭十進オフセットが続く。この"//"ファイルのフォーマット自体は単なるロングファイルネームのリストである。各フィールドは1つ以上の文字列LFによってそれぞれ分離される。十進オフセットは文字数であり、"//"ファイル内にある行数や文字列数ではないことに注意しておきたい。 GNU arは'/'をファイル名の終端と認識する。すなわち、これを利用すれば拡張ファイル名を利用することなく、スペースを使用することができる。 GNU arは特殊なファイル名"/"を利用することにより、その直後のデータエントリにarライブラリのアクセス速度を向上するのに利用されるシンボルルックアップテーブルを含めることができる。このシンボルテーブルは隣接データとして同時に記録される以下3つの部分からなる。 32ビットビッグエンディアン整数で与えられるテーブル上のエントリー数 32ビットビッグエンディアン整数の集まり。各シンボル毎に、シンボルを含むファイル用のヘッダのアーカイブ内の位置を1つずつ記録する。 終端が0である文字列の集まり。それぞれシンボル名であり、2番目のデータにある位置のリストとして、同一の順番から成る。 特殊なファイル"/"は、特定の終端文字列を持たない。最後のシンボル名がひとたび読み込まれれば、そこで終了すると仮定される。 別のコマンドとしてranlibというものがある。これはar sを実行した場合と完全に等価である。すなわちシンボルルックアップテーブルを追加するだけのコマンドである。
※この「GNUの派生版」の解説は、「ar (UNIX)」の解説の一部です。
「GNUの派生版」を含む「ar (UNIX)」の記事については、「ar (UNIX)」の概要を参照ください。
- GNUの派生版のページへのリンク