Concurrent Clean : GC

CleanのGCは2種類の方式を使うことができる。
User Manualには、copying GCとmark-scan GCソースコードを見るにおそらくmark-compact GC)の2種類があって、切り替えのためのオプションと思われるオプションがある。よく分からないのは、Diagnosticsのところに

Each time the garbage collector is invoked this is displayed when Show Garbage Collections is chosen. The run-time system uses both a copying as well as a mark-scan garbage collection algorithm. It automatically switches between these two garbage collection strategies to obtain an optimal time/space behaviour. This option gives you information about how well the heap size was chosen.

とあって、2種類のGCを自動的に使い分けるというような記述があって、この辺がどうなっているのかがよく分からない。

      • -

ソースコードは、RuntimeSystemフォルダの下にあるのだけれど、GC関連のところは全部アセンブラで書いてあって、軽く1万行を超えているので、全然読めていない。

      • -

とりあえず、GCについて分かりやすいサイトを見つけたので、大体分かっているところだけれど、参考まで。
http://smpl.seesaa.net/article/36160135.html