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

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

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

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

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

Суть проблемы заключается в том, что при переходе в 10000 год системы сочтут это как 0000 год, то есть I век нашей эры. Так же все системы сочтут это, скорее всего, как -59949936000 секунд (начиная с 1 января 1901) года[2].

Другие аналогичные проблемы[править | править вики-текст]

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

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

Ссылки[править | править вики-текст]

  • RFC 2550: Y10K and beyond — опубликован в 1999 в качестве первоапрельской шутки; тем не менее, содержит потенциально полезные идеи. (англ.)

Примечания[править | править вики-текст]

  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. (September 1998). Архивировано 13 ноября 2006 года.
  2. Эти данные представлены студией TableStudio и могут являться не точными.
  3. MSDN: Time Structures