sysv semaphores
Robin Becker
robin at reportlab.com
Tue Nov 14 23:56:28 UTC 2006
Damian Wiest wrote:
.........
>> You'll want to use either sysctl(8) to change the settings dynamically, or
>> use /etc/sysctl.conf to modify the settings permanently. I'm not sure if
>> there's a benefit to rolling a new kernel versus using sysctl.conf, or if
>> things even work that way anymore.
>>
>> # sysctl -a | grep seminfo
>>
>> kern.seminfo.semmni=10 # number of semaphore identifiers
>> kern.seminfo.semmns=60 # number of semaphores in system
>> kern.seminfo.semmnu=30 # number of undo structures in system
>> kern.seminfo.semmsl=60 # max number of semaphores per id
>> kern.seminfo.semopm=100 # max number of operations per semop call
>> kern.seminfo.semume=10 # max number of undo entries per process
>> kern.seminfo.semusz=100 # size in bytes of undo structure
>> kern.seminfo.semvmx=32767 # semaphore maximum value
>> kern.seminfo.semaem=16384 # adjust on exit max value
>>
>> Those comments are from /usr/include/sys/sem.h
>>
>> -Damian
>
> Sorry, I forgot to mention a few things.
>
> You should become familiar with ipcs(1) as it will allow you to query
> the current state of SysV IPC facilities. You'll probably find yourself
> manually deleting semaphores depending on how well that extension cleans
> up after itself during testing.
>
> IIRC, the kernel maintains some in-memory datastructures to keep track
> of semaphores. I believe increasing the maximum number of semaphores
> will take up a negligible amount of main memory.
>
> If you're interested, the "Design and Implementation of the 4.4 BSD
> Operating System" (ISBN # 0201549794) has great coverage of this stuff.
........
thanks very much all very useful info. Someone else recommended looking
at these options
kern.ipc.semmap=180
kern.ipc.semmni=160
kern.ipc.semmns=210
kern.ipc.semmnu=180
kern.ipc.semmsl=210
kern.ipc.semopm=250
kern.ipc.semume=160
kern.ipc.semusz=92
kern.ipc.semvmx=32767
kern.ipc.semaem=16384
and on my 6.1 system I see these with sysctl -a | grep ipc, however,
# sysctl -a | grep seminfo
/usr/RL_HOME/users/robin:
#
I guess they've been renamed.
--
Robin Becker
More information about the freebsd-questions
mailing list