harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Steve Blackburn <Steve.Blackb...@anu.edu.au>
Subject [modules] big picture
Date Sat, 25 Jun 2005 08:48:03 GMT
The discussion on JIT/classloader interfaces is encouraging.

I think it would be good to think a bit more about the higher level
design and get some more consensus on that.  So here are a few
thoughts.  These are very abstract and I am deliberatly not addressing
issue of language or API design.  I just want to provoke thought on
what the key concerns are, and how they inter-relate.

The following are pretty clearly first class modules:

  core  VM core
    mm  Memory management (GC etc)
  exec  Execution engine (JIT, interpreter, adaptive policies)
   lib  Class libraries

My guess is that the core is something that in the end Harmony will
write from scratch (perhaps based on something existing), whereas the
other three are distinct modules which in the first instance may be
existing implementations: Classpath, MMTk, StarJIT, Jikes RVM's
compilation subsystem etc.

There are other modules which may either be a) first class modules, or
b) sub-modules, but either way probably should be pluggable
(sub)modules. Here are a few that come to mind...

   exec.jit         Compiler instances
   exec.iterpreter  Interpreter instances

   core.scheduler   Threading and scheduling
   core.object      Object model
   core.classloader Class loader
   core.os          Operating system services



View raw message