[Info-vax] 64-bit file sizes, was: Re: scp or sftp: file is "raw", needs to be parsed - possible to work around that?
Stephen Hoffman
seaohveh at hoffmanlabs.invalid
Thu May 20 15:23:43 EDT 2021
On 2021-05-20 17:59:33 +0000, Simon Clubley said:
> It's also possible that when using higher-level languages such as C
> with the C APIs they may just do what Linux does and just call
> different versions in the glibc stat() call depending on whether you
> are working with 32-bit or 64-bit variables.
I'd expect we'll see 32-bit values exposed in existing apps,
discussions of C large-file support aside. Very few folks use
large-file support.
> That might not work however due to the fact that you can have both
> 32-bit and 64-bit pointers in the same image on VMS, unlike the either
> 32-bit or 64-bit pointers seen in Linux binaries.
There is 32-bit virtual addressing for memory, and 32-bit storage
addressing that's centrally involved here.
Apple deprecated the 32-bit virtual addressing APIs some years back,
and removed those APIs with the previous macOS release.
macOS has had large-file support for many years, though. Linux too has
had large-file support for a number of years.
It's been OpenVMS that's been limited to 32-bit 2 TiB storage
addressing for ~twenty years.
> Also, will there need to be another version of RMS indexed files to
> handle the larger file sizes ?
There are 32-bit LBNs in various parts of RMS and its APIs, and in the
IO$_ACPCONTROL interface, and in the $qio interface, yes.
I'd expect to find 32-bit LBNs in the BASIC RTL, given BASIC wasn't
updated for 64-bit addressing. Also in some (most?) storage-related
add-on device drivers, too.
VSI will probably put together some 64-bit LBN migration documentation,
but work on that is probably at least a year away and probably further.
--
Pure Personal Opinion | HoffmanLabs LLC
More information about the Info-vax
mailing list