Получение описания процессора в Mac OS X - PullRequest
1 голос
/ 13 апреля 2011

Я бы хотел программно получить описания процессоров в Mac OS X, которые выглядят примерно так:

Intel(R) Core(TM)2 CPU 6700 @ 2.66GHz
Intel(R) Xeon(R) CPU X5550 @ 2.67GHz

В Linux вы можете сделать grep "^model name" /proc/cpuinfo, а в Windows вы можете посмотреть значение ProcessorNameString в HKLM\Hardware\Description\System\CentralProcessor\0 в реестре, но как получить эту информацию в OS X?

Ответы [ 2 ]

11 голосов
/ 11 сентября 2011

Вы можете передать machdep.cpu.brand_string в sysctl, чтобы получить искомую строку.

[ben@imac ~]$ sysctl machdep.cpu.brand_string
machdep.cpu.brand_string: Intel(R) Core(TM) i5-2400S CPU @ 2.50GHz

Та же информация предоставляется через функции sysctl(3).

[ben@imac ~]$ cat sys.c
#include <sys/types.h>
#include <sys/sysctl.h>
#include <stdio.h>

int main(int argc, char *argv[]) {
    char buf[100];
    size_t buflen = 100;
    sysctlbyname("machdep.cpu.brand_string", &buf, &buflen, NULL, 0);

    printf("%s\n", buf);
}

[ben@imac ~]$ ./sys
Intel(R) Core(TM) i5-2400S CPU @ 2.50GHz
0 голосов
/ 13 апреля 2011

Взгляните на http://osxbook.com/book/src/. В загруженном источнике есть файл с названием processor_info.c (и множество других полезных вещей), который, я уверен, даст вам эту информацию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...