private void populateQueues() {
        String sgeRoot = Configuration.getConfig(Configuration.CONFIG_SGE_ROOT);

        String arch = "";

        Process p = null;
        try {
            p = Runtime.getRuntime().exec(sgeRoot + "/util/arch");
            InputStream is = p.getInputStream();
            byte [] buff = new byte[256];
            if ( is.read(buff) > 0 ) {
                 arch = new String(buff).trim();
            }
        } catch ( Exception ex) {
            ex.printStackTrace();
        } finally {
            NativeCalls.releaseProcess(p);
        }

        StringBuilder cmd = new StringBuilder(sgeRoot);
        cmd.append(File.separator);
        cmd.append("bin");
        cmd.append(File.separator);
        cmd.append(arch);
        cmd.append(File.separator);
        cmd.append("qstat -g c");


        List<String> queues = new LinkedList<String>();
        try {
            p = Runtime.getRuntime().exec( cmd.toString() );
            BufferedReader stdInput = new BufferedReader(new InputStreamReader(p.getInputStream()));

            String s = null;
            int lineNo = 0;
            while ( (s = stdInput.readLine() ) != null ) {
                lineNo++;
                if ( lineNo <= 2)
                    continue;

                String [] tokens = s.split(" ");
                queues.add(tokens[0]);
            }

        } catch (Exception ex) {
            ex.printStackTrace();
        } finally {
            if ( p != null )
                NativeCalls.releaseProcess(p);
        }


        queueComboBox.removeAllItems();
        queueComboBox.addItem(" Select One ");
        for ( String q : queues )
            queueComboBox.addItem(q);

    }