In my spare time, after writing on and off for nearly a year, the smallest JVM component was finally developed today.
1. JVM characteristics
(1) Support multi-threading
(2) Support monitor
(3) Support exception mechanism
(4) Support class and instance objects, support static functions and data members
(5) Support garbage collection
(6) Classes generated by standard java syntax are supported
(7) Minimum class library (not necessary for later additions)
java.lang.Object.class
java.lang.String.class
java.lang.Throwable.class
java.lang.Exception.class
java.lang.AbstractMethodError.class
java.lang.ArithmeticException.class
java.lang.ArrayIndexOutOfBoundsException.class
java.lang.ClassCastException.class
java.lang.IllegalAccessError.class
java.lang.IncompatibleClassChangeError.class
java.lang.InstantiationError.class
java.lang.NegativeArraySizeException.class
java.lang.NullPointerException.class
java.lang.UnsatisfiedLinkError.class
com.rjos.Thread.class (multi-threading based on rjos, you can create a thread through the function name of the instance object or class object)
Second, the next plan
Integrate with gui to provide graphics operation classes for java.
Discussion on jvm technology, QQ: 601577724