2.26 Is there any way to replace a file, for example a file of UDCs, while it is being accessed?

The Posix shell "mv" command will allow you to do just that. "mv" stands for move. One of the "undocumented" features of this command is you can replace files currently in use. New accessors get the new version. Existing users continue with the old. Once the last user of the "old" version closes the file, it goes away.

"mv" is described in gory, if incomplete, detail in the man page. The basics in this case are:

From the shell, type

mv newfile oldfile

From the MPE prompt, type

mv.hpbin.sys "newfile oldfile"

Note that both "newfile" and "oldfile" must be in HFS syntax where case counts. If "oldfile" exists, you will be prompted whether you want to replace it.

For example, suppose you have a file containing all of your UDC definitions: UDCS.PUB.SYS.

Now suppose you've created a new file, UDCSNEW.PUB.SYS that is an updated version of UDCS.

To replace UDCS with UDCSNEW, without having to use SETCATALOG and kick everyone off the system, then from MANAGER.SYS do:

MV.HPBIN.SYS "/SYS/PUB/UDCSNEW /SYS/PUB/UDCS"

The system responds:

/SYS/PUB/UDCS?

Reply with: YES and you are done. UDCSNEW has become UDCS.