#if 0
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include "ntp_types.h"
#endif
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define NBUF 100001
#define NSRT 20000
#define NCNT (600 * 1000000)
extern int col(hrtime_t *, hrtime_t *);
extern hrtime_t gethrtime(void);
int
main(
int argc,
char *argv[]
)
{
int i, j, n;
hrtime_t t, u, v, w, gtod[NBUF], ovfl[NSRT];
for (i = 0; i < NBUF; i++)
gtod[i] = 0;
for (i = 0; i < NSRT; i++)
ovfl[i] = 0;
n = 0;
t = gethrtime();
v = t;
while (1) {
u = gethirestime();
if (u - v > NCNT)
break;
w = u - t;
if (w <= 0) {
} else if (w > NBUF - 1) {
ovfl[n] = w;
if (n < NSRT - 1)
n++;
} else {
gtod[w]++;
}
t = u;
}
for (i = 0; i < NBUF - 1; i++) {
if (gtod[i] > 0)
printf("%ld %ld\n", i, gtod[i]);
}
if (n == 0)
return;
qsort((char *)ovfl, (size_t)n, sizeof(hrtime_t), col);
w = 0;
j = 0;
for (i = 0; i < n; i++) {
if (ovfl[i] != w) {
if (j > 0)
printf("%ld %ld\n", w, j);
w = ovfl[i];
j = 1;
} else
j++;
}
if (j > 0)
printf("%ld %ld\n", w, j);
exit(0);
}
int
col(
hrtime_t *x,
hrtime_t *y
)
{
return (*x - *y);
}