bug-tar
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-tar] tar writes invalid mtime for times before the epoch


From: Paul Eggert
Subject: Re: [Bug-tar] tar writes invalid mtime for times before the epoch
Date: Mon, 20 Nov 2017 11:06:16 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0

On 11/20/2017 02:51 AM, Joerg Schilling wrote:
That's a shortcoming in tar's documentation. Tar uses the GNU format by default,
which has a base-256 extension that supports negative timestamps. If you want
GNU tar to refuse to use this GNU extension, please use '-H ustar'.
Well, base-256 is not even special to GNU tar. It has been introduced by star
before and was later adopted by GNU tar.

As I vaguely recall, this extension was designed by both of us in collaboration, and superseded an earlier base-256 format that GNU tar still supports but does not document. I'm too lazy to consult the email archives to check my memory; it's not a big deal either way.

The background is that base-256 allows up to 95 bits + sign bit and this is
sufficient for all possible storage as long as you cannot manage to store part
of the data in a parallel universe.
No parallel universe should be needed to exhaust the format's limits. In 2001 Seth Lloyd estimated that the observable universe, if treated as a computer, would contain about 10**120 bits of information if quantum gravity were taken into account. This would require 396 bits to address, assuming byte-addressible storage. Admittedly Lloyd's estimate is very rough and could well need updating in the light of more-recent physical discoveries. Still, 95 bits does not seem to be nearly enough. And even if 396 bits is right just now, eventually it'll be too small as the number of bits in the universe is growing.

Lloyd S. Computational capacity of the Universe. Phys Rev Lett. 2002;88(23):237901. http://dx.doi.org/10.1103/PhysRevLett.88.237901




reply via email to

[Prev in Thread] Current Thread [Next in Thread]