Classic Computer Magazine Archive COMPUTE! ISSUE 123 / NOVEMBER 1990 / PAGE A-33

SYSWATCH

MARK BRANNON

Sys Watch is a system monitor that lets you observe and control your Amiga's inner workings. It gives you up-to-date information on your disk drives, memory, and all the programs currently running. You can change memory and program priorities on the fly to determine which type of memory is utilized first (fast or chip RAM) and which programs get the most attention from the computer's multitasking operating system. SysWatch even has a special mode that automatically increases the priority of the program you're currently using to ensure that the program is not slowed down by any other software that may be in use.

SysWatch's Intuition interface makes it fast and easy to use for beginners and experts alike.

Getting Started

SysWatch may be run from either the Workbench or the CLI. To run the program from the Workbench, simply double-click on the SysWatch icon. However, SysWatch is designed to be included in your startup-sequence. If you wish to have SysWatch start up when you boot your computer, copy it to your C (Command) directory and add the following line to the startup-sequence file in the S (Script) directory of your system disk:

C:SYSWATCH

If you want SysWatch to start up without displaying its control panel, use the Q (Quiet) option:

C:SYSWATCH Q

You don't need to use the RUN command when you start SysWatch; it detaches itself from its CLI window when it's run.

Only one copy of the program may be running at any one time. The screen flashes if you try to run SysWatch twice without terminating the first SysWatch.

Using the Program

SysWatch opens a window on the currently active screen (see the screen shot on page A-26). If you run SysWatch from the CLI using the Quiet option, no window appears, but you can open one by pressing Left Alt-F10. This is one of SysWatch's hot keys. Another hot key, Left Alt-F8, closes the SysWatch window but leaves the program running so you can call it up again with Left Alt-F10. Of course, you can close the window by clicking on its close box as well.

The main SysWatch window is divided into four areas. Each area deals with a different aspect of the computer: disk drives, memory in use, memory regions, and tasks. The boxed title found above each area works as an update gadget. Clicking on any one of these update gadgets extracts the latest information from the Amiga's operating system and displays the new data. If you wish to update all four areas at once, click on the Update All gadget located near the bottom right portion of the window.

Disk Drives

SysWatch's Disk Drives area presents drive and volume information in a manner similar to the CLI's Info command, with a few exceptions. Free and used disk space is represented in kilobytes (K), megabytes (M), or gigabytes (G), as appropriate. The Info command gives the amount of free and used disk space in disk blocks.

Most of SysWatch's disk drive information—such as the unit name (DHO:, for example), the size of the disk in the drive, how full it is, its read/write status, and its name—is self explanatory. One piece of information that may need explanation, however, is the F-S column. This column tells you what type of file system each drive uses. An OFS in this column means that the drive uses the Old File System, where each disk block holds 488 bytes of file data. OFS is the older, slower file system that's typically used with floppy disks. FFS means the drive uses the new Fast File System, which uses all 512 bytes in a disk block for file storage. Nearly all hard drives use the Fast File System.

Clicking on a disk drive entry opens the Device Information window. This window displays in-depth data on the drive selected and on the disk found within that drive. It shows what device driver the disk drive uses (usually trackdisk.device for floppy drives), the unit number (DFO: is unit 0, for example), the number of errors found on the disk (hopefully 0), and the drive's controlling task and that task's location in memory (useful if you want to adjust a drive's priority using SysWatch's Task List).

The bottom half of the Device Information window provides some low-level information on the disk, including a graphic display of the disk's sector usage. This display gives a visual representation of how fragmented the disk is. The more holes found in the solid areas of the display, the more fragmented the disk is. Disk fragmentation can occur when you tend to add and delete files often. Severe fragmentation can make disk access considerably slower. If you find that you have a severely fragmented disk, you can use a disk optimizer, such as The Disk Mechanic from Lake Forest Logic, to remedy the problem.

Other information provided about this disk include the disk's low and high cylinder numbers (which determine how many tracks the disk has available), the number of heads on the disk drive (double-sided disks require two heads—one for each side), the number of sectors per track, and the disk's total storage capacity (number of cylinders × the number of drive heads × the number of sectors per track × 512). The total storage value differs from the disk size value, which is given in the upper left portion of this window. The disk size depends on the file system used. The total storage value represents the actual number of raw bytes that can be stored on the disk.

You should note that the CLI's 1.2 and 1.3 Info command has a bug regarding disk capacity. Info assumes that every disk utilizes 512 bytes per block, regardless of the actual value. SysWatch calculates a volume's size based on the actual number of data bytes per block.

Memory in Use

The Memory in Use section of SysWatch displays the total amount of RAM available to the computer, the amount of RAM currently in use, the amount of free chip RAM, the amount of free fast RAM, and the total amount of free RAM.

SysWatch reads the amount of free RAM before it opens its window, so you know how much memory you have when the SysWatch window isn't present. Click on the Memory in Use gadget (the box that lists the total RAM and the amount of RAM in use) to update the values so they reflect the computer's current memory status.

