HOL - Contiguous Block Report Utility ===================================== User's Guide ============ HOL is a small task aimed to give the user detailed information on how fragmented his disks are. For any given FILES-11 device it will list out all (or optionally just those over a given size) the contiguous 'holes' on that device, giving starting block number (in octal) and size (in decimal), and the total number of free blocks for the device. HOL may be invoked either by:- HOL or RUN $HOL HOL> Where DDn: is a valid Files-11 device (the n and : are optional) which defaults to SY: if omitted, and nnnn is an optional decimal number (up to 9 digits) specifying a minimum size for the 'holes' to be listed. The output appears on LUN 2 which may be redirected to a printer. HOL may produce one of the following error messages: 1. HOL - FALURE ON READING BITMAP.SYS An error occurred trying to read the file BITMAP.SYS on the device specified. Most probably the device is not mounted. 2. HOL - ILLEGAL DEVICE The device specified does not exist on the system, or is not a valid Files-11 disk. 3. HOL - BAD SWITCH The user typed a slash (/) in his commandline, but followed it with something other than a valid decimal number. 4. HOL - COMMAND ERROR The command line specified did not fulfill the conditions laid down above. HOL - Contiguous Block Report Utility ===================================== System Guide ============ The task consists of one simple module. This first gets the MCR command line - prompting the user for input if one was not specified - and parses it to determine the device to be checked, and, if specified, the minimum hole size to be reported. It then assigns a LUN(1) to this device, checks that it is a valid, mountable, Files-11 disk and opens the file [0,0]BITMAP.SYS on it. It then reads through the file checking each bit and calculating the size of each hole. It then checks to see if the hole is greater than the minimum requested (if one was specified) and, if so, prints out the block number of the start of the hole and the size of the hole. The program is built by means of the command file HOL.CMD. It is a non-privileged task that uses 3 units and has a taskname of ...HOL.