Defunct Processes; Maximum Process

[LEFT]I'd like to remove this defunct processes without rebooting. Or, I could remove this defuncts when the maximum allowable process is nearly reached, then send an email to the user/team. How can I determine the maximum allowable process that a server can handle? Any thoughts?

[EMAIL="Jin@PRODUCTION"]

Jin@PRODUCTION: > uname -a; ulimit -a
HP-UX PRODUCTION B.11.11 U 9000/800 313767787 unlimited-user license
time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         2097152
stack(kbytes)        131168
memory(kbytes)       unlimited
coredump(blocks)     4194303
nofiles(descriptors) 10000

[/EMAIL]
[/LEFT]

---------- Post updated at 11:57 AM ---------- Previous update was at 11:25 AM ----------

Also, please note that we are facing performance issues and we can't just reboot the server as it is in production. So we are creating some precautionaries.

Im at home this week .. so difficult to confirm, but I would say try:

 sysdef|grep nproc 

Performance issue? defunct processes are to look for, with process still running after XXXX time (more than 10 hours are suspicious, try to find out if normal or not...)
then look at swap utilisation, when a system is starting to write intensively to swap on disk, it does seriously slow the system...

As well as kernel value the maximum number of processes allowed on the system (nproc) also check the maximum number of processes allowed for a single normal user (maxuprc).

You cannot remove processes that appear as "<defunct>" in "ps -ef". Most will disappear after a few hours. Any that persist are almost certainly stuck on I/O and only a reboot will clear them.

If by "defunct" you mean something else, please explain a bit more.