Memory Regions

The Memory Regions area displays all memory regions recognized by the operating system. Regions with the highest priority are listed first. Clicking on an entry opens a Memory Region Information window. This window displays all available information about the selected memory region—its memory type (fast or chip), its name, its priority, its size, how much of it's in use, and its starting and ending address. All memory sizes are shown in bytes.

You can change the memory region's usage priority with the window's Adjust Priority slider. This gives you exact control over which memory region your programs load into. Memory regions with the highest priority are used first. Your new priority won't become effective until you click on the Set New gadget.

The Memory Region Information display also shows how fragmented the memory region is and gives the size of the largest contiguous fragment. Memory fragmentation is normal on a multitasking computer, but poorly written programs can aggravate the fragmentation problem. If memory becomes too fragmented, programs that require large chunks of RAM may not be able to run, even if the combined amount of free memory available is very large.

The Task List

The last of the data display areas is the Task List display. This area lists all tasks (programs, CLI commands, device drivers, input handlers, and so on) that are currently running. It lists tasks by name, priority, type, and CLI number (if the task is associated with a CLI). As with SysWatch's other three areas, Task List does not automatically update itself. You must click on the Task List gadget to update the list.

SysWatch usually lists tasks by their official name (the name logged into the operating system). However, if a program is run from the CLI using the RUN command, that task's official name is always Background CLI, and programs run from the Shell have a task name of AmigaShell. This can be confusing. For that reason, CLI tasks are listed by the name you entered to run the program.

Clicking on a task entry opens the Task Information window. This window displays additional information about the selected task, beginning with its official task name. If the task is a CLI with a command executing, the command name is displayed exactly as it was entered at the CLI. The task's status can be running, ready to run, or waiting, depending upon the task's processor status.

The information window also lists the memory location of the task in question. You can pin down a disk drive's device handler by comparing the handler's name and task address found in the Device Information window with the name and address found in the Task Information window. When you find the correct task, you can use the Task Information window to adjust that task's priority. You might want to do this if your hard drive causes the entire machine to pause during a disk access. As with adjusting memory region priorities, your new priority doesn't take effect until you click on the Set New gadget.

Arbitrary limits have been established for adjusting a task's priority: You cannot set priorities below -20 or above +20. If a task's priority is set too high, it can seriously degrade your computer's performance. As a rule of thumb, a user task should never be set higher than the system's input.device task. The system's input.device task usually has a priority of + 20.

Hot Keys and Other Controls

Closing the Sys Watch window (by clicking on the window's close box or by pressing Left Alt-F8) doesn't kill the program, it only puts it to sleep. You can reopen the window by pressing Left Alt-F10. To quit SysWatch altogether, click on the EXIT gadget located in the lower right corner of the SysWatch window or press Left Alt-Del. Left Alt-Del works even if the SysWatch window is closed. You'll have to run SysWatch again to reactivate the program.

To the left of the EXIT gadget is the Update All gadget. Clicking on this updates all of the data displayed by SysWatch. The hot-key equivalent to Update All is Left Alt-F9.

SysWatch's AutoPri gadget toggles Autopriority mode on and off. When Autopriority is on, Sys Watch automatically adjusts the task priority of whatever task you're currently using to a value of + 1. All user tasks start with a priority of 0, so Autopriority mode ensures that the program you're currently using takes precedence over other user tasks. Autopriority has no effect on tasks that already have a higher-than-zero priority. Besides clicking on the AutoPri gadget, Autopriority mode can be toggled on and off by pressing Left Alt-F7.

Located between the AutoPri and the Update All gadget is the Help gadget. Clicking on this gadget, or pressing Left Alt-Help, opens a window that lists all of the hot keys available to SysWatch. You can use any of the hot keys while the Help window is open.

Tips

Closing SysWatch: Sys Watch's ability to open onto any screen makes it much more useful. It also puts some responsibilities on you. You should never close a screen if a SysWatch window is open on that screen. Close the SysWatch window first. If you forget and you exit the application that opened the screen Sys Watch occupies, immediately press Left Alt-F8 to close the window manually. If you don't, your computer could easily crash.

Lo-res screens: SysWatch cannot open onto a lo-res screen. So if you press Left Alt-F10 while using a lo-res screen, the Workbench screen flips to the front and SysWatch opens there. When you close SysWatch s window, the original lo-res screen moves to the front again.

Adjusting task priorities: Don't make any dramatic changes in a task's priority. Go slowly and experiment. If you make a change that seems to slow the system down, readjust the priority to its former setting.

The following table provides a brief description of all the hot keys available to SysWatch.

SysWatch Hot Keys
Keypress Function
Left Alt-F10 Open Sys Watch window
Left AH-F9 Update Sys Watch window
Left AU-F8 Close Sys Watch window
Left Alt-F7 Toggle autopriority mode
Left Alt-Help Display Help window
Left Alt-Del Terminate SysWaich