2009年11月23日月曜日

【Linkers&Loaders】4 記憶領域の割り当て


** 4 記憶領域の割り当て
*** セクション、セグメント、ページ、セグメントシステムのセグメント
- ちょっと用語の整理、というか、ここまでの知識の確認を。
- まず、セクションというのは、オブジェクトファイ
ルの内部構造を指すときに使う。これは「記憶領域
の割り当て」の前の整理と考えてよい。

- 次に、セグメントというのは、メモリ上の内部構造
を指す。セグメント毎に読み書きの設定などを行う。

- セクションとセグメントのマッピングをするのが
「記憶領域の割り当て」の作業のひとつ。前回の例
のように、ひとつのセグメントに複数のセクション
を含むのが基本。

- ページはページングシステムがメモリを取り扱う単
位。なのでページングシステムに対応したシステム
では、セグメントのサイズや配置がページングシス
テムに適合するように調整する。なお、バイト整列
条件への対応はページングシステムか否かに関わ
らずセグメントのアドレス確定の際に実施する。

- 以上のセグメントは、セグメントシステムのセグメ
ントと直接は関係がない。セグメントシステムを利
用する場合は、以上の考え方にセグメトシステム対
応のための調整を合わせこんで実施する。

- セグメントシステムは悪名高いとのことだが、リン
カにとってはそんなに厄介なものではないようだ。
アドレス指定をベースアドレスとオフセットに常に
分けられるので、それを活用すると再配置が簡単に
なるところがあるらしい。

- どうやら記憶領域の割り当ての基本的な考え方は、
この用語の定義レベルの内容でよいようだ。アーキ
テクチャの事情などに起因して特殊ケースがいくつ
か存在する。この章はその説明が主体のようだ。


こつこつ。

0 件のコメント: