.autoparagraph .centre text Time Stamp Handler ------------------ .skip Earl Chew 26 Gardenia Street Blackburn Victoria Australia, 3130. .end centre .skip RT11 will date stamp files, but in some circumstances it is desirable to have a finer resolution than one day. This handler provides RT11 with the ability to time stamp files. .header level 1 Time Stamping Time stamping gives the user the ability to determine the creation time of a file with a resolution of about 3 seconds. This is useful in that files created on the same day can be compared to determine which is more recent. .header level 1 Associated Utilities The BUILD utility is modelled on the UNIX MAKE utility. Given a make script it will determine which files need to be compiled or linked to create the target file. This is done by inspecting the date and time stamps on the files and ensuring that the source files do not have a more recent date than the target. The DIRS utility as well as searching through nested logical disks, will display the date and time stamps of all files matching the file specification. It is more powerful than the TSX FILTIM program since it will allow wildcard specifications and will search nested logical disks. .header level 1 Time Stamp Handler TS: The TS handler provides RT11 with this time stamp capability. It does this by dynamically patching the USR and RMON at the appropriate point with some code to force the creation time into the directory entry. .header level 1 Installing TS If the handler will not install, then use the command: .blank .indent +10 _.set ts sysgen .header level 1 Using TS The time setting facility is invoked by using the command: .blank .indent +10 _.set ts on .blank This causes the handler to load itself, if required, then patch RMON and the USR to put the time stamping into effect. All new files created from this moment on will be patched with the current date and time. Once started, the handler will alter its name and appear in all listings as _$TS. .header level 1 TSX Compatibility The method used to store the date and time in the directory entry is fully compatible with the method used by TSX. The time of creation is expressed as the number of 3 second units since midnight and is stored in the sixth word of the directory entry. .header level 1 Building the Handler A makefile has been provided for the handler. Unlike the first release of the handler, this version reconfigures itself if no EIS hardware is available. This means that a software division subroutine will be used if the div instruction is not present. This means that one copy of the handler is required. The handler will decide at run time which technique (software division or the div instruction) to use to convert the time. Note that the decision process is invoked only when the SET#TS#SYSGEN command is used. If the handler will not install under a new environment, use the SET#TS#SYSGEN command and the handler should subsequently install correctly. .header level 1 Restrictions The handler will not install under versions of RT11FB or RT11XM prior to version 5. This is because the method used to find the GTIM service routine will probably only work with these versions of RT11. There is a possibility that the technique might work under version 4 but it will definitely not work for RT11XM and RT11FB version 3 or earlier. Installation will always be successful for SJ monitors. Once loaded, it is impossible to unload the handler, except by rebooting the system. This is as much a safety feature as anything else. Attempts to perform IO to the handler will be fruitless. It is not known whether the handler will work under any future version of RT11 since the methods used to effect the changes required are all non-standard. .header level 1 Concluding Remarks It has not managed to crash my system as yet, but I live in hope. This handler is most useful when used in conjuction with the abovementioned utilities. .skip .centre --ooOoo--