[vmkit-commits] [vmkit] r181314 - updated website

Peter Senna Tschudin peter.senna at gmail.com
Tue May 7 07:09:21 PDT 2013


Author: peter.senna
Date: Tue May  7 09:08:58 2013
New Revision: 181314

URL: http://llvm.org/viewvc/llvm-project?rev=181314&view=rev
Log:
updated website

Added:
    vmkit/trunk/www/lip6.png
    vmkit/trunk/www/tuto/
    vmkit/trunk/www/tuto/VMKit_pres_eng.pdf
    vmkit/trunk/www/tuto/VMKit_pres_fr.pdf
    vmkit/trunk/www/tuto/VMKit_tutorial.pdf
    vmkit/trunk/www/tuto/VMKit_tutorial.tar.gz
    vmkit/trunk/www/tuto/VMKit_tutorial_eng.pdf
    vmkit/trunk/www/tuto/toy-vm-base.tar.gz
    vmkit/trunk/www/tutorial.html
Modified:
    vmkit/trunk/www/get_started.html
    vmkit/trunk/www/index.html
    vmkit/trunk/www/menu.html.incl

Modified: vmkit/trunk/www/get_started.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/get_started.html?rev=181314&r1=181313&r2=181314&view=diff
==============================================================================
--- vmkit/trunk/www/get_started.html (original)
+++ vmkit/trunk/www/get_started.html Tue May  7 09:08:58 2013
@@ -21,52 +21,48 @@ options.  This should get you up and run
 If you like what you see, please consider <a href="get_involved.html">getting
 involved</a> with the vmkit community.</p>
 
-
-<h2>A word of warning</h2>
-
-<p>While this work aims to provide a fully functional JVM, it
-is <em>still early work</em> and is under heavy development. 
-<p>Some of the common missing pieces in vmkit/llvm are:</p>
-
-<ol>
-  <li> Mixed interpretation/compilation.</li>
-  <li> Adaptive optimization.</li>
-</ol>
-
 <h2 id="build">Building vmkit / working with the code</h2>
 
 <p>If you would like to check out and build the project, the current scheme
 is:</p>
 
+<p><b>Prerequisites</b><br/>
+You will have to install a C++ compiler and Java 1.5 or more in order to
+compile vmkit2</p>
+
 <ol>
-  <li>Checkout <a href="http://www.llvm.org/docs/GettingStarted.html#checkout">
-    LLVM</a> and 
-    <a href="http://clang.llvm.org/get_started.html">Clang</a> from SVN head.
+  <li>Download <a href="http://llvm.org/releases/3.2/llvm-3.2.src.tar.gz">
+    LLVM 3.2</a> and 
+    <a href="http://llvm.org/releases/3.2/clang-3.2.src.tar.gz">Clang 3.2</a>
+    source code.
   </li>
 
   <ul>
-    <li><tt>svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm</tt></li>
-    <li><tt>cd llvm/tools</li></tt>
-    <li><tt>svn co http://llvm.org/svn/llvm-project/cfe/trunk clang</tt></li>
-    <li><tt>cd ..</tt></li>
-    <li><tt>./configure; make ENABLE_OPTIMIZED=1</tt></li>
-  </ul>
-
-  
-  <li><a href="ftp://ftp.gnu.org/gnu/classpath/classpath-0.97.2.tar.gz">Download
-   GNU Classpath 0.97.2</a>:</li>
-
-  <ul>
-    <li><tt>tar zxvf classpath-0.97.2.tar.gz</tt></li>
-    <li><tt>cd classpath-0.97.2</tt></li>
-    <li><tt>./configure --disable-plugin --disable-examples --disable-Werror; make</tt></li>
+    <li><tt>tar zxvf llvm-3.2.src.tar.gz</tt></li>
+    <li><tt>cd llvm-3.2.src/tools</li></tt>
+    <li><tt>tar zxvf ../../clang-3.2.src.tar.gz</tt></li>
+    <li><tt>mv clang-3.2.src clang</li></tt>
+    <li><tt>cd ..</li></tt>
+    <li><tt>./configure --enable-optimized; make</tt></li>
+  </ul>
+
+  <p><b>Skip the Classpath steps if you plan to use OpenJDK instead.</b><br/>
+  <li><a href="ftp://ftp.gnu.org/gnu/classpath/classpath-0.99.tar.gz">Download
+   GNU Classpath 0.99</a>:</li>
+
+  <ul>
+    <li><tt>tar zxvf classpath-0.99.tar.gz</tt></li>
+    <li><tt>cd classpath-0.99</tt></li>
+    <li><tt>./configure --disable-plugin --disable-examples --disable-Werror;
+    make</tt></li>
     <li><tt>cd lib</li></tt>
     <li><tt>If you are running on Linux:</li></tt>
     <ul>
       <li><tt>ln -s ../native/jni/gtk-peer/.libs/libgtkpeer.so;</li></tt>
       <li><tt>ln -s ../native/jni/gconf-peer/.libs/libgconfpeer.so;</li></tt>
       <li><tt>ln -s ../native/jni/java-io/.libs/libjavaio.so;</li></tt>
