Более подробное описание + новый шрифт
This commit is contained in:
parent
c8b4bad5ee
commit
44b020ab10
Binary file not shown.
|
@ -1,6 +1,6 @@
|
||||||
@font-face{
|
@font-face{
|
||||||
font-family: '7Digital';
|
font-family: '7Digital';
|
||||||
src: url('digital-7\ \(mono\).ttf');
|
src: url('Orloj.otf');
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
font-style: monospace;
|
font-style: monospace;
|
||||||
}
|
}
|
||||||
|
@ -23,7 +23,7 @@ body{
|
||||||
width: calc(100% - 16px);
|
width: calc(100% - 16px);
|
||||||
}
|
}
|
||||||
#time{
|
#time{
|
||||||
font-size: 20em;
|
font-size: 12em;
|
||||||
width: calc(100% - 16px);
|
width: calc(100% - 16px);
|
||||||
height: 100%;
|
height: 100%;
|
||||||
font-family: '7Digital';
|
font-family: '7Digital';
|
||||||
|
|
42
index.html
42
index.html
|
@ -39,26 +39,44 @@
|
||||||
2038 года. Данная проблема затронет программы и системы, в которых используется представление времени по
|
2038 года. Данная проблема затронет программы и системы, в которых используется представление времени по
|
||||||
стандарту POSIX (UNIX-время), которое представляет собой количество секунд, прошедшее с полуночи 1 января
|
стандарту POSIX (UNIX-время), которое представляет собой количество секунд, прошедшее с полуночи 1 января
|
||||||
1970 года. Такое представление времени — это стандарт для Unix-подобных операционных систем (из-за
|
1970 года. Такое представление времени — это стандарт для Unix-подобных операционных систем (из-за
|
||||||
повсеместного использования языка Си). Самая поздняя дата, которая может быть представлена таким форматом
|
повсеместного использования языка Си).</p>
|
||||||
в стандарте POSIX — это 03:14:07, вторник, 19 января 2038 года по Всемирному времени (UTC).</p>
|
|
||||||
<p>Сейчас значение Unix timestamp равно <span id="timestamp"></span>.</p>
|
<p>Сейчас значение Unix timestamp равно <span id="timestamp"></span>.</p>
|
||||||
|
<h3>В чём проблема?</h3>
|
||||||
|
<p>В старых 32-битных системах (до середины 1990-х) используется тип данных time_t для хранения секунд в виде
|
||||||
|
signed int (32-битного целого со знаком). Самая поздняя дата, которая может быть представлена таким
|
||||||
|
форматом в стандарте POSIX — это 03:14:07, вторник, 19 января 2038 года по Всемирному времени (UTC).</p>
|
||||||
|
<p>Более позднее время заставит такое поле данных стать отрицательным, как бы закольцевав таким образом время
|
||||||
|
(поскольку отрицательное число может быть воспринято программами как время в 1970 или 1901 году, в
|
||||||
|
зависимости от реализации). В результате любые расчёты, включающие дату позже 19 января 2038 года, могут
|
||||||
|
привести к сбою программы либо к ошибочным вычислениям.</p>
|
||||||
<p>Для проблемы 2038 года не существует простого решения для существующих комбинаций операционных систем и
|
<p>Для проблемы 2038 года не существует простого решения для существующих комбинаций операционных систем и
|
||||||
прикладного программного обеспечения. Изменение определения типа time_t на 64 бита нарушит бинарную
|
прикладного программного обеспечения. Изменение определения типа time_t на 64 бита нарушит бинарную
|
||||||
совместимость программ, существующих хранимых данных и всего другого, использующего представление времени в
|
совместимость программ, существующих хранимых данных и всего другого, использующего представление времени в
|
||||||
бинарном виде. А приведение time_t в целое без знака может нарушить работу программ, которые вычисляют
|
бинарном виде. А приведение time_t в целое без знака может нарушить работу программ, которые вычисляют
|
||||||
разницу во времени.</p>
|
разницу во времени.</p>
|
||||||
<h3>Что подвержено этой проблеме?</h3>
|
<h3>Что подвержено этой проблеме?</h3>
|
||||||
<p>В большинстве операционных систем для 64-битных архитектур уже используется 64-битное представление целого в
|
<p>Многие структуры данных, которые используются сегодня, имеют 32-битные представления времени, встроенные
|
||||||
time_t. Переход на такие архитектуры уже происходит, и ожидается, что он будет завершён к 2038 году.</p>
|
в их структуру. Полный список этих структур данных практически невозможно составить, но есть хорошо известные
|
||||||
<p>Тем не менее, сотни тысяч 32-битных систем всё ещё вводятся в строй в настоящее время, в том числе и во
|
структуры данных, у которых есть проблема времени Unix:</p>
|
||||||
встраиваемых системах, что вызывает сомнение, что они все будут заменены к 2038 году. Несмотря на то, что
|
<ul>
|
||||||
современные компьютерные системы могут модернизироваться раз в 18—24 месяцев (по «Закону Мура»), встроенные
|
<li>файловые системы (многие файловые системы используют только 32 бита для представления времени в индексных
|
||||||
компьютеры могут действовать без модернизации весь срок, который работают системы, ими управляемые.</p>
|
дескрипторах)</li>
|
||||||
<p>В дополнение к этому, 32-битный формат time_t также включён в спецификации форматов файлов, таких как
|
<li>форматы двоичных файлов (в которых используются 32-битные поля времени)</li>
|
||||||
повсеместно распространённый архивный формат ZIP. Формат файла может существовать в течение времени, за
|
<li>базы данных (которые имеют 32-битные поля времени)</li>
|
||||||
которое сменятся многие поколения компьютеров, а это означает, что Проблема 2038 останется актуальной.</p>
|
<li>языки запросов к базам данных, такие как SQL, которые имеют команды, похожие на <code>UNIX_TIMESTAMP()</code></li>
|
||||||
|
</ul>
|
||||||
|
<p>Примеры систем, использующих структуры данных, которые могут содержать 32-битные представления времени, включают:</p>
|
||||||
|
<ul>
|
||||||
|
<li>встроенные подсистемы управления и мониторинга завода, НПЗ</li>
|
||||||
|
<li>различное медицинское, военное оборудование</li>
|
||||||
|
</ul>
|
||||||
|
<p>Любая система, использующая структуры данных, содержащие 32-битные представления времени, представляет риск.
|
||||||
|
Степень риска зависит от характера отказа.</p>
|
||||||
<h3>Использаванные материалы при составлении этого текста</h3>
|
<h3>Использаванные материалы при составлении этого текста</h3>
|
||||||
<p><a href="https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D0%B0_2038_%D0%B3%D0%BE%D0%B4%D0%B0">Проблема 2038 года - Wikipedia RU</a></p>
|
<ul>
|
||||||
|
<li><a href="https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D0%B0_2038_%D0%B3%D0%BE%D0%B4%D0%B0">Проблема 2038 года - Wikipedia RU</a></li>
|
||||||
|
<li><a href="https://en.wikipedia.org/wiki/Year_2038_problem">Year 2038 problem - Wikipedia EN</a></li>
|
||||||
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<footer>
|
<footer>
|
||||||
<hr>
|
<hr>
|
||||||
|
|
Loading…
Reference in New Issue