首 页 » VPS入门 » Xen和OpenVZ在内存管理方式的区别

Xen和OpenVZ在内存管理方式的区别

2010-04-02 | 浏览人数: 12,693次 | 分类: VPS入门 | 2条评论 | 查看评论 发表评论

很多人第一次使用xen vps,肯定会发现,自己的VPS什么都没跑,内存差不多就被吃光了,这点是一个误区, xen和openvz在内存管理上是有本质区别的。

xen更像独立主机,有buffer,cache,swap,所以你执行free可以看到这样的数据。

deepvps的linux VPS执行free命令显示如下:

[root@Linux /tmp]# free
             total       used       free     shared    buffers     cached
Mem:       4149156    4130412      18744          0      13220    2720160
-/+ buffers/cache:    1397032    2752124
Swap:      6289408        144    6289264

 第1行:
total 内存总数: 4149156
used 已经使用的内存数: 4130412
free 空闲的内存数: 18744
shared 当前已经废弃不用,总是0
buffers Buffer Cache内存数: 13220
cached Page Cache内存数: 2720160

关系:total = used + free

第2行:
-/+ buffers/cache的意思相当于:
-buffers/cache 的内存数:1397032 (等于第1行的 used – buffers – cached)
+buffers/cache 的内存数: 2752124 (等于第1行的 free + buffers + cached)

可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。

第3行:单独针对交换分区, 就不用再说了。

为了提高磁盘存取效率, Linux做了一些精心的设计,除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换),还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache有效缩短了 I/O系统调用(比如read,write,getdents)的时间。

如果感兴趣可以进一步参考文件/proc/meminfo,free命令就是根据它的信息生成的。free命令的源码可从procps-xxx-.src.rpm获取,xxx为版本号,比如procps-3.2.3-5.3.src.rpm。

原创文章如转载,请注明:转载自深度VPS [ http://www.deepvps.com ]
[复制本文链接发送给您的好友]
Tags:
  • 上一篇:
  • 下一篇:
  • 日志信息 »

    该日志于2010-04-02 08:58由 deepvps 发表在VPS入门分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过RSS 2.0订阅这个日志的所有评论。

    相关日志 »

    共有2条评论 [点此发言]

    1. 1楼 如何挑选最适合自己的美国VPS主机商 - 大海个人网站 2010年10月28日 23:15

      [...] 《Xen和OpenVZ在内存管理方式的区别》 [...]

    2. 2楼 VPS | 南龙的小站 2012年07月10日 05:18

      [...] 《Xen和OpenVZ在内存管理方式的区别》 [...]

    发表评论 »

    = 14 + 12 (防止机器人评论)

     疑问 冷笑 悲伤 坏蛋 感叹 微笑 脸红 大笑 吃惊 惊讶 困惑 酷 大声笑 恼火 古怪 转眼睛 给眼色 好主意 箭头 一般 哭了 绿人