-      <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalangreflect.so;</li></tt>
+      <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalangreflect.so;</li>
+      </tt>
       <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalang.so;</li></tt>
       <li><tt>ln -s ../native/jni/java-net/.libs/libjavanet.so;</li></tt>
       <li><tt>ln -s ../native/jni/java-nio/.libs/libjavanio.so;</li></tt>
@@ -77,7 +73,8 @@ is:</p>
       <li><tt>ln -s ../native/jni/gtk-peer/.libs/libgtkpeer.dylib;</li></tt>
       <li><tt>ln -s ../native/jni/gconf-peer/.libs/libgconfpeer.dylib;</li></tt>
       <li><tt>ln -s ../native/jni/java-io/.libs/libjavaio.dylib;</li></tt>
-      <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalangreflect.dylib;</li></tt>
+      <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalangreflect.dylib;
+      </li></tt>
       <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalang.dylib;</li></tt>
       <li><tt>ln -s ../native/jni/java-net/.libs/libjavanet.dylib;</li></tt>
       <li><tt>ln -s ../native/jni/java-nio/.libs/libjavanio.dylib;</li></tt>
@@ -87,41 +84,59 @@ is:</p>
   
   <li>Checkout vmkit:</li>
   <ul>
-     <li><tt>svn co http://llvm.org/svn/llvm-project/vmkit/trunk vmkit</tt></li>
-
+    <li><tt>svn co http://llvm.org/svn/llvm-project/vmkit/trunk vmkit</tt></li>
   </ul>
+
   <li>Configure vmkit:</li>
   <ul>
-  <li><tt>./configure </tt></li>
-  <dl>
-    <dt><tt>--with-llvmsrc=<directory></tt></dt>
-    <dd>Tell vmkit where the LLVM source tree is located.</dd>
-    <dt><br/><tt>--with-llvmobj=<directory></tt></dt>
-    <dd>Tell vmkit where the LLVM object tree is located.</dd>
-    <dt><br/><tt>--with-gnu-classpath-glibj=<file or directory></tt></dt>
-    <dd>Tell vmkit where GNU Classpath glibj.zip is located.</dd>
-    <dt><br/><tt>--with-gnu-classpath-libs=<directory></tt></dt>
-    <dd>Tell vmkit where GNU Classpath libs are located.</dd>
-    <dt><br/><tt>--with-mmtk-plan=</tt> </dt>
+    <li><tt>./configure </tt></li>
+    <dl>
+      <dt><tt>--with-llvm-config-path=<path/to/llvm-config></tt></dt>
+      <dd>Tell vmkit where the llvm-config binary is located.</dd>
+      <dt><br/><tt>--with-mmtk-plan=</tt> </dt>
       <dd>
+        <ul>
+          <li><tt>org.mmtk.plan.marksweep.MS (default)</tt></li>
+          <li><tt>org.mmtk.plan.copyms.CopyMS</tt></li>
+          <li><tt>org.mmtk.plan.semispace.SS</tt></li>
+          <li><tt>org.mmtk.plan.immix.Immix</tt></li>
+          <li><tt>org.mmtk.plan.generational.marksweep.GenMS</tt></li>
+          <li><tt>org.mmtk.plan.generational.copying.GenCopy</tt></li>
+          <li><tt>org.mmtk.plan.generational.immix.GenImmix</tt></li>
+        </ul>
+      </dd>
       <ul>
