public JobTracker() {
		CoordListener listener = new CoordListener(Configuration.SERVER_PORT,
				this);
		Thread t = new Thread(listener);
		t.setDaemon(false);
		t.start();
		jobList = new ConcurrentHashMap<Integer, Job>();
		slaveMapTaskList = new ConcurrentHashMap<Integer, ArrayDeque<MapTask>>();
		slaveReduceTaskList = new ConcurrentHashMap<Integer, ArrayDeque<ReduceTask>>();
		slaveRunningTask = new ConcurrentHashMap<Integer, HashSet<MapTask>>();
		jobMapTask = new ConcurrentHashMap<Integer, HashSet<MapTask>>();
		jobReduceTask = new ConcurrentHashMap<Integer, HashSet<ReduceTask>>();
		jobAssignedTask = new ConcurrentHashMap<Integer, HashSet<Task>>();
		jobClient = new ConcurrentHashMap<Integer, String>();
		jobOutput = new ConcurrentHashMap<Integer, ArrayDeque<String>>();
		jobFinishedTask = new ConcurrentHashMap<Integer, HashSet<Task>>();
		dfs = new DFSMaster(this);
	}