Y2038K
Giorgos Keramidas
keramida at hades.hell.gr
Fri Sep 17 02:08:39 EEST 1999
On Thu, Sep 16, 1999 at 10:09:54PM +0000, Panagiotis Voudouris wrote:
| Διάβαζα τo linux-FAQ (δουλεία δεν είχε ο διάολος....) και είδα ότι για
| το Y2K λέει ότι το Linux χρησιμοποιεί 32-bit integers για να μετρά τα
| δευετερόλεπτα από το 1970. Έτσι, το overflow θα επέλθει το έτος 2038 το
| οποίο όμως όπως το υπολόγισα εγώ (2^32/60/60/24/365) θα έπρεπε να συμβεί
| το 2106. Άρα χρησιμοποιούν signed integer και χρησιμοποιούν από το 0 και
| πάνω χαραμίζοντας τα υπόλοιπα μισά νούμερα. Είναι δυνατόν ή απλά ο τύπος
| που το έγραψε (το FAQ) κάνει λάθος;
Όχι, όχι, όχι... αν πας στο /usr/include/linux/types.h θα δεις ένα
definition του τύπου time_t κάτι σαν:
typedef __kernel_time_t time_t;
Και στο /usr/include/asm/posix_types.h θα βρεις το:
typedef long __kernel_time_t;
οπότε όπως καταλαβαίνεις είναι 31 τα 'χρήσιμα' bits.
Τρεχάλα για κονσέρβες γρήγορα...
--
Giorgos Keramidas, <keramida at ceid.upatras.gr>
Public PGP key at finger://keramida@diogenis.ceid.upatras.gr/
"Today is not yesterday's tomorrow, but tomorrow's yesterday."
--
====================================================================
Gia boithia (h na diagrafhte) e-mail sto majordomo at hellug.gr
Ta archives tis listas einai sto http://lists.hellug.gr/archives
prin steilete kapoia erothsh psakte mipos exei hdh apanththei.
Gia opoiodipote problima stilte e-mail ston owner-linux-greek-users at hellug.gr
====================================================================
More information about the Linux-greek-users
mailing list