1 января 1970 года
Сегодня увидел в Кинопоиске такую картину:
И решил написать пост про то, чем знаменательна дата 1 января 1970 года.
Нет, не тем, что в этот день в Японии состоялась премьера фильма «Мачете убивает», а Россия увидела фильм только 24 октября 2013-го, т.е. почти 44 года спустя. А тем, что в 1969 году появилась операционная система UNIX, а с 1 января 1970 года 00:00 по UTC (Всемирное координированное время) началось UNIX-время. С тех пор Unix Timestamp определяет количество секунд, прошедших с описанной точки отсчёта: Текущее число 1383911922 соответствует 8 ноября 2013 11:58 — времени написания статьи.
Интересно ещё то, что многие системы (от серверных ОС до отдельных скриптов сайтов) сохраняют текущий timestamp события (публикация сообщения или строка лога доступа) в виде 32-х разрядного целого числа. Т.е. когда с точки отсчёта (1 января 1970) пройдёт 231 секунд (1 разряд расходуется на знак числа), произойдёт переполнение timestamp, и надо будет что-то предпринимать. При timestamp-е 2147483647 время Веба будет ешё «19.01.2038 10:14:07», а если прибавим ещё секунду: 2147483648 — уже получим дату «14.12.1901 02:17:32».
Что будет 19 января 2038-го, мы узнаем через 24 года с небольшим. Возможно, разряность числа для хранения времени будет увеличена. В таком случае надо будет пересмотреть все написанные скрипты на предмет того, не сохраняют ли они в базу данных timestamp в виде 32-х разрядного числа.
Добавить комментарий