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

+
Чтобы отправить комментарий — войдите.
  • slavik_h
    24 ноя 15
    "количество секунд, прошедшее с 1 января 1970 года", а что мешает изменить (перепрописать) на дату 1 января 2038 года, и работай ещё 68 годков!
    Ответить
  • O
    23 ноя 15
    Проблему 2000 пережили и эту беду переживём.
    Ответить
    • Z
      OWL1978 23 ноя 15
      на проблеме 2000 неплохо наварились, а теперь решили повторить — деньги кончились.
      Ответить
    • slavik_h
      Точно, а от дату 4 декабря 292 277 026 596 года в 15:30:08 вряд ли (кстати, мой День Варенья. Придётся начинать праздновать пораньше. :)
      Ответить
  • Spartakovich
    23 ноя 15
    как говорит пиндосня: проблема "высосанная из пальца".
    Ответить
  • B
    23 ноя 15
    ни хрена не будет! война атомная будет, тогда больше толку от топора и печки-буржуйки чем от любого компьютера!
    Ответить
  • B
    23 ноя 15
    А что мешает провести эксперимент и на своём домашнем ПК установить дату — 03:14:00, вторник, 19 января 2038 года и через 7 секунд убедиться в надуманности проблемы? Или для этого надо университеты заканчивать, гранды получать, обладать учёными званиями?
    Такую же проблему описывали в момент смены с 1999 года на 2000 год. Итог — нервные и доверчивые свои старые компьютеры повыбрасывали, закупив новые и обогатив производителей компьютерной техники. Новое — хорошо забытое старое. Особенно если это касается развода лохов...
    Ответить
    • slavik_h
      bondu 24 ноя 15
      Необьязательно выбрасывать, вставлялись дополнительные платы в слоты на материнке и 286-ые прекрано продолжали работать с новым временем (более 01.01.2000 года).
      Ответить
  • makakur
    23 ноя 15
    Ага. Помнится эпидемия страданий по проблеме 2000...
    Новоявленные нострадамусы тогда тоже вовсю пылили поносными предсказаниями. Наконец, искомая новогодняя ночь расставила все по своим местам. Так нашлись и те, которые "перенесли" проблему на 2001 год, но снова ничего не произошло.
    И вот опять.
    Ответить
  • Lova_Zadoff
    23 ноя 15
    Моему компу 10 лет и менять его не собираюсь. Но в 38 видимо придется.
    Ответить
  • D
    23 ноя 15
    38 год .. такими темпами, к тому времени уже будут килобитные системы
    Ответить
  • M
    23 ноя 15
    Это не проблема, будут считать с нуля снова как дельту, прибавляемую к этой дате — к тому времени во все программы можно ввести коррекцию, даже оставаясь на 32 битной системе.
    Я в свои приборы упаковываю год, месяц, число и АБСОЛЮТНОЕ время до секунд всего в четыре байта, мне их хватит до 2064 года. после этого, базовый софт понимая что есть такая огромная рассинхронизация элементарно начинает считать методом прибавления моих данных к 2064 году.
    Делается просто, в основной программе искусственно ставится в единицу тридцать третий бит счетчика.
    Ответить
    • alex_v_ushakov
      Дешевый планшет Digma (Android без синхронизации времени через gsm/wifi) после перехода через 3:14:07 19.01.2038 ушел в глухой зависон, Power — не отвечает, только хард ресет скрепкой.
      В Win8.1(x32) максимум в командной строке получилось 22:49 5.12.8907(GMT+4), винда стала требовать активацию и жаловаться ,что долго не ставил обновления.
      А, а сайт iCloud.com стал показывать "Copyright (c) 8907 Apple Inc. Все права защищены"
      Это они для путешествий во времени, наверное... ;)
      Ответить
      • M
        Все сегодняшние планшеты в 2038 году можно будет найти разве что в музеях :-)
        К тому времени к этой проблеме подготовятся.
        Вон перед 2000 годом тоже стращали, и ничего, вроде все в порядке.
        Ответить
  • workstation
    23 ноя 15
    Через 20 лет придумают 128-ую систему и проблема уйдёт сама собой...
    Ответить
  • A
    23 ноя 15
    Особенно доставляет проблема на 64-х битных системах. Так это что, через 290 миллиардов лет снова катастрофа на компах? Мы все умрём?
    Ответить
    • F
      a666s 23 ноя 15
      :)
      — Доктор, я съел пиццу вместе с упаковкой. Я умру?
      — Ну, все когда-нибудь умрут...
      — Все умрут! Ужас, что я наделал!
      Ответить
  • R
    23 ноя 15
    да успокойтесь, а с 8-16 битными системами, не так было?
    а проблема 2000-го года?
    ну перестанут пахать ваши раритетные часы или кофемолка )) подумаешь, покупайте новые, старые девайсы на помойку или в музей ))
    компы программно это обходят, а к 2038 году все 32-х битные компы просто морально устареют
    Ответить
    • H
      > а к 2038 году все 32-х битные компы просто морально устареют
      Это ты расскажи atmel'у и microchip'у, которые штампуют 8-битные процессоры вагонами. :)
      Ответить
      • makyu
        heres2003 24 ноя 15
        А этим процам так надо точное время? Или им все же пофиг?
        Ответить
  • Icewind
    23 ноя 15
    Говно вопрос
    До 38-ого года, эту проблему успеют решить 100500 раз
    Это как начинать сейчас волноваться о том что через 10 миллиардов лет наше солнце погаснет...
    Ответить
  • magrexbox
    23 ноя 15
    проблему 2000 — пережили, мая 2012 — пережили, а до 2038 — еще дожить нужно)
    Ответить
  • Mudisatwa_Ye
    23 ноя 15
    2038?? к тому времени выпустят обновление операционок, а ныне действующий аппаратный парк уже и на помойках перестанет встречаться, возможно будут образцы в захолустных музеях.
    Ответить
    • H
      Если сейчас полно 8-битных контроллеров, нет никаких оснований считать, что в 2038 не останется 32-битных.
      Ответить
  • H
    23 ноя 15
    Проблема Y2K была вполне реальна, поскольку на тот момент в работе было полно систем, использующих 2 цифры для хранения года (оно и понятно, тогда экономили не то что каждый байт, а каждый бит).
    Системы, понятно дело, не десктопные, поэтому большинство пользователей этого не заметили никак вообще. Но тем не менее там реально надо было переписывать код, причем код весьма старый, поэтому ООПшная школота со своими фреймворками на все случаи жизни, пролетала в таких работах как фанера над парижем. Программерам на коболе, по слухам, тогда были готовы платить неплохие бабки.
    С unixtime'ом проблема больше высосана из пальца, поскольку как и в статье заметили, используется тип time_t, и если кодер не мудак (т.е. не определил переменную как int), все что надо — это перекомпилировать софт с новым time.h.
    Специально проверил: sizeof(time_t) под ubuntu 12.04 i686 равен 4 байтам, под FC 22 x64 — 8 байт.
    проблем с несовместимостью этих систем я пока не наблюдаю.
    конечно, если сделать на одной write( f , time , sizeof(time_t)) а на другой read(f,&time,sizeof(time_t)) то проблемы будут, но это проблемы быдлокодера, а не unixtime, никто не гарантировал конкретную размерность тех или иных данных на любой архитектуре, что известно любому Си-шному программеру. Хочешь конкретных байт — используй intN_t/uintN_t.
    Я как-то давно наступил на эти грабли, сделал структуру, описывающую заголовок bmp файла, считываю — явно какая-то лажа. Внезапно выяснилось, что компилятор для оптимизации произвел выравнивание данных на размер слова, т.е. 32 бита. :)
    Вообщем-то даже на 32-битных системах ничего не мешает определить time_t как int64_t и просто перекомпилировать. Разве что код потом не влезет в какой-нибудь микроконтроллер, где все оптимизированно с точностью до байта.
    ps. Лучше бы вспомнили более насущные проблемы — IPv4/IPv6, и то, что много оборудования до сих пор не поддерживает бесклассовые IP-сети. В ZyXEL'овской точке доступа/роутере на LAN-интерфейсе можно поставить только /24 и никак иначе. Поэтому в сети /22 не с любого компа можно зайти на ее интерфейс. :)
    Ответить
  • A
    23 ноя 15
    >>Вызывает сомнение, что они все будут заменены к 2038 году
    Почему?
    Ответить
  • ae485
    23 ноя 15
    рановато еще истерить. еще сто раз парк персоналок и пр. сменится.
    Ответить
    • K
      ae485 23 ноя 15
      Работают, правда там не уверен что вообще есть дело до каких-то дат =)
      Ответить
  • J
    23 ноя 15
    К 2000 году тоже много воплей и соплей было. И что? Ничего. Апокалипсис прошёл незаметно. И сейчас пройдёт)
    Ответить
  • triovio
    23 ноя 15
    ну и?
    ещё 18 лет
    чего только не произойдёт за это время
    Ответить
Сделано с NoNaMe