[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