
 				JUICER 				Abstract  D 	The JUICER package of programs and command files is provided to theL system manager to allow him to monitor VAX/VMS ODS-2 disks for disk and fileI fragmentation, disk usage and to do such compression as might be needed.  + The package is made up of eight (8) parts:  . (1)JUICER_1 to do stand alone disk compressionL (2)JUICER_2 to do on line disk and file defragmentation while disk is in use    by other users M (3)JUICER_2  V3-001 to do on line disk and file defragmentation while disk is I    in use by other users, using the DEC MOVEFILE primitive to ensure file G    IDs do not change and that file motion is safe (also called JUICER-3     at various places).& (4)FRAG to monitor disk fragmentation ; (5)FILE to monitor and optionally compress fragmented files K (6)DIR to make a map of a disk directory structure and its file/block usage E (7)DISK to show by user and account the number of disk blocks in use,     authorized and overdraft.M (8)DISKMON to run as a detached process to provide a constant monitor of all      disk(s) free space.D (9)BAD to scan a selected disk for bad blocks and on user OK, try to    repair them.   C 	JUICER_1 is an in-place disk compression utility for VAX/VMS ODS-2 O disks suffering from excessive fragmentation. This program,with in limitations, O attempts to move portions of files from the high end of  the disk to any unused L areas (fragments) at the low end. Freeing up larger contiguous free areas at
 the high end.   F 	JUICER_2 is an on-line in-place disk and file compression utility forI VAX/VMS ODS-2 disks suffering from excessive fragmentation. This program  J runs on-line while other users are also using the disk. It defragments theP most defragmented files that it can find that will fit in the largest contiguousK free areas on disk, and moves other files as far down toward the low end of H the disk as it can, filling up free fragments at the low end and freeing up more space at the high end.  D 	JUICER-2 V3-001 (new here, and also called JUICER_3) is an in-placeL disk and file compression utility similar in all respects to JUICER_2 exceptM that it uses the new "MOVEFILE" primitive introduced by DEC for its low-level J file moving (instead of a copy and rename routine) so that the file IDs doF not change and the file locking is guaranteed by DEC not to cause fileL structure problems. Also the SET FILE /NOMOVE command can be used to exclude files from moving.   			* NOTE *   " 			JUICER does NOT attempt to work% 		on volume sets, knows nothing about ( 		relative volumes, and while JUICER_3's* 		use of MOVEFILE prevents damage, neither$ 		will it do a volume set much good.  A 	FRAG is run on a disk to see badly the target disk free space is H fragmented. Giving a histogram of fragmented areas by size, a calculatedJ measure of the disk free space fragmentation and, if wanted, a map of free" fragments by starting LBN vs size.  C 	FILE scans all the file headers on the target disk and outputs two L list files, one containing a list of the 100 files having the most retrievalK pointers in use and the second being a matrix of file size verses number of L pointers in use. The command file CONTIG is used which reads one of the listM files produced by FILE and running interactively with the user, converts the  + listed files from fragmented to contiguous.   E 	The command file DIR scans a target disk and creates an output file  J DIRECTORY.MAP containing a graphical output showing the on disk directory J structure, with a notation for each directory showing the number of files  and blocks contained therein.   F 	The command file DISK.COM sets up data for the program DISK.EXE whichL produces a list by user and account (for each disk specified) of disk blocks, in use, authorized and permitted overdrafts.  A 	DISKMON is a program that I found on a VAX sig tape submitted by G Eric Richards of Gould Ocean Systems, 18901 Euclid Ave, Cleveland, Ohio C 44117. It is a detached process which constantly monitors all disks B on the system and warns when free space falls below preset values.  F 	BAD is a program that when run, scans a selected disk for bad blocks.M When a bad block is found, the user is asked if BAD should attempt to rewrite J the block, assuming a soft error. If the rewrite is selected, the user canM select to edit the contents of the bad block before the rewrite is attempted.   @ 	It is important to note that Alpha VMS 1.0 does not support theG MOVEFILE primitive, and hence the old JUICER-2 must be used with it for D the moment if one wants to port a defragger. DEC eventually plans toE put MOVEFILE on Alpha, so eventually the new version will work there. 