--- projects/libstatgrab/src/libstatgrab/load_stats.c 2004/04/07 21:08:40 1.15 +++ projects/libstatgrab/src/libstatgrab/load_stats.c 2004/11/01 18:30:17 1.16 @@ -18,7 +18,7 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA * 02111-1307 USA * - * $Id: load_stats.c,v 1.15 2004/04/07 21:08:40 tdb Exp $ + * $Id: load_stats.c,v 1.16 2004/11/01 18:30:17 tdb Exp $ */ #ifdef HAVE_CONFIG_H @@ -35,12 +35,19 @@ #include #endif #endif +#ifdef HPUX +#include +#include +#endif sg_load_stats *sg_get_load_stats(){ static sg_load_stats load_stat; double loadav[3]; +#ifdef HPUX + struct pst_dynamic pstat_dynamic; +#endif #ifdef CYGWIN sg_set_error(SG_ERROR_UNSUPPORTED, "Cygwin"); @@ -85,6 +92,15 @@ sg_load_stats *sg_get_load_stats(){ return NULL; } load_stat.min15 = (double)kn->value.ui32 / (double)256; +#elif defined(HPUX) + if (pstat_getdynamic(&pstat_dynamic, sizeof(pstat_dynamic), 1, 0) == -1) { + sg_set_error_with_errno(SG_ERROR_PSTAT, "pstat_dynamic"); + return NULL; + } + + load_stat.min1=pstat_dynamic.psd_avg_1_min; + load_stat.min5=pstat_dynamic.psd_avg_5_min; + load_stat.min15=pstat_dynamic.psd_avg_15_min; #else getloadavg(loadav,3);