现在的位置: 首页FreeBSD>正文
FreeBSD内存分配的优先顺序
2011年04月19日 FreeBSD 评论数 2 ⁄ 被围观 7,461 次+

当FreeBSD系统上线运行一段时间后,用top命令查看内存的使用情况,会发现Free内存已经变得很小了。而在同样应用的情况 下,Windows Server的Free内存会有很大的剩余。这是为什么呢?难道FreeBSD系统比Windows Server还要消耗内存?
答案当然是否定的。其实,这是由于FreeBSD的内存管理与Windows Server的不同。FreeBSD会最大化的利用系统中的内存,系统中有多少内存,FreeBSD都会尽量去使用。
使用top命令,你会发现内存被分为以下几种。
Active,在一段时间内被使用的内存
Inact(Inactive),在一段时间内没有被使用的内存
Wired,挂起的内存,系统内核使用的内存
Cache、Buf,顾名思义,用于缓存,其中的数据有可能被再次使用,避免从磁盘中读取,加快读取速度
Free,系统中空闲的内存

当需要使用内存时,是以以下优先级来进行的。

Free > Cache(Buf) > Inact > Active

所以,当Free变小时,不必担心内存不够用,只要Free内存还有,就表示内存够用。这正是FreeBSD内存管理的优越性,最大化利用内存,使系统的整体性能得到充分的发挥。只有当Swap使用较多时,我们才应该考虑增加内存了。

本文地址:http://www.92csz.com/48/143.html
如非注明则为本站原创文章,欢迎转载。转载请注明转载自:moon's blog
 

目前有 2 条留言 其中:访客:1 条, 博主:1 条

  1. nosun : 2012年10月30日19:59:43  1楼

    请教一个问题,我的freebsd机器,为什么swap很少看到使用呢?一般都是free?

    • clairelume : 2012年11月07日11:11:34

      一般情况下物理内存够用的话,swap分区是不会被使用的,这点不同于其他linux系统,当swap分区出现被使用的情况的时候,说明物理内存已经不够用了,可适当增加物理内存 :razz: