ADVENTURE
author Russ Cox <rsc@swtch.com>
Fri Jun 27 09:00:00 2008 -0400 (17 months ago)
changeset 0 7ffd45bc863f
permissions -rw-r--r--
libvx32 as of USENIX 2008 talk
        1 Welcome to vx32.
        2 
        3 > look
        4 
        5 You are near the bottom of a tree.
        6 
        7 > look doc
        8 
        9 You see PDFs of the two published papers about vx32.
       10 
       11 > look src
       12 
       13 You see the source code behind the papers.
       14 
       15 > examine src
       16 
       17 Upon closer examination, the src/ directory contains the following
       18 subdirectories:
       19 
       20 	libvx32/	the vx32 virtual machine itself
       21 
       22 	vxrun/	a simple portable execution environment
       23 	libvxc/	an optional C library for use in vxrun apps
       24 	
       25 	vxlinux/	a simple delegation-based system jail for Linux
       26 
       27 	hash/	hash function benchmarks (Alpaca results in vx32 paper)
       28 	micro/	micro benchmarks (in vx32 paper)
       29 	vxa/		compression benchmarks (VXA results in vx32 paper)
       30 	
       31 	9vx/		Plan 9 VX
       32 
       33 > build src
       34 
       35 Okay: cd src; make.
       36 On BSD machines you may need to say gmake instead.
       37 
       38 > install src
       39 
       40 Okay: cd src; make; make install
       41 
       42 > more
       43 
       44 If you want to try the benchmarks on your own machines,
       45 you can run "run.sh" in any of the benchmark directories
       46 and then inspect results.txt
       47 
       48 > show license
       49 
       50 The individual subdirectories contain LICENSE files explaining
       51 the copyrights and licenses.  
       52 
       53 The vx32 core, found in src/libvx32/, is licensed under the LGPL v2.1;
       54 see src/libvx32/LICENSE for details.
       55 
       56 The sample programs, found in src/vxrun/ and src/vxlinux/, are made
       57 available under the traditional MIT license to encourage use as jumping-off
       58 points for new programs.  See src/vxrun/LICENSE and src/vxlinux/LICENSE.
       59 
       60 The C library, which is found in src/libvxc and is absolutely not required
       61 in order to use vx32, is mostly taken from FreeBSD and Sun Microsystems
       62 code, both of which use BSD-like licenses.  See the copyright notices in the
       63 individual files.  Files without copyright notices were written by us and
       64 are licensed under an MIT license.
       65 
       66 The benchmarks in hash/ and vxa/ are mostly code written by others.
       67 See the copyright notices in individual files.  The benchmarks in micro/
       68 are too short to worry about.
       69 
       70 The Plan 9 VX user-level operating system, found in src/9vx/, is
       71 derived from Plan 9 from Bell Labs and is made available under the
       72 terms of the Lucent Public License.  See src/9vx/LICENSE.
       73 
       74 > get vx32-gcc
       75 
       76 You probably don't need to do that.
       77 
       78 > get vx32-gcc
       79 
       80 Okay, if you insist.  You can download vx32-specific versions
       81 of binutils and gcc from http://pdos.csail.mit.edu/~baford/vm/
       82 and then extract them in this directory.  Then you can run
       83 
       84 	cd binutils-2.18-vx32
       85 	./configure --target=vx32
       86 	make
       87 	make install
       88 	
       89 	cd gcc-4.1.2-vx32
       90 	./configure --enable-languages=c --disable-libssp --target=vx32
       91 	make
       92 	make install
       93 	make distclean
       94 
       95 But again, you probably don't need to do that.
       96 If you are on a 32-bit ELF machine, your host gcc is likely fine.
       97 
       98 > who
       99 
      100 Russ Cox <rsc@swtch.com>
      101 Bryan Ford <baford@pdos.csail.mit.edu>
      102 
      103 > date
      104 
      105 June 27, 2008
      106