!TaskUsage
v1.61 (09 Oct 2003)
The !TaskUsage application enables the processor usage of a RISC OS computer to be easily monitored. An outline of the facilities of !TaskUsage follows:
- The !TaskUsage IconBar icon shows a graph of the Total processor usage over the last few minutes. Module usage is Red, Application usage is Blue.
- An optional window displays the recent average processor usage for each Task, modeled on the TaskManager Tasks storage display.
- An optional window displays the recent average processor usage for each Wimp Reason Code, and the number of Wimp Polls being processed.
- The Reason Code and Poll details can be for all Tasks, or for a specific Task.
- Any Reason Codes masked out by a specific task are shaded, helping to identify reason code masking problems.
- Tasks can be asked to Quit, like using the TaskManager display.
- Low memory overhead - only uses about 15k memory (RMA) on any machine.
- Low processor overhead - uses less than 1% processor on a Strongarm with 100 tasks.
- Runs as a Module Task on any RISC OS v3+ machine.
- The IconBar icon has a configurable appearance. Coloured, Plinth, Well, Wall, and Channel designs are provided, enabling it to match your desktop preferences.
- The IconBar icon has a configurable width, from 30 seconds to 9 minutes, enabling different timespans to be visible.
- The graphical bars can be configured to show the maximum reached.
- Tested on RISC OS v4 *and* RISC OS v5 Iyonix
- Revised Help information in StrongHelp format for ease of use.
- Tasks can have Nulls masked out.
- No longer uses Timer1, so will not be affected by any other applications, but timing now is more accurate.
The application grew from a theory that some tasks seemed to take more processing power than they should, either permanently or intermittently, making the desktop sluggish. The main causes seems to be programmers simple mistakes, or programmers being lazy, and ignoring the exhortation in the Programmer's Reference manual, page 3-116:
You can disable some of the event codes: they are neither checked for nor returned, and need not have any handlers provided. You must do this for as many codes as possible, especially the Null_Reason_Code, if your task is to run efficiently under the Wimp.
However, all the processor monitoring facilities I could find were not what I felt was required, so I wrote !TaskUsage.
Examples of Task Usage Displays
Some IconBar Icons
Task Processor Usage Window
Task Reason Code Usage Window
Change History
v1.32 10/01/99 Initial WWW release version
v1.33 23/02/99 Major changes to improve Configuration. Trapped another application stealing Timer 1.
v1.34 23/02/99 Beta Test version
v1.35 15/03/99 Release version
v1.36 12/04/99 Minor changes + Task Range bug fix
v1.37 15/05/99 Reason window brought to front, and Task Quit facility
v1.38 22/06/99 Set HighTask at GetNextTask & UpdateTaskList not PostFilter
v1.39 26/06/99 Added check on Timer1 usage & Module CPU colour to IconBar
v1.40 02/09/00 Added Stop Nulls option. Changed !Help to StrongHelp format and updated it
v1.50 16/03/02 Removed use of Timer1 and improved timing. Added Reset Max. Various optimisations and bugfixes.
v1.51 18/03/02 Fixed problem with Config & Apps totals
v1.52 14/04/02 Minor bug fix and corrected TestProgs Directory.
v1.60 23/03/03 Release version with 32-bit compatibility
v1.61 09/10/03 Fixed Illegal window handle caused by Aemulor v2.1. Added Toolbox events to Reason Code display. Aligned Reason Code numbers and text better
How to obtain Task Usage
To download please click on
!TaskUsage (35 kByte Zip Archive)
E&OE. © Copyright Martin Avison, 2005.
Last updated: Fri 29th April 2005
Please send any queries or comments to
This site is hosted by Force9 Internet