The Graham Utilities for OS/2: A Review - Part 2



By: Walter Metcalf
Date: 01/20/99

This week I'm continuing with a look at some of the more significant or interesting programs in the Graham Utilities package, including an overview of Task Manager.

  1. Convert to LZH format (2LZH)

    Some programs, like this one, may seem strange; this is due to that it was written in 1992--making it one of the earliest programs in the collection--at a time when LZH was superior in several ways to ZIP for use with OS/2. If you own or purchase Graham Utilities you may wish to rename 2LZH or move it to a different directory to prevent accidentally running the program.

  2. Text Search Utilities (GREP)

    Another utility is worth noting for at least two reasons:

    1. Written in 1991, it is the oldest program in the Graham Utilities set.

    2. It is still a very useful program:

      • Grep is a search and replace across multiple files and disks--not a function performed by many programs;

      • Grep contains a large number of parameters making it very flexible. You can tailor the search pattern, the search path, and the display.

  3. Defrag (FAT-Dfrg; FAT-View; HPFSDfrg; HPFSView)

    All utility packages of course must have a defrag or optimization program. Usually they will have at least two because FAT and HPFS are quite different. GU in fact has four such programs: two FAT and two HPFS. The main difference between the two HPFS (and two FAT) programs are that the ones ending in "Dfrg" are command line programs where as the ones ending in "View" run in text windows. However there are other differences as well.

    1. FAT-Dfrg [command-line]

      • Defrags files only

      • Optionally can use a remote computer to defrag the files.

      • Drive must not be in used by any other program.

      • A feature is provided to defrag throughout nested subdirectories.

    2. FAT-View [text windows]

      • Displays detailed information about disk usage, special blocks, block numbers, etc.

      • Defrags drives as well as files, that is, all the free space on the drive is moved to the end.

      • All directories always processed. Note how this differs from FAT-Dfrg.

      • Optionally wipes freed sectors according to U.S. government security rules.

      • Optional parameter for setting number of buffers.

    3. HPFS-Defrag [command-line]

      • defrags files only

      • optionally converts filenames to lower case

      • feature to process hard drives only

      • optionally display defragged files only,

      • retry count. The defrag algorithm attempts to improve the state of a file (i.e. reduce the number of extents) by copying a file using preallocation. This parameter determines the number of times HPFSDfrg will make this attempt before quitting with the error message "No space on drive to defragment <filename>."

      • In order to defragment a file, no other processes must be accessing the file: HPFSDfrg must be able to gain exclusive access to it.

    4. HPFSView [text windows]

      1. This program is unusual in two respects:

        • By default it does NOT defragment (to defrag you need to specify the -d parameter); and

        • Unlike its FAT counterpart, it does not defrag drives.

      2. Displays detailed information both by (cyl,head,sect) and logical sector number about file and special sector information.

        With this, as with all the utilities and commands given in this article, check the manual for complete information on features and options.

  4. Task Manager for OS/2

    Added to the package as part of CSD 11, Task Manager for OS/2 is the author's latest brainchild. It's a radical departure from the mostly command-line or text window utilities in the rest of the package. This program is a full-blown GUI, mouse-based application. Initially it is an OS/2 version of Windows NT's TaskMgr.¹ However, Chris is continuing to develop and add to it. In an email he told me he wants to make it a full-service task controller. In the next CSD Task Manager will contain another tab called Disk Space that contains a bar graph for each defined disk drive, displaying the space used on that drive. If you double-click on any of the graphs, another screen is displayed showing the usage history for that drive. See screenshots.

    Notable Details:

    1. Resources used include threads, an important item left out in many resource managers.

    2. The sampling frequency is adjustable.

    3. It's not evident from the screen shots, but the "Memory" menu item contains a "Compact" function which defragments all of free physical RAM. This could be useful if you need to load a large program or image and would find the load time prohibitive.

    4. The End Task on the Application and Processes tabs terminates a process by essentially issuing a "please terminate yourself" exception request to the process. If an application uses its own exception handler and then ignores the request--as Netscape frequently does--the task will not be terminated.² (This is the same method used by most other task-kill procedures such as Ctrl-Alt-Del Commander, for example.)

      Next time: More Graham Utility functions including Disk Maintenance and Miscellaneous Utilities.³


¹Task Manager for OS/2 is, however, SMP (multi-processor) compliant.

²The author told me he's looking into making the End Task function somewhat more forceful.

³Note: For the sake of complete disclosure, let me state here that Chris Graharm gave me a free copy of The Graham Utilities for OS/2 for this review . However, I have taken due care not to let this affect my evaluation.

For further reading:

BMT Micro: Graham Utilities 2.0 © BMT Micro Inc.

Task Manager for OS/2 Warp © 1998 Chris Graham

The Graham Utilities for OS/2 - Version 2 © 1998 Chris Graham



Unless otherwise noted, all content on this site is Copyright © 2004, VOICE