large files (> 4GB) ... when will they be ubiquitous?



The promise of using symbolic parameters in programs at compile time is
that when data sizes and structures (offsets) change, all that is needed
is to recompile the source to get a new binary that handles these changes.

This promise went unfulfilled when these changes happened with Linux to
support files larger than 2 or 4 GB.

Might it ever happen?

The reason I see for this is that Linux tried to maintain ABI compatibility
with programs that only knew how to handle smaller files. The ABI was not
changed, but instead merely extended. Programs had to be rewritten when
they should have simply been recompiled (if they had been correctly written
in the first place).

A new ABI supporting large files could have coexisted with a compatible ABI.
It would simply have been necessary to tag each process with which ABI it
is working with (default to old, switchable to new, generally during the
dynamic linking phase). Parallel libraries would support each ABI. It can
be almost completely transparent (except when looking closely, such as with
the "ldd" command to see what libraries are linked).

What is discouraging here is that the original promise went unfulfilled.
How can we hope to encourage programmers to follow the practice of properly
symbolizing things like data types, and properly avoiding dependencies, if
there's no real value gained by the practices?

--
|---------------------------------------/----------------------------------|
| Phil Howard KA9WGN (ka9wgn.ham.org) / Do not send to the address below |
| first name lower case at ipal.net / spamtrap-2007-05-05-1449@xxxxxxxx |
|------------------------------------/-------------------------------------|
.



Relevant Pages

  • Re: Why C is really a bad programming language
    ... |> library for the old ABI, and use a new library for a new ABI (ABI's might ... | another it is not feasible or acceptable to recompile it with the ... | headers for the new library. ... A system can allow for multiple ABIs by having libraries for each (in ...
    (comp.lang.c)
  • Re: large files (> 4GB) ... when will they be ubiquitous?
    ... David Schwartz wrote: ... The ABI was not ... a recompile would cause all those programs that we now know are ... I think, to be fair with those programmers, one must bear in mind that some of those programs were written with memory or time constraints, so squeezing out a bit here or there or not doing 64 bit arithmetic or even unsigned arithmetic might have saved a few bytes and/or cycles. ...
    (comp.os.linux.development.system)
  • Re: Why C is really a bad programming language
    ... is used to transition from 32-bit ABI to 64-bit ABI. ... | I thought the problem being discussed was how to recompile libraries to ... Some apps ...
    (comp.lang.c)