Проблема 2038 року: відмінності між версіями

[неперевірена версія][перевірена версія]
Вилучено вміст Додано вміст
Не треба «Див. також» на те, що є у навігаторі
вікіфікація
Рядок 2:
'''Пробле́ма 2038 ро́ку''' в [[Обчислювальна техніка|обчислювальній техніці]] — це очікувані збої в роботі [[Програмне забезпечення|програмного забезпечення]] [[19 січня]] [[2038]] року. Дана проблема стосується програм і систем, в яких використовується представлення часу за стандартом [[POSIX]] ([[Unix time]]). Цей стандарт використовує кількість секунд, які пройшли від початку «епохи», тобто з півночі [[1 січня]] [[1970]] року. Таке представлення часу — стандарт для [[Unix]]-подібних операційних систем (через розповсюджене використання мови [[Сі (мова програмування)|Сі]]).
 
На більшості систем з розрядністю процесора не вище 32-біт для зберігання секунд використовується [[тип даних]] <code>[[Time.h#Типи даних|time_t]]</code>, визначений як <code>signed&nbsp;int</code>, тобто у [[Формати даних|форматі]] 32-бітного цілого числа із знаком. Найпізніша дата, яка може бути представлена таким форматом в стандарті [[POSIX]]&nbsp;— це 03:14:07, вівторок, [[19 січня]] [[2038]] року за [[UTC|всесвітнім часом (UTC)]].
 
Наступний момент часу час змусить таке поле даних прийняти від'ємне значення, що подібно до зациклювання часу (оскільки негативне число може бути сприйнято програмами як час у [[1970]] або [[1901]] році, залежно від реалізації). В результаті можуть бути здійснені помилкові обчислення або отримані некоректні результати.