[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