P E N I X
VICTIMISE(1)              USER COMMANDS                  VICTIMISE(1)
PENIX            OPERATING SYSTEM DOCUMENTATION                 PENIX


NAME

     victimise - optimise system performance


SYNOPSIS

     victimse [ - ] adejrstyDS [percentage] [time] [count]
                               [processid]


DESCRIPTION

     victimise is a  last-ditch performance optimiser; if there is a
     task that requires  priority  performance,  this command can be
     used  to  temporarily increase  cpu  usage  and  speed  of disk
     access,  by  degrading the performance of an other user, or  of
     all other users.   It can also be used for purposes of revenge,
     or as a joke,  or to mess with the minds of the users  (`wierd,
     the system was running great a few minutes ago...'  `well, it's
     okay over here...'  `hang on, it's running again...').  As this
     is a potentially powerful command, its use is restricted to the
     rooted(c)  user  and  the  `games' account.  The options can be
     grouped into two sorts:  those that act on a single other user,
     and those that act on a number of other users, in an attempt to
     spread the load.


FUNCTIONS

     a    anyone.   This  option  will  select  one other currently-
          running process and degrade its performance, to the degree
          specified  in  the [percentage] argument.   The process is
          selected completely at random, and may include the account
          that is issuing the command.

     d    darwinian (single-process mode).   This option selects the
          one other task  on  the system that is  least likely to be
          affected by  a  serious performance decrease, and does so.
          By an algorithm far too arcane  to  go into in the context
          of a simple MAN page,  it also chooses the process that is
          least likely to be able to hit back, such as anyone logged
          in under the  `games'  account, anyone running a compiler,
          or  anyone  who  presses the `help' key  on their terminal
          more than once every ten minutes.

     e    everyone.   This option  de-optimises  every other process
          currently  running,  to  the  sum  effect specified in the
          [percentage]  argument.    Each  process,   regardless  of
          origin,  is  decreased  equally  (excepting  the Caenobite
          processes,  of course.   We tried hitting them.   But they
          hit back harder.)

     j    jump.  This option creates  a  table of likely victims and
          then proceeds to hit each one, successively and at random,
          degrading  the   selected  process  for  the  full  effect
          specified  in  [percentage],  for  the  time  specified in
          [time].

     r    rotation.   This option  is  similar to the `jump' option,
          but  the processes are  hit in turn rather than at random,
          for the period specified in [time].

     s    specific.  This option  selects  the  process specified in
          [processid] for the full effect of de-optimisation, and is
          included for purposes of revenge only.

     t    temporary.  When included,  this option specifies that the
          optimisation  effect  should  only  last  for  the  next n
          commands,  as  specified  in the  [count] argument,  after
          which performance will return to normal.

     y    yourself.   This option  reduces your own performance,  to
          the benefit of  all the other users on the system.   It is
          regularly included  in  the  .DoThisBefore  file  of  most
          users.

     D    darwinian (multiple process mode). As specified in the `d'
          option,  except  for  more  than one user,  the load being
          spread over  the  selected tasks  Darwinian-ly,  i.e.  the
          weakest tasks  copping the most load.   This  option  does
          tend to stop some tasks completely until it is finished.

     S    Statistical.   This option  seeks  the  process  using the
          least  resources  and  de-optimises  it to the full effect
          specified in [percentage].


EXAMPLES

      to optimise the system:

          victimise -rt 70 5 2

      this will degrade  all of the other  processes  on the system,
      to the tune of  70% of their performance,  one after the other
      at  five-second intervals,  for the duration of the running of
      the next two commands issued  to  the process  performing  the
      command.


FILES

     /typical/who's_who               System  task table;  used  by  the
                                      aengel Lucifer  when compiling the
                                      hit-list  table  for the `e', `j',
                                      `r' and `D' options.

     /uselss/helpcount                Counts  the  number  of times each
                                      user   presses   the  `help'  key,
                                      expressed  as  Hits  Per Every Ten
                                      Minutes.  This count is maintained
                                      as  part  of  the  regular  system
                                      housekeeping.

     /uselss/spew_bucket              All   mail   to  the  Sysadmin  is
                                      directed   into   this  while  the
                                      victimise command is in use, since
                                      they  are  invariably  flames of a
                                      highly  derogatory   and  personal
                                      nature.   It  saves  the Sysadmins
                                      doing it themselves.


SEE ALSO

     bollx(1), crp(2), argle_bargle(3), roflgo(4), woof(5),
     kill(3), mangle(2), castrate(2), knacker(1), beg(2), plead(3),
     threaten_with_extreme_violence(1), submit(2).


BUGS

     If the `temporary' flag is used, any daemons, maenads, goelems,
     etc.,  spawned while the optimisation is in effect  will retain
     this  `blessed'  state until  they die of their own accord,  or
     until the Sysadmin does something about it.

     The n option would be slow, but this function doesn't have one.

     Due to a bug  in  the randomisation  algorithm, it is possible,
     when using the  `jump'  option,  that  the  same  task  may  be
     selected  for  de-optimisation  twenty-three  successive times.
     this is expected to be  rectified at  the next revision  of the
     operating system.   No, really.  Leo Schwab is going to write a
     good randomiser for us.

     The e option can be slow.

     The `multiple Darwinian' function can completely stop some less
     important  tasks,  but  it  does  seem to have a preference for
     anyone  using  the  `wi'  editor,  with  the result that screen
     updates can be so slow as to be nonexistant.

     There is  no way to follow,  selectively,  symbolic links.  And
     unless there's a turnaround in the economy soon, there probably
     won't be.

     -----
     Sunburne Computer, Inc. 17 August 1992