When Users Go Berserk ®
AND
a B.O.F.H. tool
|
Hosted by
|
News!
|
- 05/03/27 - 1.2.2 release.
Linux Bugfix: get uid/gid from /proc/<pid>
instead of .../stat; man page examples fixed.
- 04/09/09 - 1.2.1 release.
Linux Bugfix: now considers both usr and sys time,
not only usr. (The other Unices already did this.)
- 04/04/10 - 1.2.0 release.
New features: parent/ancestor evaluation, minimum
user/group id.
- 03/07/12 - 1.0.9 release.
New zombie fix, very long job support,
Opteron binary.
- 02/09/01 - Wrote wrapper
for increased priority. (See right.)
|
Download 1.2.1
|
|
Requirements
|
|
O/S
|
|
Documentation
|
|
Author
|
|
|
AND
auto nice daemon
He did it again, comrade system administrator!
-- desperate Comrade Stanitzki,
after some DAU
again launched yet another un-niced 100+ CPU-hour job on a
shared workstation.
AND is here to help. It was born from the desparate cries of
a thousand regular users suffering from above DAU.
The auto nice daemon activates itself in certain intervals
and renices jobs according to their priority and CPU usage.
Jobs owned by root are left alone. Jobs are never increased
in their priority.
If you need to increase the priority of a job, like
cdrecord or MP3 or DVD players, this isn't really
a job for and(8) but for a wrapper. Due to popular demand,
I wrote such a wrapper.
Get the code.
AND is very flexible. The renice intervals can be adjusted
as well as the default nice level and the activation intervals.
A priority database stores user/group/job/ancestor tuples along
with their renice values for three CPU usage time ranges. Negative
nice levels are interpreted as signals to be sent to a process,
triggered by CPU usage; this way, Netscapes going berserk can
be killed automatically. The strategy for searching the priority
database can be configured.
AND also provides network-wide configuration files
with host-specific sections, as well as
wildcard/regexp support for commands in the priority database.
Iterating through the list of processes is a highly O/S-specific
task, so AND will only run on the O/Ses listed on the left.
|