![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Вчера разговаривал с чайником. Рассказал ему почему был баг2000.
потом он спросил, когда следующий?
сказал что в 2038 году.
вот например ЖеЖе имеет такой баг....
запись от февраль 2037 года вводится, 2038 уже нет.
потом он спросил, когда следующий?
сказал что в 2038 году.
вот например ЖеЖе имеет такой баг....
запись от февраль 2037 года вводится, 2038 уже нет.
Re: запись от февраль 2037 года вводится, 2038 уже нет
Date: 2004-02-20 12:55 am (UTC)Re: запись от февраль 2037 года вводится, 2038 уже нет
Date: 2004-02-20 01:03 am (UTC)Re: запись от февраль 2037 года вводится, 2038 уже нет
Date: 2004-02-20 01:13 am (UTC)Re: запись от февраль 2037 года вводится, 2038 уже нет
Date: 2004-02-20 01:58 am (UTC)v unix'e systemnoe vremya xranitsya v signed 32-x bitnom chisle.
t.e. odin bit ispolzuetsya kak znak, eto polozhitelnoe chislo ili otrizatelnoe, v resultate, dlya vremeni ostaetsya na 1 bit menshe, t.e. 31 bit.
samo system time, interpritiruetsya kak chislo secund ot 1 Yanvarya, 1970. (bajka: sozdateli unixa ustroili vecherinku po povodu zarabotavshej versii ;)
vot resultat raboty php scripta
< ?php
$i = 0;
print_r (getdate ($i));
? >
Array
(
[seconds] => 0
[minutes] => 0
[hours] => 2
[mday] => 1
[mon] => 1
[year] => 1970
[weekday] => Thursday
[month] => January
)
t.e. kol-chestvo secund kotorye mogut byt predstavleny v 31butnom chisle 2147483648
eto 68+ let. 2147483648 / (60*60*24*365)
t.e. poslednya resultativnaya data
< ?php
$i = pow (2,31) -1;
print_r (getdate( $i));
? >
Array
(
[seconds] => 7
[minutes] => 14
[hours] => 5
[mday] => 19
[year] => 2038
[weekday] => Tuesday
[month] => January
)
t.e. 19-Yanvarya-2038
esli by, avtory unixa dobavili v opredelenii tipa time ne signed, a unsigned, (t.e. ne uchitivali znak), to problema otlozhilas' by na 136 let.
vse ravno, prostitelno, nikto ne dumal chto eta OS i 68 let prozhivet.
a ved' prozhivet...
Re: запись от февраль 2037 года вводится, 2038 уже нет
Date: 2004-02-25 05:26 am (UTC)Re: запись от февраль 2037 года вводится, 2038 уже нет
Date: 2004-02-26 05:11 am (UTC)Re: запись от февраль 2037 года вводится, 2038 уже нет
Date: 2004-02-26 05:30 am (UTC)After 23:59:59, December 31, 3000, UTC (using _time64 and __time64_t).
Y3K bug , однако :)
Re: запись от февраль 2037 года вводится, 2038 уже нет
Date: 2004-02-26 06:14 am (UTC)ili oni ne nadeutsya, sho windows do 3001 goda prozhivet :)