mirror of
https://github.com/servalproject/serval-dna.git
synced 2024-12-20 05:37:57 +00:00
27 lines
546 B
C
27 lines
546 B
C
|
#include <stdio.h>
|
||
|
#include <unistd.h>
|
||
|
#include <sys/types.h>
|
||
|
#include <sys/param.h>
|
||
|
#include <sys/pstat.h>
|
||
|
#include <machine/inline.h>
|
||
|
|
||
|
long long cpucycles_hppapstat(void)
|
||
|
{
|
||
|
register long long result;
|
||
|
_MFCTL(16,result);
|
||
|
return result;
|
||
|
}
|
||
|
|
||
|
long long cpucycles_hppapstat_persecond(void)
|
||
|
{
|
||
|
struct pst_processor pst;
|
||
|
union pstun pu;
|
||
|
double result;
|
||
|
|
||
|
pu.pst_processor = &pst;
|
||
|
if (pstat(PSTAT_PROCESSOR,pu,sizeof(pst),1,0) < 0) return 0;
|
||
|
result = pst.psp_iticksperclktick;
|
||
|
result *= (double) sysconf(_SC_CLK_TCK);
|
||
|
return result;
|
||
|
}
|