[前][次][番号順一覧][スレッド一覧][生データ]

yarv-dev:265

From: MAEDA Atusi <maeda-yarv atusi.org>
Date: Thu, 21 Oct 2004 15:09:39 +0900
Subject: [yarv-dev:265] Re: VM state version problem

SASADA Koichi <ko1 atdot.net> writes:

> > 素朴にはオーバーフローしないサイズをとります。アドレス空間が32ビットな
> > ら、28ビットとれば十分(すべてのワードから指されてもOK)。
> 
>  なるほど。大変わかりやすいです。
> 
> 
>  分散環境上での GC とか、それではすまなそうなのですが、そう
> いうのは 64bit とか取ればいい、とか言ってしまえばいいんでしょ
> うか。

単純にいえば、グローバルなアドレス空間のビット数と同じカウンタのビット
数を取れば十分ということになります

オブジェクトのアイデンティティが何ビットで表されるか
= 異なるオブジェクトがいくつ表現できるか
≒ アドレスが何ビットか

ということです。たとえば単純には、分散共有メモリとかでアドレス空間が64
ビットだとすると、2^64個(を最小オブジェクトサイズで割った数)のオブジェ
クトが表現できるわけで、リファレンスカウントも同じ数で十分です。

リモートオブジェクトを指すポインタとローカルなポインタの表現が違う場合
は、GCの手法も変えることになるでしょう。カウンタのビット数を変えるとか、
ローカルだけ別のGCするとか。

				前田敦司

--
ML: yarv-dev quickml.atdot.net
使い方: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧][生データ]

       262 2004-10-21 00:30 [ko1 atdot.net       ] VM state version problem                
       263 2004-10-21 13:58 ┗[maeda-yarv atusi.org]                                       
       264 2004-10-21 14:18  ┗[ko1 atdot.net       ]                                     
->     265 2004-10-21 15:09   ┗[maeda-yarv atusi.org]