If you don't have Debian, then you'll need a java interpreter installed, and a copy of my makeme build tool, http://makeme.sourceforge.net/. Unfortunately this depends on the ANTLR compiler-compiler, see http://antlr.org. (There is an antlr jar file at http://kissme.sourceforge.net/antlrall.jar).
You must also create a makeme script that is called by the Makefile. My script lives in /usr/bin/ and looks like this:
#!/bin/bash #wrapper script to run the makeme build tool CLASSPATH=/usr/share/java/repository:/usr/share/java/antlrall.jar java gnu.makeme.MakeMe $@
Modify it to suit your java environment.
To compile type:
make kernelto build the linux kernel module.
make usermakes a normal linux process which you can run like other programs
make rjkcompiles teaseme against the RJK kernel.
cvs -d:pserver:email@example.com:/cvsroot/teaseme login cvs -z3 -d:pserver:firstname.lastname@example.org:/cvsroot/teaseme co current
This contains the JVM. Currently it is hard-coded to look for its classes in /usr/share/teaseme/classpath/. It is also hard-coded to run teaseme.system.init (was jos.system.init).
For the user-space build, just type
./teasemethe class libraries must be in the same place.
Check out the module "teaseme_classpath" in CVS.
cvs -d:pserver:email@example.com:/cvsroot/teaseme login cvs -z3 -d:pserver:firstname.lastname@example.org:/cvsroot/teaseme co teaseme_classpath
Before you run it, make sure you unpack the classpath files in:
ie, java/lang/String.class would be at:
It will print messages to the console. (View with dmesg)
Type rmmod teaseme to unload it.
The VM does clean up the GC heap when you unload it, but it will still eat up kernel memory if you do this too many times. (Check how much free memory there is with free. If you're not careful you'll have to reset your machine).
As you should know, installing a kernel module is dangerous and could destroy all your data. You have been warned.
1. Grab the RJK kernel and bootdisk.
2. Build teaseme with 'make rjk'
3. Unzip the bootdisk (gzip -d __bootdisk_file__)
4. mount the bootdisk: mount -o loop __bootdisk_file__ /floppy
5. copy teaseme.o to the bootdisk: cp teaseme.o /floppy
6. edit the /grub/menu.lst on the floppy to have teaseme.o in the module= section
6. unmount the bootdisk: umount /floppy
7. boot the bootdisk (copy it to a floppy with dd and reboot) or (boot it with bochs)
Next run ksymoops -v bvmlinux where bvmlinux is an uncompressed copy of your kernel. Then paste the Oops report into ksymoops.
Contact jewel at pixie.co.za for more info.