Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiguel de Icaza <miguel@gnome.org>2001-11-16 09:51:40 +0300
committerMiguel de Icaza <miguel@gnome.org>2001-11-16 09:51:40 +0300
commit78c33903018fb6c3693c4f94c8b481e2a0f3b808 (patch)
tree0796facf60bb0d59c328917a994897d7e68b84c6 /web/runtime
parent33be90e6588d9765091785c8fbeefa6725b47233 (diff)
Massive update
svn path=/trunk/mono/; revision=1368
Diffstat (limited to 'web/runtime')
-rw-r--r--web/runtime51
1 files changed, 26 insertions, 25 deletions
diff --git a/web/runtime b/web/runtime
index 7217abfa83f..bf7c55501cd 100644
--- a/web/runtime
+++ b/web/runtime
@@ -13,28 +13,29 @@
The code will load an executable and map the references to
external assemblies to our own version of the assemblies on
- GNU/Linux.
+ Linux.
Our roadmap looks like this, this has been updated as of
<b>Jul 15, 2001</b>:
<ul>
- * Milestone 1: <b> Done</b> Fully read and parse all CIL byte-codes
+ * Milestone 1: <b>Done</b> Fully read and parse all CIL byte-codes
and metadata tokens (ie, a disassembler).
- * Milestone 2: Complete an interpreter for CIL byte
+ * Milestone 2: <b>Done</b> Complete an interpreter for CIL byte
codes. This interpreter can be used temporarly to
run CIL byte code on a system where no JIT is
available.
- * Milestone 3: Define an <i>lburg</i>-like instruction
- selector for the JITer for Intel. Although slower
- at JITing than a streaming JITer, it generates
- better code. The same grammar can later be used for
- the stream jitter.
+ * Milestone 3: <b>Done</b>Define an <i>lburg</i>-like
+ instruction selector for the JITer for Intel.
+ Although slower at JITing than a streaming JITer, it
+ generates better code. The same grammar can later
+ be used for the stream jitter.
- * Milestone 4: Implement JITer.
+ * Milestone 4: Implement JITer. This is where our
+ current efforts are focused on, the JITer is 60% ready.
* Milestone 5: Port of the JITer to non IA32 systems.
</ul>
@@ -47,34 +48,27 @@
will need to install the CygWin32 development tools to get a
Unix-like compilation environment.
-** JIT Engine (<b>updated, Jul 14th, 2001</b>)
+** JIT Engine (<b>updated, Nov 16th, 2001</b>)
- We will be using a code-generator generator approach for our
- JITer. Given the properties of CIL byte codes, we can take
- full advantage of a real instruction selector for our code
- generator.
+ The JIT engine uses a code-generator generator approach for
+ compilation. Given the properties of CIL byte codes, we can
+ take full advantage of a real instruction selector for our
+ code generator.
There are a couple of books that deal with this technique: "A
Retargetable C Compiler" and "Advanced Compiler Design and
Implementation" are good references. You can also get a
technical description of <a
- href="http://research.microsoft.com/copyright/accept.asp?path=http://www.research.microsoft.com/~drh/pubs/iburg.pdf&pub=ACM">lbrug</a>
+ href="http://research.microsoft.com/copyright/accept.asp?path=http://www.research.microsoft.com/~drh/pubs/iburg.pdf&pub=ACM">lbrug</a>.
- Previously we had looked at a number of JIT engines and tools,
- but they would not take full advantage of the CIL properties:
+ A few papers that describe the instruction selector:
<ul>
- * <a
- href="http://www.intel.com/research/mrl/orp/">ORP</a>
+ * <a href="http://research.microsoft.com/copyright/accept.asp?path=http://www.research.microsoft.com/~drh/pubs/interface.pdf&pub=wiley">A code generation interface for ANSI C</a>
- * <a
- href="http://www.gnu.org/software/lightning/">GNU
- Lightning</a>
- * <a href="http://www.eecs.harvard.edu/~nr/toolkit/">NJ Machine
- Toolkit</a>.).
+ * <a href="http://research.microsoft.com/copyright/accept.asp?path=http://www.research.microsoft.com/~drh/pubs/iburg.pdf&pub=ACM">Engineering efficient code generators using tree matching and dynamic programming.</a>
- * VCODE.
</ul>
** Garbage Collection
@@ -114,6 +108,13 @@
<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnmag00/html/GCI2.asp">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnmag00/html/GCI2.asp</a>
</ul>
+** IO and threading
+
+ The ECMA runtime and the .NET runtime assume an IO model and a
+ threading model that is very similar to the Win32 API. Dick
+ Porter has been working on the Mono abstraction layer that allows
+ our runtime to execute code that depend on this behaviour.
+
** Useful links
Paolo Molaro found a few interesting links: