CPU의 정보를 C에서 알려면?

purewell의 이미지

/proc/cpu이던가? 거기 파일을 살포시 건들여 주면

CPU 정보가 좌르르 보입니다.

C에서 ㅡ_-); /proc의 파일을 건들지 않고 단순히

ANSI/ISO/IEEE의 표준 함수로만 CPU의 클럭수 따위를

알 수 있는 방법이 있을까요?

-------------------------------------------------------------------

CLOCKS_PER_SEC 값이 /bit/time.h에서 1000000으로 고정되어
있습니다. ㅡ_-); 그럼 모든 머신에서 다 똑같다는 말인가요...
아니면 컴파일될 때나, 실행될 때마다 그 값이 CPU의 정보대로 바뀌나요?

맹고이의 이미지

Quote:

CLOCKS_PER_SEC 값이 /bit/time.h에서 1000000으로 고정되어
있습니다. ㅡ_-); 그럼 모든 머신에서 다 똑같다는 말인가요...
아니면 컴파일될 때나, 실행될 때마다 그 값이 CPU의 정보대로 바뀌나요

1000000이 microsecond 인가요-_-a
암튼 그건 POSIX.1에선지 그냥 규정해놓은것 같은데
그러니 실행할때마다 바뀌지는 않을것같습니다

특정시스템에 적용되는 값을 알려면..

#include <unistd.h>

long sysconf(int name); 

이걸로 실행시간중에 알수있지 않을까요

질문하신 값은

long val;
val = sysconf(_SC_CLK_TCK );

하면 될듯 하지만
사실은 잘 모릅니다-_-a