免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1468 | 回复: 1
打印 上一主题 下一主题

[Linux] —— 请教一个关于虚拟内存使用的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-01-28 10:30 |只看该作者 |倒序浏览
本帖最后由 0x5a5a 于 2013-01-28 10:30 编辑

大家好,我写了两个测试程序,差别只在于是否 new 了一个对象,但是虚拟内存使用量相差有 64M。

不过同样的两份代码,在其它的机器上编译运行就没有这个问题,请大家帮看看,是不是环境设置有什么问题?谢谢!

vm_n.cpp —— 不创建对象
vm_y.cpp —— 创建对象
  1. cat ./vm_n.cpp
  2. #include <unistd.h>
  3. #include <pthread.h>

  4. class TestClass
  5. {
  6.   public:
  7.     TestClass() {}
  8. };


  9. void* fo(void* param) {
  10.   //TestClass* c = new TestClass();
  11.   while(1) sleep(1);
  12. }

  13. int f() {
  14.   pthread_t tid;
  15.   pthread_create( &tid, NULL, fo, NULL);
  16. }

  17. int main() {
  18.   f();
  19.   while(1) sleep(1);
  20. }
复制代码
  1. cat ./vm_y.cpp
  2. #include <unistd.h>
  3. #include <pthread.h>

  4. class TestClass
  5. {
  6.   public:
  7.     TestClass() {}
  8. };

  9. void* fo(void* param) {
  10.   TestClass* c = new TestClass();
  11.   while(1) sleep(1);
  12. }

  13. int f() {
  14.   pthread_t tid;
  15.   pthread_create( &tid, NULL, fo, NULL);
  16. }

  17. int main() {
  18.   f();
  19.   while(1) sleep(1);
  20. }
复制代码
  1. # g++ ./vm_y.cpp -o vm_y -lpthread  
  2. # g++ ./vm_n.cpp -o vm_n -lpthread

  3. # ps -ef|grep vm
  4. root     17886 15362  0 10:05 pts/1    00:00:00 ./vm_n
  5. root     17888 15362  0 10:05 pts/1    00:00:00 ./vm_y
  6. root     17891 17546  0 10:05 pts/0    00:00:00 grep vm

  7. # top
  8.   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                            
  9. 17886 root      20   0 24268  964  800 S  0.0  0.1   0:00.00 vm_n                                                               
  10. 17888 root      20   0 89804  976  812 S  0.0  0.1   0:00.00 vm_y   
复制代码

论坛徽章:
0
2 [报告]
发表于 2013-01-29 09:48 |只看该作者
顶起,是否有什么系统设置相关?

我看 unlimit 和其他的机器也差不多
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP