* Kevin <dedke01 at hotmail.com> [2007-05-31 08:44]:
> In Solaris 10 we have the following two kernel parameters:
> rlim_fd_max  - which has a default value of 65536
> rlim_fd_cur - which has a default value of 256
 
  These are the default settings for the
  process.max-file-descriptors resource control, so that it remains
  compatible with the previous resource limit implementation.

> However to see what these values are, you run the following command:
> 
> kstat -n file_cache 
> 
> and look at the buf_total or buf_max - but they don't match the 65536 number.

  The file_cache is a kernel memory cache for kernel file objects;
  kstat(1) is showing the kernel statistics reported by that cache.  The
  file_cache contains all the file descriptors allocated for processes
  by the kernel, but none of its statistics will match the defaults for
  the maximum file descriptor limit.

> On my system I have rlim_fd_cur set to 576 and the max at the default,
> which I confirmed with a 'sysdef' but when I run a kstat -n it comes
> back as 1740.  
> 
> Can anyone explain the difference?

  If you wish to see the effect of changing the rlim_fd_* settings (via
  /etc/system, say), use

  # plimit 1

  which will report init(1M)'s rlimit settings.  (You can also use prctl
  to see more details on the kernel's representation:

process.max-file-descriptor
        basic             256       -   deny                                 1
        privileged      65.5K       -   deny                                 -
        system          2.15G     max   deny                                 -

  )

  - Stephen

-- 
sch at sun.com  http://blogs.sun.com/sch/

Reply via email to