code: public static SimulatorJobTracker startTracker(JobConf conf, long startTime, SimulatorEngine engine)
    throws IOException {
      SimulatorJobTracker result = null;
      try {
        SimulatorClock simClock = new SimulatorClock(startTime);
        result = new SimulatorJobTracker(conf, simClock, engine);
        result.taskScheduler.setTaskTrackerManager(result);
      } catch (IOException e) {
        LOG.warn("Error starting tracker: "
            + StringUtils.stringifyException(e));
      } catch (InterruptedException e) {
        LOG.warn("Error starting tracker: "
            + StringUtils.stringifyException(e));
      }
      if (result != null) {
        JobEndNotifier.startNotifier();
      }
  
      return result;
    }
docs: Starts the JobTracker with given configuration and a given time. It also
  starts the JobNotifier thread.
  @param conf the starting configuration of the SimulatorJobTracker.
  @param startTime the starting time of simulation -- this is used to
  initialize the clock.
  @param engine the SimulatorEngine that we talk to.
  @throws IOException