001    /*
002     * HostInfo.java
003     *
004     * Created on May 12, 2003, 11:59 AM
005     *
006     * This file is part of the STAR Scheduler.
007     * Copyright (c) 2002-2006 STAR Collaboration - Brookhaven National Laboratory
008     *
009     * STAR Scheduler is free software; you can redistribute it and/or modify
010     * it under the terms of the GNU General Public License as published by
011     * the Free Software Foundation; either version 2 of the License, or
012     * (at your option) any later version.
013     *
014     * STAR Scheduler is distributed in the hope that it will be useful,
015     * but WITHOUT ANY WARRANTY; without even the implied warranty of
016     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
017     * GNU General Public License for more details.
018     *
019     * You should have received a copy of the GNU General Public License
020     * along with STAR Scheduler; if not, write to the Free Software
021     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
022     */
023    
024    package gov.bnl.star.offline.scheduler.monitor;
025    
026    /**
027     *
028     * @author  Gabriele Carcassi
029     */
030    public interface HostInfo {
031        /** Returns the full name of the machine. For example, rcas6023.rcf.bnl.gov */    
032        String getHostName();
033        /** Average number of jobs in the run queue (of the OS) in the past minute. */    
034        double getLoad1m();
035        /** Average number of jobs in the run queue (of the OS) in the past 5 minutes. */    
036        double getLoad5m();
037        /** Average number of jobs in the run queue (of the OS) in the past 15 minutes. */    
038        double getLoad15m();
039        /** Number of CPUs on the machine. */    
040        int getProcessorCount();
041        /** The speed of the processor in MHz. */    
042        double getProcessorSpeed();
043        /** Returns the total memory available in KBytes. */    
044        double getMemorySize();
045        /** Returns the available free memory in KBytes. */    
046        double getMemoryAvailable();
047    }