-      <li><tt>org.mmtk.plan.marksweep.MS (default)</tt></li>
-      <li><tt>org.mmtk.plan.copyms.CopyMS</tt></li>
-      <li><tt>org.mmtk.plan.semispace.SS</tt></li>
-      <li><tt>org.mmtk.plan.immix.Immix</tt></li>
-      <li><tt>org.mmtk.plan.generational.marksweep.GenMS</tt></li>
-      <li><tt>org.mmtk.plan.generational.copying.GenCopy</tt></li>
-      <li><tt>org.mmtk.plan.generational.immix.GenImmix</tt></li>
+        <li>
+          <p>you can use GNU Classpath by configuring the following :</p>
+          <dt>
+            <tt>--with-gnu-classpath-glibj=<path/to/file/glibj.zip></tt>
+          </dt>
+          <dd>Tell vmkit where GNU Classpath glibj.zip is located.</dd>
+          <br/>
+          <dt>
+            <tt>--with-gnu-classpath-libs=<path/to/libs/directory></tt>
+          </dt>
+          <dd>Tell vmkit where GNU Classpath libs are located.</dd>
+        </li>
+        <li>
+          <p>or OpenJDK by configuring :</p>
+          <dt>
+            <tt>--with-classpath-impl=openjdk</tt>
+          </dt>
+          <dd>Tell vmkit to use OpenJDK classpath implementation.</dd>
+          <br/>
+          <dt>
+            <tt>--with-openjdk-path=<directory></tt>
+          </dt>
+          <dd>Tell vmkit where OpenJDK is located.</dd>
+        </li>
       </ul>
-      </dd>
-  </dl>
-
+    </dl>
   </ul>
 
   <li>Build vmkit:</li>
   <ul>
-    <li><tt>cd vmkit</tt></li>
-    <li><tt>make ENABLE_OPTIMIZED=1</tt> (this will give you a release build)</li>
+    <li><tt>make</tt> (this will give you a release build)</li>
   </ul>
 
   <li>Try it out: (assuming vmkit/Release+Asserts/bin is in your path)</li>
@@ -130,7 +145,6 @@ is:</p>
     <li><tt>j3 HelloWorld</tt></li>
   </ul>
 </ol>
-
 </div>
 </body>
 </html>

Modified: vmkit/trunk/www/index.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/index.html?rev=181314&r1=181313&r2=181314&view=diff
==============================================================================
--- vmkit/trunk/www/index.html (original)
+++ vmkit/trunk/www/index.html Tue May  7 09:08:58 2013
@@ -14,36 +14,52 @@
   <!--*********************************************************************-->
   <h1>VMKit: a substrate for virtual machines</h1>
   <!--*********************************************************************-->
-  
-  <p>The VMKit project is a framework for building virtual machines. It uses
-  <a href="http://llvm.org">LLVM</a> for compiling and optimizing high-level
-  languages to machine code, and <a href="http://jikesrvm.org/MMTk">MMTk</a>
-  to manage memory. J3 is an implementation of a JVM with VMKit.
-  You can <a href="get_started.html">get and build</a> the source of J3
-  today.</p>
-  
+
+  <p>Current MREs are monolithic. Extending them to propose new features or
+  reusing them to execute new languages is difficult. VMKit is a library
+  that eases the development of new MREs and the process of experimenting
+  with new mechanisms inside MREs. VMKit provides the basic components of
+  MREs: a JIT compiler, a GC, and a thread manager.</p>
+
+  <p>VMKit relies on <a href="http://llvm.org">LLVM</a> for compilation and 
+  <a href="http://jikesrvm.org/MMTk">MMTk</a> to manage memory. 
+  Currently, a full Java virtual machine called J3 is distributed with VMKit.
+
   <!--=====================================================================-->
   <h2 id="goals">Features</h2>
   <!--=====================================================================-->
-  
-  <p>VMKit provides the following features:</p>
-  
-  <p><b>End-User Features</a></b>:</p>
-  
+  <p>For the end user, VMKit provides:
   <ul>
-  <li>Precise garbage collection.</li>
-  <li>Just-in-Time and Ahead-of-Time compilation.</li>
-  <li>Portable on many architectures (x86, x64, ppc32, ppc64, arm).</li>
-  </ul>
+  <li>Precise garbage collection.
+  <li>Just-in-Time and Ahead-of-Time compilation.
+  <li>Portable on many architectures (x86, x64, ppc32, ppc64, arm).
+  </ul></p>
 
