Short:    System monitor and enhancer based on a shared library. V1.15
Author:   vogt@na.astro.it (Etienne Vogt)
Uploader: vogt@na.astro.it (Etienne Vogt)
Type:     util/moni
Replaces: util/moni/Sysmon*

INTRODUCTION

 Sysmon is a system monitoring and enhancing package based on a shared library
and Shell based support commands. It requires AmigaOS 2.04 or higher.
Installation of Richard Körber's Identify.library (util/libs/Identify.lha
on Aminet) is recommanded if you want the Sysmon monitor to be able to
identify expansion boards.
If your Amiga has a MMU (Memory Management Unit), it is also recommanded,
but not required, that you install Thomas Richter's mmu.library, available
from Aminet (util/libs/MMULib.lha).

Some of the features provided by Sysmon are :

 - Precise CPU usage timing for all tasks with very low overhead.
 - System message logging daemon like UNIX syslogd (useful for debugging).
 - Safe System shutdown script (useful for BBS's and networked machines).
 - Functions allowing to send/receive systemwide broadcast messages.
 - New Alert function (the Guru is back) allowing detailed logging.
 - New system functions related to tasks, including an enhanced and bug
   fixed task signal exception mechanism.
 - Executive compatible SysInfo.library to query tasks CPU usage (only
   cumulated CPU usage is currently implemented).

 Sysmon has been developped and tested on the following configurations :

 - A4000T 68060 AGA, 2 Mb Chip 40 Mb Fast, OS 3.5
   1 Gb SCSI HD + 9.5 Gb IDE HD
 - A500 68000 ECS, 1 Mb Chip 1.5 Mb Slow 2 Mb Fast , OS 3.1
   20 Mb IDE-XT + 50 Mb SCSI + 115 Mb SCSI HDs
 - A4000 68040 AGA + CV64/3D (CGfx 3), 2 Mb Chip 16 Mb Fast , OS 3.5
   250 Mb IDE + 1 Gb SCSI + 1Gb SCSI HDs
 - A3000 68030/68882 ECS, 2 Mb Chip 16 Mb Fast , OS 3.5
   100 Mb + 2 Gb + 4 Gb SCSI HDs
 - A500 68040(PP&S) ECS , 1 Mb Chip 2 Mb Fast16 8 Mb Fast32 , OS 2.04
   165 Mb SCSI HD
 - UAE 68020/68881 (Compaq AlphaServer 1000, Tru64 UNIX), 2 Mb Chip
   1.5 Mb Slow 8 Mb Fast16 16 Mb Fast32 , OS 3.5

 What has not been tested at all is operation on PPC accelerator boards
(I don't have one). The library itself completely ignores the PPC at
present but there is always the possibility that some of the patches made
to exec will be incompatible with the PPC software. Note that the PowerUp
PPC kernel is already considered 'unsupported' as it is not compatible with
Thomas Richter's mmu.library (which will be used more extensively in future
versions of Sysmon). Don't blame me or Thomas about this, we're not
responsible for the lack of information about the PowerUp kernel internals.
On the other hand, any information about the behaviour of this software with
the WarpUp PPC kernel installed will be welcome.
 
 This software is intended for experienced users. In particular, there
are no GUI tools available yet; so if you are a mouse-maniac user that
don't like typing Shell commands or editing ASCII configuration files,
I'm afraid that this software is not for you ;-) .


CHANGES

 V1.15b
   - SetTrapVectors crashed on the 68000 due to bad CPU check code.

 V1.15
   First official release of Sysmon V1, revision number not increased since
   the library is the same than in 1.15 beta.
   - Timer now also uses THOR's 64/32 integer division routine.
   - ShowSys now displays the Workbench release number in its banner rather
     then the KickStart one, this will distinguish disk only releases like
     3.5 (V44) or 2.1 (V38).
   - Sysmon monitor got some additional polish in the show memory command.
   - Added ExcptTest.c example code to the src directory.

 V1.15 beta
   - The automatic ColdReboot() caching broke on some configurations. It is
     now a configuration option activated with the new CACHEREBOOT keyword.
   - The OLDMMURESET option now also applies to software generated resets.
     This should help softkicked A3000s to reboot without wiping out the
     KickStart.
   - Halt REKICK will now clear the Capture and KickTag vectors in ExecBase,
     wiping out resident modules.
   - ShowSys and Sysmon now use a 64/32 integer division routine from Thomas
     Richter to convert EClockVals to regular time. As a side effect of no
     longer using floating point math, these commands also reduced in size.
   - The new SetTrapVectors command allows supervisor mode CPU exceptions to
     also be captured by the extended alert function. This command should be
     run just before SetPatch in the Startup-Sequence.

 V1.14 beta
   - The library now calls ColdReboot() via a cached vector to bypass patches
     that may interfere with resets. It needs to be able to reset the system
     even from supervisor mode or with all tasks frozen. Note that the
     mmu.library patch is still called as mmu.library will be opened before
     caching the destination address of the ColdReboot() vector.
   - smSendBroadcastMsg() didn't set the BMF_DOOMSDAY flag automatically.
     Fixed. The timeout as also limited to 1/10th second when a reset is
     pending.
   - Added OLDMMURESET config option to force reinstallation of the boot MMU
     config before reboot on a keyboard trapped reset. Use only on systems
     that fail to reset properly otherwise as sending a KBD_RESETHANDLERDONE
     command from supervisor mode is a bit dirty.
   - Updated StartSM, Broadcast and AlertDump commands. AlertDump will now
     translate the Guru Meditation number.
   - Added the BcMTest broadcast messages test client.
   - Added the Show KickTag and Show Broadcast commands to the Sysmon monitor.

 V1.13 beta
   First public beta release of Sysmon V1
   - More functions added to the library.
   - New config options, TRAPRESET, MOVEVBR, RAMLIBPATCH.
   - New support commands Broadcast, AlertDump.
   - Rewrote exec task signal exception handling completely.
   - Added new task scheduling states TS_HIBER, TS_WAITAND.
   - Rewrote exec Alert() routine, adding a reset resistant logging buffer,
     reintroducing the 'Guru Meditation' message and using mmu.library
     if available to properly write the alert data to the zero page.
   - Added a new alert.hook resident module (V41) to also provide the new
     display to deferred deadend alerts.
   - Added a countdown to the shutdown script and a QUICK option for the
     keyboard reset trap feature.
   - Added broadcast messages.
   - smHalt() now uses smFreeze() to stop other tasks instead of RemTask().
   - More commands implemented in the Sysmon monitor.
   - Added an Executive compatible SysInfo.library, with support only for
     cumulated CPU usage at present.
   - Documentation updated and converted to AmigaGuide format.


============================= Archive contents =============================

Original  Packed Ratio    Date     Time    Name
-------- ------- ----- --------- --------  -------------
   32405   10105 68.8% 01-Aug-00 14:38:18 +sysmon_lib.doc
   16396    7092 56.7% 19-May-00 12:25:48 +AlertDump
    1480     938 36.6% 19-May-00 12:27:14 +BcMTest
    1212     790 34.8% 19-May-00 12:25:52 +Broadcast
    1568     942 39.9% 23-Feb-00 18:44:54 +Freeze
     672     495 26.3% 23-Feb-00 18:45:00 +Halt
     784     581 25.8% 23-Feb-00 18:45:10 +Request
    1436    1005 30.0% 23-Feb-00 18:45:22 +RunBackground
     632     478 24.3% 12-Aug-00 17:41:02 +SetTrapVectors
    4460    2625 41.1% 01-Aug-00 15:23:52 +ShowSys
    4852    2725 43.8% 01-Aug-00 14:45:44 +StartSM
     776     561 27.7% 23-Feb-00 18:45:48 +SysLog
   32176   16760 47.9% 01-Aug-00 17:33:44 +Sysmon
    8996    5866 34.7% 01-Aug-00 15:39:24 +Timer
    1580     944 40.2% 23-Feb-00 18:46:12 +UnFreeze
    1840    1310 28.8% 23-Feb-00 18:46:16 +UnMount
     808     573 29.0% 23-Feb-00 18:46:22 +ValidateWait
    1805     602 66.6% 30-May-00 14:30:52 +sysmon_lib.fd
   15089    5222 65.3% 01-Aug-00 14:39:02 +sysmon.h
   13825    5101 63.1% 01-Aug-00 14:39:20 +sysmon.i
    2331     580 75.1% 06-Jun-00 18:10:24 +sysmon_pragmas.h
    1619     642 60.3% 30-May-00 14:29:56 +sysmon_protos.h
    1764    1138 35.4% 23-Feb-00 19:20:06 +SysInfo.library
   11580    7111 38.5% 01-Aug-00 14:43:16 +sysmon.library
    1951     832 57.3% 30-May-00 14:32:00 +Shutdown
     272     207 23.8% 01-Aug-00 14:39:38 +Sysmon.config
   27229    6816 74.9% 30-May-00 14:29:24 +AlertDump.c
    4332    1683 61.1% 30-May-00 14:29:24 +BcMTest.c
    3797    1448 61.8% 30-May-00 14:29:10 +Broadcast.c
    2710    1089 59.8% 02-Aug-00 15:00:38 +ExcptTest.c
    2787    1155 58.5% 30-May-00 14:29:12 +Freeze.c
    2310    1027 55.5% 30-May-00 14:29:14 +Halt.c
    3938     911 76.8% 01-Aug-00 14:41:08 +makefile
    2519    1164 53.7% 30-May-00 14:29:14 +Request.c
    3150    1338 57.5% 30-May-00 14:29:14 +RunBackground.c
   12908    4154 67.8% 01-Aug-00 15:14:14 +ShowSys.c
     353     213 39.6% 23-Feb-00 18:54:06 +smakefile
    4484    1407 68.6% 23-Feb-00 18:54:02 +SysInfo.c
    2687    1133 57.8% 30-May-00 14:29:18 +SysLog.c
    5612    1967 64.9% 01-Aug-00 15:35:54 +Timer.c
    2809    1153 58.9% 30-May-00 14:29:20 +UnFreeze.c
    6704    2337 65.1% 30-May-00 14:29:22 +UnMount.c
    2740    1204 56.0% 30-May-00 14:29:22 +ValidateWait.c
   76814   26677 65.2% 16-Aug-00 12:39:32 +Sysmon.guide
-------- ------- ----- --------- --------
  330192  132101 59.9% 28-Aug-100 19:45:48   44 files
