On Sun, 9 Dec 2007 13:47:50 +0100
Anders Johansson
On Friday 07 December 2007 22:03:40 Aaron Kulkis wrote:
Carlos E. R. wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
The Friday 2007-11-30 at 22:22 -0600, Bryen wrote:
On Sat, 2007-12-01 at 05:00 +0100, Carlos E. R. wrote:
rpm -q -a --queryformat "%{INSTALLTIME}\t%{INSTALLTIME:day} \ %{BUILDTIME:day} %-30{NAME}\t%15{VERSION}-%-7{RELEASE} \ %25{PACKAGER}\n" | sort | less -S
That's very cool. What does the first column represent? I'm assuming it is install time based on unix time?
Some internal time representation, I think seconds from certain date which I think is called unix time, yes.
Unix Time starts with t=0 seconds at 00:00, between 31 Dec 1969 and 01 Jan 1970, which is also knows as "the epoch."
System time is an unsigned 32-bit number representing the number of seconds since "the epoch."
32-bit time will run out sometime in 2038. This gives us 31 years to convert to 64-bit time.
Actually it's a signed long, which means 2147483647 seconds, or just over 68 years. An unsigned value would be about twice that
Actually you are wrong. The Unix 95 standard required a signed int not
a signed long. There was a big todo about converting to 64-bit time in
the Unix 98 standard. The problem with many vendors was binary
compatibility. I was involved in this for Tru64 Unix as if affected the
Utmp/Utmpx libraries since the utmp and wtmp files contain time stamps.
We had to be able to provide binary compatibility so applications
written for the old way would work. Luckily I was able to get enough
data into the release notes so I could get my new utmp library code
done in the next release. Making the change is not hard, but making it
binary compatible is much more complex.
--
Jerry Feldman