-  <p><b>Developer Features</a></b>:</p>
+  <p>For the MRE developer, VMKit provides:
+  <ul>
+  <li>Relatively small code base (~ 20k loc per VM)
+  <li>Infrastructure for virtual machine research and development
+  </ul></p>
+
+  <!--=====================================================================-->
+  <h2 id="goals">Current Status</h2>
+  <!--=====================================================================-->
+  <p>VMKit currently has a decent implementation of a JVM called J3. It
+  executes large projects (e.g. OSGi Felix, Tomcat, Eclipse) and the DaCapo
+  benchmarks. A R virtual machine is currently under heavy development.</p>
+
+  <p>J3 has been tested on Linux/x64, Linux/x86, Linux/ppc32, MacOSX/x64,
+  MacOSX/x86, MacOSX/ppc32. The JVM may work on ppc64. Support for Windows has
+  not been investigated.</p>
 
+  <p>While this work aims to provide a fully functional JVM, it is still early
+  work and is under heavy development. Some of the common missing pieces in
+  vmkit/llvm are:
   <ul>
-    <li>Relatively small code base (~ 20k loc per VM)</li>
-    <li>Infrastructure for running multiple VM/applications in a single
-        process</li>
-    <li>Infrastructure for virtual machine research and development</li>
-  </ul>
+    <li>Mixed interpretation/compilation.
+    <li>Adaptive optimization.
+  </ul></p>
+
 
   <!--=====================================================================-->
   <h2>Why?</h2>
@@ -106,6 +122,23 @@
      involved in the VMKit community</a>. Currently, VMKit is tightly
      integrated into the LLVM community. You can sign up for the LLVM mailing
      list to ask and learn about how the project works.</p>
+
+  <p>The project VMKit2, sponsored by Inria and LIP6, was a fork of VMKit
+  project that was recently integrated back into mainstream VMKit.</p>
+
+  <table cellpadding="0" cellspacing="0" width="100%">
+    <tbody><tr>
+      <td valign="middle" align="center" width="25%">
+        <a href="http://www.inria.fr">
+          <img border="0" src="http://www.inria.fr/var/inria/storage/images/medias/inria/images-corps/logo-inria-institutionnel-couleur/410230-1-fre-FR/logo-inria-institutionnel-couleur.jpg" height="80" alt="INRIA"></a>
+      </td>
+      <td valign="middle" align="center" width="50%"></td>
+      <td valign="middle" align="center" width="25%">
+        <a href="http://www.lip6.fr">
+        <img border="0" src="lip6.png" height="70" alt="Laboratoire d'Informatique de Paris6"></a>
+      </td>
+    </tr></tbody>
+  </table>
 </div>
 </body>
 </html>

Added: vmkit/trunk/www/lip6.png
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/lip6.png?rev=181314&view=auto
==============================================================================
Binary files vmkit/trunk/www/lip6.png (added) and vmkit/trunk/www/lip6.png Tue May  7 09:08:58 2013 differ

Modified: vmkit/trunk/www/menu.html.incl
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/menu.html.incl?rev=181314&r1=181313&r2=181314&view=diff
==============================================================================
--- vmkit/trunk/www/menu.html.incl (original)
+++ vmkit/trunk/www/menu.html.incl Tue May  7 09:08:58 2013
@@ -8,9 +8,8 @@
     <a href="/index.html">About</a>
     <a href="/get_started.html">Get Started</a>
     <a href="/get_involved.html">Get Involved</a>
-    <a href="/OpenProjects.html">Open Projects</a>
+    <a href="/tutorial.html">Tutorial</a>
     <a href="/pubs.html">Publications</a>
-    <a href="/releases/index.html">Releases</a>
   </div>
   
   <div class="submenu">

Added: vmkit/trunk/www/tuto/VMKit_pres_eng.pdf
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/tuto/VMKit_pres_eng.pdf?rev=181314&view=auto
==============================================================================
Binary files vmkit/trunk/www/tuto/VMKit_pres_eng.pdf (added) and vmkit/trunk/www/tuto/VMKit_pres_eng.pdf Tue May  7 09:08:58 2013 differ

