[Info-vax] Hard links on VMS ODS5 disks

Johnny Billquist bqt at softjar.se
Sat Jul 15 17:03:26 EDT 2023


On 2023-07-15 19:41, gah4 wrote:
> On Saturday, July 15, 2023 at 7:44:36 AM UTC-7, Johnny Billquist wrote:
>> On 2023-07-15 03:33, gah4 wrote:
> 
> (snip)
> 
>>> tail -f reads the end of a file, then waits and checks to see if it got bigger.
>>> That is, if the EOF went away.
>   
>>> Not all file system, I suspect, can do that.
> 
>> I have a hard time imagining any file system that could not. Such a file
>> system would then also not be able to append to an existing file.
> 
> I suspect all could do it if you close, and reopen the file.
> 
> But the Unix ones do it without close/open, and then I found that
> also worked on OS/2.

Also works on RSX, which basically also means any VMS system/filesystem 
shouldn't be a problem.

In general, I'm still of the opinion that any system I can image would 
be capable. Opening a file for append do mean that you need to be able 
to find where the end of the file is, and seek to there, unless you have 
a very specific "open for append" system call.
Otherwise any system would basically open a file for append by opening 
it for writing, finding where the eof is, and seek there. Then you could 
start writing.

And if you had such a special function, there is still the question of 
how seeks then work. If you don't have a seek at all, then sure, you 
might not be able to do a tail -f either. But otherwise, what happens if 
you seek to beyond eof and try to read? And what if you seek to eof that 
you found before, and just try reading again? If someone have added more 
to the file, it either would just give eof error, in case the local 
program cached where eof is, and just checked against that, or else it 
would try to do a read, and then it would get the new data, right?

And if you cache the eof, there is no reason why you could not get it 
updated.

But even if you don't have a seek function, the question is what happens 
when you reach eof. Reading would return eof error, obviously. And I 
would think it would also be true no matter how many times you try.
And then comes the question, what happens if someone did append to the 
file in between?

With RSX (and I assume VMS), the eof point is sortof cached, but an 
attempt to read beyond it is perfectly possible, and will succeed/fail 
based on the actual file content.

   Johnny




More information about the Info-vax mailing list