Solaris 可调参数参考手册

desfree

说明

指定系统上始终可用的首选内存量。

数据类型

无符号整数

缺省值

lotsfree / 2

范围

最小值为 256 KB 与物理内存的 1/128 之间的较大值,以页表示,其页大小为 getpagesize 的返回值。

最大值为物理内存页数。最大值不应大于物理内存的 15%。系统不会强制执行此范围,“验证”部分介绍的内容除外。

单位

是否为动态

是,除非执行添加或删除内存的动态重新配置操作。此时,将值重置为 /etc/system 文件中提供的值或者根据新物理内存值计算得出的值。

验证

如果 desfree 大于 lotsfree,则将 desfree 设置为 lotsfree / 2。不显示任何消息。

含义

应始终维护以下关系:lotsfree 大于 desfree,而后者大于 minfree

负面影响

增大此参数的值会产生多种负面影响。当新值接近或超过系统上的可用内存量时,将出现以下情况:

  • 无法处理异步 I/O 请求,除非可用内存超过 desfree。增大 desfree 的值可能会导致拒绝原本可以成功执行的请求。

  • 将 NFS 异步写入作为同步写入执行。

  • 较早地唤醒交换程序,并且交换程序的行为偏向于更加主动的操作。

  • 系统可能无法预先测出许多可执行页进入系统时出现的故障。这种负面影响会导致应用程序的运行速度可能慢于原本可以达到的速度。

何时更改

对于工作负荷相对稳定以及内存量较大的系统,可以降低此值。可接受的最小值为 256 KB,以页表示,其页大小为 getpagesize 的返回值。

承诺级别

不稳定