Next: 基本的なGCのアルゴリズム
Up: 逐次処理系
Previous: Generator object
GC
KL1は自動メモリ管理を前提とした言語であり、KLICはGCを備える。
KLICのGCのアルゴリズムは大まかには以下のような特徴がある
(殆どはこれまでに既に述べてきたことである)。
- ``stop and copy''GC。よって、ヒープは2面を持つ。
- コピーの順は、深さ優先であり、新領域のscanは行わない。
これは、ジェネリックオブジェクトのように、GCが理解できないようなデータ
(端的にはタグがないようなデータ)について、不用意にGCがアクセスし
誤った処理をしないようにするための配慮である。
- ヒープのサイズは可変であり、GC後にfreeな領域がすくなくなると
ヒープのサイズを拡張する。
GCの処理は、runtime/gc.cに記述されている。
Sekita Daigo
1998-05-18