Getting Mungi going on Sulima

Summary: This details the process of running Mungi on the MIPS simulator Sulima.

This tutorial assumes you have access to the DiSY CVS tree - ie, you are in the 'disy' group at UNSW and that you're using bash.

First ensure that the cross compiler is in your path:
$ export PATH=/home/disy/crossdev/$ARCH/bin:$PATH

Get a copy of the "pistachio" version of L4. Instructions on checking out a copy of pistachio from public CVS are available at http://l4ka.org/download/.

Now build pistachio:

You will also need to build the user-level part. Perversely, it is configured totally differently: Now build Mungi against this L4. First ensure that you have the pax comiler available. If you check out the pax compiler into the same directory you check out Mungi you need not fiddle with paths (ie, you have Mungi/ and pax_compiler/ in the same dir).

The pax compiler is in DiSY CVS; check it out and build it (module name pax_compiler).

Now check out Mungi from DiSY CVS (module name Mungi).

Create a Makefile.local file in the root of the checked-out Mungi directory. Makefile.local, if it exists, is included by Makefile.conf; this allows site customisation that doesn't result in CVS conflicts.

Set the following in Makefile.local:

Ensure that ../pistachio is in fact where you have copied pistachio. Now make Mungi: make.

Now build Sulima. Sulima is in DiSY CVS (module sulima). Build Sulima by typing ./install - this does not actually perform any installation.

Run Sulima by typing ./u4600 path-to-bootimg . The boot image for a Mungi kernel can be found in Mungi/build/architecture/mungi.bootimg . For Sulima, the path will be Mungi/build/mips_v4_u4600/mungi.bootimg .