2004.09.17 22:15 "RE: [Tiff] BigTIFF Tag Value Count issue", by Bob Friesenhahn
I agree with Fernando, et al., that "Baseline" BigTIFF or so only require 63 of 64 bits in offset with file size support to 2^63-1. Any software is obviously free to support 64 bits in the 64 bit offset, but actually as some system file APIs such as UNIX do use signed offsets, those that don't should still offer relatively uncomplicated standard conformance.
This is a reasonable argument.
For Solaris 9, when large files are supported these are the basic types:
size_t unsigned 64 bits - size of something in bytes
ssize_t signed 64 bits - size of something in bytes or -1
off_t signed 64 bits - offsets within files
The ftruncate() and lseek() functions accept off_t arguments and lseek() returns off_t. Therefore the useable file size is indeed currently constrained to 63 bits.
Just as we are getting used to 64 bit file offsets, Solaris 10 is introducing a file system (zfs) which supports 128 bit offsets. :-)