Проблема 10000 года

Пробле́ма 10000 го́да — собирательное название для предполагаемых проблем, которые могут возникнуть при работе с программным обеспечением, для представления года, в датах которого используются только 4 цифры. Такой подход может привести к ошибкам и сбоям при переходе от 9999 года к 10000 году.

Проблема 10000 года стала обсуждаться в прессе в последние годы XX века в связи с надвигавшейся проблемой 2000 года. Большинство публикаций были пародийно-юмористическими, поскольку проблема 10000 года сейчас представляется скорее теоретической, нежели практической. Однако нельзя исключить, что часть использующегося уже написанного программного кода может в каком-то виде «дожить» и до 10000 года.

В некоторых случаях обработка дат за пределами 10000 года может понадобиться уже сейчас — например, в программах, оценивающих проекты долгосрочного хранения ядерных отходов[1].

Суть проблемы заключается в том, что при переходе в 10000 год системы воспримут это как 0000 год, то есть 1 год до нашей эры. Кроме того, все системы сочтут это, скорее всего, за −59,949,936,000 секунд (начиная с 1 января 1901 года)[2].

Другие аналогичные проблемы

[править | править код]

Иногда упоминаются «проблема 100 000 года», «проблема 1 000 000 года» и т. д.

В системе Windows API структура SYSTEMTIME использует 16-битное поле для хранения номера года; при этом в документации указано, что допустимыми значениями являются 1601—30827[3].

Примечания

[править | править код]
  1. Alan F. Kay and Hazel Henderson. Millennium Bug: New Y2K Survey Finds Americans Ready To Do Their Bit-Because They Don't Trust Government or Business. American Talk Issues. Market Strategies, Inc. (сентябрь 1998). Архивировано 13 ноября 2006 года.
  2. Эти данные представлены студией TableStudio и могут являться не точными.
  3. MSDN: Time Structures