if (runInitProc) myProcessor.initializeProcessor();
  public void run() { // overrides VM_Thread    VM_Processor myProcessor = VM_Processor.getCurrentProcessor();    long spinInterval = loadBalancing ? VM_Time.millisToCycles(1) : 0;    main: while (true) {      if (VM_Scheduler.terminated) VM_Thread.terminate();      long t = VM_Time.cycles()+spinInterval;      if (VM_Scheduler.debugRequested) {        System.err.println("debug requested in idle thread");        VM_Scheduler.debugRequested = false;      }            do {        VM_Processor.idleProcessor = myProcessor;        if (availableWork(myProcessor)) {          VM_Thread.yield(VM_Processor.getCurrentProcessor().idleQueue);          continue main;        }      } while (VM_Time.cycles()<t);            VM.sysVirtualProcessorYield();    }  }