遇到一些无良的idc超卖严重的话分配到我们手里的内存可能并不是标配的内存,这时可以用以下脚本来检测一下。
先关闭swap,这样测出来的才是内存,或者不关闭直接测试然后去除swap值就是真实可用内存了。
关闭SWAP sudo swapoff -a (openvz貌似无效)
开启SWAP sudo swapon -a
以下代码是从大神那里扒来的,我也看不懂。
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
int main(){
int z;
for(z=1;z<16384;z++){
void *t=malloc(1048576);
memset(t,1,1048576);
printf("Allocated:%dM\n",z);
}
return 0;
int i;
scanf("%d\n",&i);
}
利用代码
wget http://d.zmrbk.com/vps/test.c && gcc test.c && ./a.out
wget http://d.zmrbk.com/vps/zmrbk.c && gcc zmrbk.c && ./a.out
追梦人博客
评论前必须登录!
注册