diff options
author | Ryo Nakamura <upa@haeena.net> | 2022-10-15 21:59:25 +0900 |
---|---|---|
committer | Ryo Nakamura <upa@haeena.net> | 2022-10-15 21:59:25 +0900 |
commit | 303a9eb974f884b5f9f7e14fdd83a821f21e32e6 (patch) | |
tree | 91c535639e39e7f204db7a194854f4865dfff184 /src/platform.c |
initial commit
Diffstat (limited to 'src/platform.c')
-rw-r--r-- | src/platform.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/platform.c b/src/platform.c new file mode 100644 index 0000000..5e0573e --- /dev/null +++ b/src/platform.c @@ -0,0 +1,27 @@ +#include <util.h> +#include <platform.h> + +#ifdef __APPLE__ +#include <sys/types.h> +#include <sys/sysctl.h> +#elif linux +#else +#error unsupported platform +#endif + + +#ifdef __APPLE__ +int nr_cpus() +{ + int n; + size_t size = sizeof(n); + + if (sysctlbyname("machdep.cpu.core_count", &n, &size, NULL, 0) != 0) { + pr_err("failed to get number of cpu cores: %s\n", strerrno()); + return -1; + } + + return n; +} +#endif + |