Hi Xiao-Feng, Thanks for these questions. I believe that they'd be really helpful in understanding VM <-> GC assumptions on the Parrot end.
Will work on answering these, and perhaps a comparison with Harmony. Regards, Senaka On Mon, Apr 7, 2008 at 5:11 AM, Xiao-Feng Li <[EMAIL PROTECTED]> wrote: > Senaka, thanks for the page. I think the most important things are > related to the VM <-> GC protocol. Some questions that may help you: > 1. How Parrot layout/encode an object/array? fields, size, object > header info, etc. > 2. How Parrot layout/arrange the heap? free list? pages? > 3. What's the process of an object creation? When and how? > 4. How is a collection process triggered? > 5. How does Parrot GC trace live objects and collect them? > > Some of the questions above might be GC internals, so it's more > desirable if you can understand the Parrot VM's assumptions on GC. > I.e., does it assume the heap is laid out in certain way, does it > assume the objects are encoded in certain way, does it assume the > roots are enumerated in certain way, etc.? Depending on your progress, > more details might be needed later on. > > For this project, you might have to understand the Parrot current > status for the above questions. It helps you and us to identify the > key issues to resolve, and the main efforts to be focused on. For GC > porting over different VMs, it's not like porting an application over > different OSes, because of the implicit assumptions between VM and GC. > I would expect some redesign work required for GC porting, hence you > have to understand the Parrot design in certain depth. > > Thanks, > xiaofeng > > On Mon, Apr 7, 2008 at 4:26 AM, Alexei Fedotov <[EMAIL PROTECTED]> > wrote: > > Good job, Senaka. > > > > The general perception was that internal and external GC interfaces > > were mixed, which maked this document less usable for harmony-gc-5 > > project than it could be. For example, sweeping, marking and > > reclaiming are internal interfaces while allocation, stack enumeration > > (please take a look at vm_enumerate_root_set_all_threads) and gc > > invocation are external interfaces. We should pay more attention to > > external interfaces for harmony-gc-5 project. > > > > Thanks. > > > > > > > > > > > > > > > > On Sun, Apr 6, 2008 at 8:35 PM, Senaka Fernando <[EMAIL PROTECTED]> > wrote: > > > > > > Hi all, > > > > > > I have almost finished comparing the two interfaces of Harmony and > Parrot. > > > However, I'm not 100% sure on whether I got everything right, but I > believe > > > that most of it is. Therefore, it would be really great if you could > review > > > the wiki page and let me know whether it is correct and precise. > > > > > > Sections marked as TBD are not yet finalized. And, I have omitted > some > > > instances of where Harmony supports something and Parrot doesn't for > > > simplicity. > > > > > > The wiki page is found at [1] > > > > > > [1] > http://wiki.apache.org/harmony/gc_comparison/gc_gen_harmony_vs_parrot > > > > > > Regards, > > > Senaka > > > > > > > > > > > -- > > With best regards, > > Alexei > > > > > > -- > http://xiao-feng.blogspot.com >
