C$PU

来源:互联网 发布:淘宝内部优惠券微信号 编辑:程序博客网 时间:2024/03/29 10:00
#include <windows.h> 
#include <stdio.h> 
#include <iostream>
using namespace std;


void main()
{
int   tick1, tick2;
_asm   rdtsc
_asm   mov   tick1, eax
Sleep(50);
_asm   rdtsc
_asm   mov   tick2, eax
int   freq = (tick2 - tick1) / 50000;
printf("CPU:%d MHz", freq);


SYSTEM_INFO siSysInfo;
GetSystemInfo(&siSysInfo);




printf("\nHardware information: \n");
printf("  OEM ID: %u\n", siSysInfo.dwOemId);
printf("  Number of processors: %u\n", siSysInfo.dwNumberOfProcessors);
printf("  Page size: %u\n", siSysInfo.dwPageSize);
printf("  Processor type: %u\n", siSysInfo.dwProcessorType);
printf("  Minimum application address: %lx\n", siSysInfo.lpMinimumApplicationAddress);
printf("  Maximum application address: %lx\n", siSysInfo.lpMaximumApplicationAddress);
printf("  Active processor mask: %u\n", siSysInfo.dwActiveProcessorMask);


MEMORYSTATUS  memstatus;
memset(&memstatus, 0, sizeof(MEMORYSTATUS));
memstatus.dwLength = sizeof(MEMORYSTATUS);
GlobalMemoryStatus(&memstatus);
DWORD  mem = memstatus.dwAvailPhys;
DWORD  res = memstatus.dwAvailVirtual;
DWORD totalphy = memstatus.dwTotalPhys;
DWORD  totalvir = memstatus.dwTotalVirtual;
cout << "Total:" << totalphy << " ";
cout << "Free:" << mem << endl;
cout << "Physical memory in use:" << memstatus.dwMemoryLoad << "%" << endl;
system("pause");
}
0 0
原创粉丝点击