현재 시스템 정보를 가져오는 방법에 대해서 알아보도록 할게요.
이 함수를 통해 CPU의 정보를 얻어 시스템 사양에 맞게 프로그램이 동작, 설정하도록 할 수 있어요.
소스 코드
SYSTEM_INFO stSysInfo;
GetSystemInfo(&stSysInfo);
구조체
typedef struct _SYSTEM_INFO {
union {
DWORD dwOemId; // Obsolete field...do not use
struct {
WORD wProcessorArchitecture;
WORD wReserved;
} DUMMYSTRUCTNAME;
} DUMMYUNIONNAME;
DWORD dwPageSize;
LPVOID lpMinimumApplicationAddress;
LPVOID lpMaximumApplicationAddress;
DWORD_PTR dwActiveProcessorMask;
DWORD dwNumberOfProcessors;
DWORD dwProcessorType;
DWORD dwAllocationGranularity;
WORD wProcessorLevel;
WORD wProcessorRevision;
} SYSTEM_INFO, *LPSYSTEM_INFO;
설명
>> dwNumberOfProcessors
CPU의 스레드 개수로 CPU의 코어 개수가 아니에요.
>> dwProcessorType
PROCESSOR_INTEL_386 (386)
PROCESSOR_INTEL_486 (486)
PROCESSOR_INTEL_PENTIUM (586)
PROCESSOR_INTEL_IA64 (2200)
PROCESSOR_AMD_X8664 (8664)
PROCESSOR_ARM (Reserved)
다음 사진은 제 노트북에서 소스코드를 돌려본 결과인데요.
dwNumberOfProcessors = 4, dwProcessorType = 586 로 CPU 스레드가 4개인 걸 알 수 있어요.
확인을 위해 인텔 홈페이지에서 제 노트북의 CPU 모델을 넣어 확인해보면 CPU 코어는 2개,
CPU 스레드는 4개인 걸 확인할 수 있으며, 작업관리자에서도 스레드가 4개인 걸 확인할 수 있어요.
더 자세한 _SYSTEM_INFO의 정보는 아래의 링크를 통해 참고해주세요.
'프로그래밍 > MFC' 카테고리의 다른 글
Visual Studio 2019 Community 설치하고 MFC 개발 환경 구축하기 (비주얼 스튜디오, vs 2019, window) (0) | 2019.07.06 |
---|---|
[MFC] 드라이브 타입, 전체 공간, 남은 공간(용량) 정보 얻기 (HDD 남은 용량 정보) (0) | 2019.03.11 |
[MFC] BCGControl DLL 관련 추가 방법 (0) | 2016.11.16 |
[MFC] 메시지 처리 (0) | 2016.09.20 |
[MFC] 문자열 비교하기 (0) | 2016.09.13 |