[Info-vax] Empty blocks in FILES-11 directory files.
Volker Halle
volker_halle at hotmail.com
Sun Sep 25 10:27:18 EDT 2022
Mark,
if your program reports an error again, you should then carefully examine the directory file in question with
$ DUMP/DIR/HEADER directory-filename.DIR/OUT=temp_file
> So I guess to the highest block.
No, the code reads until XabFhc.xab$l_ebk, which is the EFBLK (end-of-file block). And therefore should not find 'empty blocks'.
Test for yourself: create a directory, populate it with a couple of files until EFBLK becomes > 1, then delete all files in that directory.
Use DUMP/HEADER to find the start LBN of the directory file and then DUMP/BLOCKS=(START=start_lbn,SIZE=2) disk:
You'll see, that the blocks beyond VBN 1 of the directory file contain 'old directory data', not zeros and they don't start with DIR$W_SIZE=FFFF
> > File characteristics: Contiguous, Directory
> >
> > This allows more efficient reads/writes and prevents window turns, when already executing inside the XQP.
> Still a design consideration then.
Please read the second half of that sentence: I strongly believe you can't do a window turn (which involves the XQP), if you are already in the XQP executing a directory operation. So directory files must be contiguous.
Once you hit this problem again, feel free to provide some more details.
Volker.
More information about the Info-vax
mailing list