017 系统内存信息 内存大小 空闲内存 5

摘要:
5DWORDdwAvailPhys;//返回可用物理内存大小(字节)。6DWORDdwTotalPageFile;//显示页面文件中可以存在的字节数。请注意,此值不表示磁盘上页面文件的实际物理大小。8DWORDdwTotalVirtual;//返回调用进程的用户模式部分的所有可用虚拟地址空间(以字节为单位)。

# 017 系统内存信息 内存大小 空闲内存 5

  GetSystemInfo 函数
    函数原型:

1 void WINAPI GetSystemInfo( _Out_ LPSYSTEM_INFO lpSystemInfo);

      参数1:lpSystemInfo [out]
      返回一个 SYSTEM_INFO 结构体指针信息

  结构体原型:

 1 typedef struct _SYSTEM_INFO {
 2     union {
 3         DWORD  dwOemId;
 4         struct {
 5                 WORD wProcessorArchitecture;
 6                   WORD wReserved;
 7         };
 8   };
 9     DWORD     dwPageSize;
10     LPVOID    lpMinimumApplicationAddress;
11     LPVOID    lpMaximumApplicationAddress;
12     DWORD_PTR dwActiveProcessorMask;
13     DWORD     dwNumberOfProcessors;
14     DWORD     dwProcessorType;
15     DWORD     dwAllocationGranularity;
16     WORD      wProcessorLevel;
17     WORD      wProcessorRevision;
18 } SYSTEM_INFO;

  SYSTEM_INFO结构体参数说明:
    wProcessorArchitecture: Word; {处理器的体系结构}
    wReserved: Word;  {保留}
    dwPageSize: DWORD;  {分页大小}
    lpMinimumApplicationAddress: Pointer;{最小寻址空间}
    lpMaximumApplicationAddress: Pointer;{最大寻址空间}
    dwActiveProcessorMask: DWORD; {处理器掩码; 0..31 表示不同的处理器}
    dwNumberOfProcessors: DWORD;  {处理器数目}
    dwProcessorType: DWORD; {处理器类型}
    dwAllocationGranularity: DWORD; {虚拟内存空间的粒度}
    wProcessorLevel: Word;  {处理器等级}
    wProcessorRevision: Word);  {处理器版本}

  GlobalMemoryStatus 函数
    Win32 API函数。 此函数用来获得当前可用的物理和虚拟内存信息

    函数原型:

1 void WINAPI GlobalMemoryStatus(_Out_ LPMEMORYSTATUS lpBuffer);


  参数1:lpBuffer [out]
    返回一个 lpBuffer MEMORYSTATUS 结构体

 1 typedef struct _MEMORYSTATUS { 
 2     DWORD dwLength;                         // MEMORYSTATUS结构的大小
 3     DWORD dwMemoryLoad;                 // 返回一个介于0~100之间的值,用来指示当前系统内存的使用率
 4     DWORD dwTotalPhys;                     // 返回总的物理内存大小,以字节(byte)为单位。
 5     DWORD dwAvailPhys;                     // 返回可用的物理内存大小,以字节(byte)为单位。
 6     DWORD dwTotalPageFile;                 // 显示可以存在页面文件中的字节数。注意这个数值并不表示在页面文件在磁盘上的真实物理大小。
 7     DWORD dwAvailPageFile;                 // 返回可用的页面文件大小,以字节(byte)为单位。
 8     DWORD dwTotalVirtual;                     // 返回调用进程的用户模式部分的全部可用虚拟地址空间,以字节(byte)为单位。
 9     DWORD dwAvailVirtual;                     // 返回调用进程的用户模式部分的实际自由可用的虚拟地址空间,以字节(byte)为单位。
10 } MEMORYSTATUS, *LPMEMORYSTATUS;
 1 #define UNICODE
 2 #include <windows.h>
 3 #include <stdio.h>
 4 
 5 int main()
 6 {
 7     SYSTEM_INFO sysInfo;
 8     GetSystemInfo(&sysInfo);
 9     printf("页面大小:%d
",sysInfo.dwPageSize);
10     printf("分配颗粒:%d
",sysInfo.dwAllocationGranularity);
11     printf("用户区开始地址:0x%d
",sysInfo.lpMinimumApplicationAddress);
12     printf("用户最大地址:0x%d
",sysInfo.lpMaximumApplicationAddress);
13     
14     MEMORYSTATUS memStatus;
15     GlobalMemoryStatus(&memStatus);
16     
17     printf("使用比:%d%%
", memStatus.dwMemoryLoad);
18     printf("总内存大小:%x%%
", memStatus.dwTotalPhys);
19     printf("可内存大小:%x%%
", memStatus.dwAvailPhys);
20     return 0;
21 }

017 系统内存信息 内存大小 空闲内存 5第1张

免责声明:文章转载自《017 系统内存信息 内存大小 空闲内存 5》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇odoo中def init(self):linux应用之nginx的源码安装及配置(centos)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

收集vcftools所有用法

VCFtools用来处理VCF文档。vcftools--vcftest.vcflesstest.vcf|vcftools--vcf-Applyingafilter可以把筛选的突变写入一个新文件。--recode表示输出筛选的内容,--recode-INFO-all保留所有的INFOfields的内容。default情况下,INFOfields不写,因为筛选会...

libffi

Thisislibffi.info,由libffi.texi生产的bymakeinfo版本5.1。本手册适用于libffi,一个可移植的外国函数接口库。版权所有(C)200820102011redhat,股份有限公司。许可授予复制、分发...

开源项目推荐:Qt有关的GitHub/Gitee开源项目

https://www.froglogic.com/windeployqthttps://doc.qt.io/Qt-5/windows部署。htmlhttps://wiki.qt.io/Deploy_an_Application_on_Windowshttps://github.com/lucasg/Dependencieshttp://www.depend...

node.js

而同样,Node也提供了child_process.fork来创建Node的子进程。请参考文章后的multi-node的性能测试,可以看到在多Node进程的情景下,响应请求的速度被大幅度提高。在文章的写作中,Node最新发布的0.5.10版本新增了cluster启动参数。参数的使用方式如下:nodeclusterserver.js启动Node的时候,在附加了...

ROS学习之日志消息

ROS日志系统的核心思想是使程序生成一些短文本字符流,这些短文本字符是日志消息。ROS_…_ STREAM_ THROTTLE宏的每个实例在第一次执行时都会生成一条日志消息,随后的执行将被忽略,直到经过指定的时间间隔。...

centos登录密码正确但一直报login incorrect错误(错误赋予权限)

3、 若要修改文件权限,请在无法登录之前仔细调用操作。回想一下,您以前在Linux中遇到过由文件权限引起的问题。尝试检查系统日志/var/log/secure。...