Added: vmkit/trunk/www/tuto/VMKit_pres_fr.pdf
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/tuto/VMKit_pres_fr.pdf?rev=181314&view=auto
==============================================================================
Binary files vmkit/trunk/www/tuto/VMKit_pres_fr.pdf (added) and vmkit/trunk/www/tuto/VMKit_pres_fr.pdf Tue May  7 09:08:58 2013 differ

Added: vmkit/trunk/www/tuto/VMKit_tutorial.pdf
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/tuto/VMKit_tutorial.pdf?rev=181314&view=auto
==============================================================================
Binary files vmkit/trunk/www/tuto/VMKit_tutorial.pdf (added) and vmkit/trunk/www/tuto/VMKit_tutorial.pdf Tue May  7 09:08:58 2013 differ

Added: vmkit/trunk/www/tuto/VMKit_tutorial.tar.gz
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/tuto/VMKit_tutorial.tar.gz?rev=181314&view=auto
==============================================================================
Binary files vmkit/trunk/www/tuto/VMKit_tutorial.tar.gz (added) and vmkit/trunk/www/tuto/VMKit_tutorial.tar.gz Tue May  7 09:08:58 2013 differ

Added: vmkit/trunk/www/tuto/VMKit_tutorial_eng.pdf
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/tuto/VMKit_tutorial_eng.pdf?rev=181314&view=auto
==============================================================================
Binary files vmkit/trunk/www/tuto/VMKit_tutorial_eng.pdf (added) and vmkit/trunk/www/tuto/VMKit_tutorial_eng.pdf Tue May  7 09:08:58 2013 differ

Added: vmkit/trunk/www/tuto/toy-vm-base.tar.gz
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/tuto/toy-vm-base.tar.gz?rev=181314&view=auto
==============================================================================
Binary files vmkit/trunk/www/tuto/toy-vm-base.tar.gz (added) and vmkit/trunk/www/tuto/toy-vm-base.tar.gz Tue May  7 09:08:58 2013 differ

Added: vmkit/trunk/www/tutorial.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/tutorial.html?rev=181314&view=auto
==============================================================================
--- vmkit/trunk/www/tutorial.html (added)
+++ vmkit/trunk/www/tutorial.html Tue May  7 09:08:58 2013
@@ -0,0 +1,55 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+          "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+  <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+  <title>VMKit - Tutorial</title>
+  <link type="text/css" rel="stylesheet" href="menu.css" />
+  <link type="text/css" rel="stylesheet" href="content.css" />
+</head>
+<body>
+
+<!--#include virtual="menu.html.incl"-->
+
+<div id="content">
+
+<h1>Tutorial: ToyVM</h1>
+
+<p>If you would like to get more familliar with VMKit2 here is a "toyVM"
+tutorial which contains.</p>
+
+<ul>
+  <li>
+    A presentation introducing the general functionning of virtual machines
+    and the functionning of a virtual machine based on VMKit.<br/>
+    It also introduces the tutorial's proceeding. Download the presentation
+    here.
+    <ul>
+      <li><a href="tuto/VMKit_pres_eng.pdf">Download in english.</a></li>
+      <li><a href="tuto/VMKit_pres_fr.pdf">Download in french.</a></li>
+    </ul>
+    </br>
+  </li>
+  <li>
+    A "mode of using" describing each step in the tutorial in order to develop
+    a minimal virtual machine based on VMKit components.
+    <ul>
+      <li><a href="tuto/VMKit_tutorial_eng.pdf">Download in english.</a></li>
+      <li><a href="tuto/VMKit_tutorial.pdf">Download in french.</a></li>
+    </ul>
+    <br/>
+  </li>
+  <li>
+    A base code canvas for starting developping the minimal virtual machine (
+    <a href="tuto/toy-vm-base.tar.gz">download the base code here</a>).
+    <br/>You have to download and install VMKit first. See the
+    <a href="start.php">Get Started</a> page for more information.
+  </li>
+</ul>
+
+<p>You can download all the needed parts gathered in an archive
+<a href="tuto/VMKit_tutorial.tar.gz">here</a>.</p>
+
+</div>
+</body>
+</html>





More information about the vmkit-commits mailing list