MonitorManager.initialize();
    public static void initialize() {        if (!inited) {            // Initialize resource manager            final ResourceManager rm = ResourceManagerImpl.initialize();            VmSystem.out = getSystemOut();            /* Initialize the system classloader */            VmSystemClassLoader loader = (VmSystemClassLoader) (getVmClass(VmProcessor.current()).getLoader());            systemLoader = loader;            loader.initialize();            // Initialize VmThread            VmThread.initialize();            /* Initialize the monitor system */            MonitorManager.initialize();            final Vm vm = Vm.getVm();            // Initialize the monitors for the heap manager            Vm.getHeapManager().start();            // Find & start all processors            vm.initializeProcessors(rm);            /* We're done initializing */            inited = true;            VmProcessor.current().systemReadyForThreadSwitch();            // Load the command line            final Properties props = System.getProperties();            props.setProperty("jnode.cmdline", getCmdLine());            // Make sure that we have the default locale,            // otherwise String.toLowerCase fails because it needs itself            // via Locale.getDefault.            Locale.getDefault();            // Calibrate the processors            VmProcessor.current().calibrate();            // Load the initial jarfile            initJar = loadInitJar(rm);            // Initialize log4j            final Logger root = Logger.getRootLogger();            final ConsoleAppender infoApp = new ConsoleAppender(                    new PatternLayout(LAYOUT));            root.addAppender(infoApp);        }    }