Что было 1 января 1970 года
Что случилось 1 января 1970 года
Вы наверняка обращали внимание на автоматическую установку даты 1 января 1970 года. Происходит это, если вытащить аккумуляторную батарею или же долго держать iPhone в выключенном состоянии. Именно с этой даты у всех айфонов начинается отсчет времени.
Читаем статью, если вы тоже уже горите любопытством, что же это означает.
Компьютерам нужно знать сколько время.
Для этого было придумано так называемое UNIX-время. Разработчиками стали инженеры исследовательского центра Bell Labs.
UNIX-время определяется количеством прошедших секунд начиная с полуночи 1 января 1970 года. Такой способ удобен при хранении и сравнении дат с точностью до секунд.
Стоит отметить, что 1 января 1970 года это не день рождения Unix. Еще в 1960-ых годах были первые версии операционной системы. Деннис Ритчи один из инженеров-разработчиков говорит, что дата была запрограммирована в систему когда-то в начале 70-х только потому, что это было удобно сделать.
9 сентября 2001 году был юбилей для операционной системы UNIX. 40-я секунда 46-й минуты во втором часу была миллиардной.
Конечно, относительно мало людей думают о времени в 32-битных целых числах. Человеческий разум жаждет круглых чисел, и один миллиард, пожалуй, самый округлый: десять аккуратных цифр, девять из них круглые, как пончик.
1 января 1970 года и iPhone: что это за баг?
В феврале 2016 года появилась очень интересная информация, касаемо операционной системы iOS. Сообщается, что пользователи известнейшего форума Reddit смогли обнаружить критическую уязвимость в операционной системе. Суть в следующем: при переводе даты на 1 января 1970 года и перезагрузке iPhone или iPad превращается в кирпич.
Как обычно, многие пользователи восприняли этот баг как шутку, тем более, что на многих ресурсах о нем рассказывали именно в шутливой форме. Каково же было удивление владельцев устройств, когда последние действительно становились кирпичами!
Процесс таков: нужно было зайти в «Настройки» — «Основные» – «Дата», перевести тумблер «Автоматически» в положение «Выключено» и выставить дату 1 января 1970 года, а время — 1:00 AM или 13:00. После процедуры устройство нужно было обязательно перезагрузить.
После перезагрузки пользователь видел вот что — яблоко на экране, причем постоянно:
В чем причина такого бага? Приводятся следующие версии:
Ошибка была актуальна для iPhone и iPad, построенных на базе процессоров A7, A8, A8X, A9, A9X.
Что касается решения вопроса, то оно, до выхода исправления от Apple, выглядело таким образом:
В iOS 9.3 beta 4 разработчики исправили баг, в результате чего устройство не должно окирпичиваться, если вы введете дату 1 января 1970 года. Но мы ничего гарантировать не можем, так что не рекомендуем выставлять указанную дату. Мало ли что.
Друзья! Если наш сайт помог вам или просто понравился, вы можете помочь нам развиваться и двигаться дальше. Для этого можно:
Если выставить на iPhone дату 1.01.1970, он превратится в кирпич
Linux для хакера
Крайне не советуем проверять описанный в этой статье баг на практике. Пользователи Reddit обнаружили, что устройства Apple подвержены странной проблеме: достаточно выставить на iPhone или iPad дату 1 января 1970 года, перезагрузить девайс и. ты получишь красивый, дорогостоящий кирпич. Устройство откажется возобновлять работу.
Пользователи Reddit опытным путем выяснили, что проблема распространяется на любые устройства, работающие под управлением iOS. Версия операционной системы значения не имеет, баг работает на чипах A7, A8, A8X, A9 и A9X. Единственные девайсы, на которых баг не срабатывает: устройства под управлением 32-битной версии iOS.
После установки даты на 1.01.1970 и перезагрузки устройства, оно перестает загружаться. Если подвергнуть гаджет данным манипуляциям, жесткая перезагрузка кнопками Home+Power уже не поможет, равно как и переход в режим DFU с последующим обновлением прошивки. Единственное, что может помочь – отсоединение аккумулятора. Но эта процедура требует вскрытия устройства, а значит должна производиться в официальном сервисе Apple. Также некоторые пользователи Reddit пишут, что им не помогло даже это.
В сети уже появилось множество видео, на которых пользователи, желающие проверить теорию на практике, «окирпичивют» свои девайсы.
Дата 1 января 1970 года не так проста. Дело в том, что это так называемое UNIX-время (или POSIX-время), то есть 00:00:00 UTC 1 января 1970 года является исходной точкой отсчета. Данная система применяется для описания моментов во времени в UNIX и POSIX-совместимых ОС, а к таковым относится и iOS.
Пользователи Reddit уже написали специальную утилиту, которая не позволит злоумышленнику (если он имеет физический доступ к аппарату) эксплуатировать проблему.
Пользователи Reddit нашли новый способ «убить» iPhone
Важное предупреждение: «Газета.Ru» не советует проверять правдивость слухов об уловке с 1970 годом, это может быть опасно для вашего iPhone.
В сети появилась новая история о том, что тысячи iPhone превратились в бесполезную груду металла, но на этот раз пользователи сами провоцируют поломку. Первыми баг заметили пользователи Reddit.
Оказалось, что фатальная ошибка кроется в конкретной дате — если вручную установить 1 января 1970 года, а затем выключить смартфон, то он покажет логотип Apple, а затем больше никогда не включится.
После публикации появилось множество желающих опровергнуть слухи, что породило волну возмущения среди пользователей. Оказалось, что уловка, описанная на форуме, действительно работает.
Любители черного юмора поспешили распространить в сети изображения или гайды о том, «как открыть скрытые функции смартфона», с описанием метода «убийства» iPhone, что встретило бурю негодования доверчивых пользователей интернета.
Самым разочаровывающим фактом является то, что после эксперимента не работает ни восстановление iPhone до заводских настроек, ни попытка перевести его в DFU-режим.
Решение этой «кирпичной» проблемы достаточно непростое — вернуть смартфон в рабочее состояние возможно лишь с помощью замены аккумулятора.
В случае с iPhone, где корпус самостоятельно открыть достаточно сложно, придется обратиться в сервисный центр и попутно объяснить, зачем владельцу понадобилось переместиться в 1970 год.
Компания Apple пока не прокомментировала новый баг. Вполне возможно, что реакция будет схожей, что и в случае с фатальной «ошибкой 53». Еще неделю назад владельцы iPhone последних поколений страдали от массовых поломок и внезапного отключения смартфонов.
В предыдущем нашумевшем случае проблема заключалась в функции 3D Touch. После ремонта и замены кнопки Home в неофициальном сервисном центре аппараты просто выключались, стоило пользователю обновиться до последней версии прошивки.
Выхода из подобной неприятности два: покупка нового iPhone или же замена пары Touch ID – процессор, которые связаны в целях максимальной защиты.
Сервисные центры отказались чинить смартфоны или заменять их на новые, мотивировав это тем, что владельцы сами виновны в поломке.
Проблема с мистическим временем актуальна только для 64-битных процессоров — A7, A8, A8X, A9 и A9X. Другими словами, в опасности находятся следующие устройства — iPhone 5 и новее, iPad Air и iPad Mini 2 и новее, а также 6-е поколение iPod Touch.
Полночь 1 января 1970 года — момент времени, который является точкой отсчета в так называемых UNIX-системах. Подобное исчисление также называется «компьютерным временем».
В системе существует «проблема 2038 года» — 19 января 2038 года в 03:14:08 по всемирному времени переменная достигнет значения, которое может ошибочно интерпретироваться как отрицательное.
Предполагается, что подобное действие может привести к массовым сбоям систем по всему миру.
В феврале прошлого года первый день 1970 года привел к сбою в официальном приложении «ВКонтакте» для Android. Тогда в диалогах пользователей появлялся загадочный собеседник под именем null null, пишущий из прошлого. При попытке открыть диалог мобильный клиент закрывался.
Ошибку вызывает появление пустого сообщения от пользователя null null в диалогах. Попытка открыть его приводит к завершению работы мобильного приложения. Некоторые пользователи социальной сети после экстренного завершения работы отмечают пропажу других диалогов.
«ВКонтакте» сумела починить баг, но подобные ошибки внезапно появлялись и задолго до этого.
Наступит ли конец всех компьютеров через 22 года, зависит от того, останутся ли машины, использующие нынешний принцип отсчета времени. Программисты настаивают на введении 64-битного отсчета взамен 32-битного, что позволит отодвинуть «день икс» на 290 млрд лет.
Но поскольку в мире существует огромное множество 32-битных систем, в 2038 году с большей долей вероятности они просто выйдут из строя.
Почему даты рассчитаны с 1 января 1970 года?
Есть ли причина использовать дату (1 января 1970 г.) в качестве стандартного стандарта для манипулирования временем? Я видел этот стандарт как на Java, так и на Python. Эти два языка, о которых я знаю. Существуют ли другие популярные языки, которые следуют одному и тому же стандарту?
ОТВЕТЫ
Ответ 1
Ответ 2
Вопрос делает два ложных предположения:
Две дюжины эпох
Время вычислений не всегда отслеживается с начала 1970 года UTC. Хотя этот epoch популярен, различные вычислительные среды на протяжении десятилетий использовали по крайней мере почти два десятка эпох. Некоторые из других веков. Они варьируются от года 0 (ноль) до 2001 года.
Unix Epoch Common, но не доминирует
Начало 1970 года популярно, вероятно, из-за его использования Unix. Но отнюдь не является доминирующей. Например:
ISO 8601
Предполагая, что count-since-epoch использует эпоху Unix, открывается большая уязвимость для ошибок. Такой счет невозможно для человека мгновенно расшифровывать, поэтому ошибки или проблемы не будут легко помечены при отладке и протоколировании. Другая проблема заключается в неоднозначности детализации, описанной ниже.
Считается, что с эпохи
Ответ 3
Ответ 4
Есть ли причина использовать дату (1 января 1970 года) в качестве стандартного для манипуляций временем?
Нет причин, которые имеют значение.
Excel использует две разные эпохи. Любая причина, по которой разные версии excel используют разные даты?
За исключением реального программиста, никто больше никогда не узнает, почему эти решения были приняты.
Не важно, почему была выбрана дата. Это было просто.
Астрономы используют свою собственную эпохальную дату: http://en.wikipedia.org/wiki/Epoch_(astronomy)
Почему? Необходимо выбрать дату, чтобы сделать математику. Любая случайная дата будет работать.
Далекая дата в прошлом избегает отрицательных чисел для общего случая.
Некоторые из более умных пакетов используют прорептический григорианский год 1. Любая причина, почему год 1?
Там есть причина, данная в книгах, таких как «Календарные вычисления»: она математически немного проще.
Ответ 5
Ответ 6
Q) «Почему даты рассчитаны с 1 января 1970 года?»
A) Он должен был быть как можно более последним, но включать некоторое прошлое. Скорее всего, нет существенной другой причины, так как многие люди чувствуют то же самое.
Они знали, что это проблема, если они помещают ее слишком далеко в прошлое, и они знали, что она дала отрицательные результаты, если бы это было в будущем. В прошлом не было необходимости углубляться, поскольку события, скорее всего, будут иметь место в будущем.
Примечания: С другой стороны, майанцы нуждались в том, чтобы помещать события в прошлое, поскольку у них было много опыта, для чего они сделали долгосрочный календарь. Просто поместите все рутинные явления на каландр.
Временная метка не была обозначена как календар, это эпоха. И я считаю, что майи сделали свой долгосрочный календарь, используя ту же самую перспективу. (что означает, что они хорошо знали, что у них не было никаких отношений с прошлым, им просто нужно было увидеть их в большем масштабе)
Ответ 7
Да, C (и его семейство). Здесь Java тоже принимал это.