MCI-Java
Multiple Code Inheritance JVM
Download the binary distribution of mcijava (mciJVM.tar.gz) for Linux. MCI-Java is a modified version of the SUN JVM 1.2.2 for Linux, compiled for Red Hat Linux Release 6.2. Download the scenario source files (scenarios.tar.gz).
Instructions for download and use of mcijava:
- Untar the binary distribution: tar -xzvf mciJVM.tar.gz and the scenario source files: tar -xzvf scenarios.tar.gz
- Set your CLASSPATH variable to include the directory mciJVM/build/linux/classes. For example, if your destination folder for mciJVM is jvmPath, then set CLASSPATH to jvmPath/mciJVM/build/linux/classes.
- For the scenarios Code in Interfaces and Multi-Super, select a folder (sc0 to sc17):
- Compile the Java source files in the selected folder: $ mcijavac *.java
- Execute the class files: $ mcijava Test
- For the scenario Refactored java.io Stream Classes:
- In the testRefactor folder, you will find the file mcirt.jar. This library contains the .class files for the stream classes modified and for the additional classes needed for refactoring purposes.
- Compile the Java source files: $ mcijavac -bootclasspath mcirt.jar *.java
- The only difference between TestRefactor and ITestRefactor classes is the static type of the receiver object. When the static type of the receiver for the read/write operations is a
class, we execute the file TestRefactor.
- mcijava -Xbootclasspath/p:mcirt.jar TestRefactor
- When the static type of the receiver for the read/write operations is an
interface (DataInput for the DataInputStream instance, DataOutput for the
DataOutputStream instance), we execute the file ITestRefactor.
- mcijava -Xbootclasspath/p:mcirt.jar ITestRefactor
- Alternately, if your CLASSPATH is not set to jvmPath/mciJVM/build/linux/classes:
- For the scenarios Code in Interfaces and Multi-Super, select a folder (sc0 to sc17):
- Compile the Java source files in the selected folder: $ mcijavac -bootclasspath jvmPath/mciJVM/build/linux/classes *.java
- Execute the .class files: $ mcijava -Xbootclasspath/p:jvmPath/mciJVM/build/linux/classes Test
- For the scenario Refactored java.io Stream Classes:
- Compile the Java source files: $ mcijavac -bootclasspath mcirt.jar:jvmPath/mciJVM/build/linux/classes *.java
- Execute the .class files:
- $ mcijava -Xbootclasspath/p:mcirt.jar:jvmPath/mciJVM/build/linux/classes TestRefactor
- $ mcijava -Xbootclasspath/p:mcirt.jar:jvmPath/mciJVM/build/linux/classes ITestRefactor
Links