1 /*
2 * This file is in public domain.
3 * Written by Konstantin Belousov <kib@freebsd.org>
4 */
5
6 #include <sys/mman.h>
7 #include <err.h>
8 #include <stdlib.h>
9 #include <stdint.h>
10 #include <stdio.h>
11 #include <unistd.h>
12
13 static void
test_pagesizes(void)14 test_pagesizes(void)
15 {
16 size_t *ps;
17 int i, nelem;
18
19 nelem = getpagesizes(NULL, 0);
20 if (nelem == -1)
21 err(1, "getpagesizes(NULL, 0)");
22 ps = malloc(nelem * sizeof(size_t));
23 if (ps == NULL)
24 err(1, "malloc");
25 nelem = getpagesizes(ps, nelem);
26 if (nelem == -1)
27 err(1, "getpagesizes");
28 printf("Supported page sizes:");
29 for (i = 0; i < nelem; i++)
30 printf(" %jd", (intmax_t)ps[i]);
31 printf("\n");
32 }
33
34 static void
test_pagesize(void)35 test_pagesize(void)
36 {
37
38 printf("Pagesize: %d\n", getpagesize());
39 }
40
41 static void
test_osreldate(void)42 test_osreldate(void)
43 {
44
45 printf("OSRELDATE: %d\n", getosreldate());
46 }
47
48 static void
test_ncpus(void)49 test_ncpus(void)
50 {
51
52 printf("NCPUs: %ld\n", sysconf(_SC_NPROCESSORS_CONF));
53 }
54
55 int
main(int argc __unused,char * argv[]__unused)56 main(int argc __unused, char *argv[] __unused)
57 {
58
59 test_pagesizes();
60 test_pagesize();
61 test_osreldate();
62 test_ncpus();
63 return (0);
64 }
65