Более подробное описание + новый шрифт

This commit is contained in:
dan63047 2021-11-23 19:48:40 +03:00
parent c8b4bad5ee
commit 44b020ab10
5 changed files with 33 additions and 15 deletions

BIN
Orloj.otf Normal file

Binary file not shown.

Binary file not shown.

View File

@ -1,6 +1,6 @@
@font-face{
font-family: '7Digital';
src: url('digital-7\ \(mono\).ttf');
src: url('Orloj.otf');
font-weight: normal;
font-style: monospace;
}
@ -23,7 +23,7 @@ body{
width: calc(100% - 16px);
}
#time{
font-size: 20em;
font-size: 12em;
width: calc(100% - 16px);
height: 100%;
font-family: '7Digital';

View File

@ -39,26 +39,44 @@
2038 года. Данная проблема затронет программы и системы, в которых используется представление времени по
стандарту POSIX (UNIX-время), которое представляет собой количество секунд, прошедшее с полуночи 1 января
1970 года. Такое представление времени — это стандарт для Unix-подобных операционных систем (из-за
повсеместного использования языка Си). Самая поздняя дата, которая может быть представлена таким форматом
в стандарте POSIX — это 03:14:07, вторник, 19 января 2038 года по Всемирному времени (UTC).</p>
повсеместного использования языка Си).</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 года не существует простого решения для существующих комбинаций операционных систем и
прикладного программного обеспечения. Изменение определения типа time_t на 64 бита нарушит бинарную
совместимость программ, существующих хранимых данных и всего другого, использующего представление времени в
бинарном виде. А приведение time_t в целое без знака может нарушить работу программ, которые вычисляют
разницу во времени.</p>
<h3>Что подвержено этой проблеме?</h3>
<p>В большинстве операционных систем для 64-битных архитектур уже используется 64-битное представление целого в
time_t. Переход на такие архитектуры уже происходит, и ожидается, что он будет завершён к 2038 году.</p>
<p>Тем не менее, сотни тысяч 32-битных систем всё ещё вводятся в строй в настоящее время, в том числе и во
встраиваемых системах, что вызывает сомнение, что они все будут заменены к 2038 году. Несмотря на то, что
современные компьютерные системы могут модернизироваться раз в 18—24 месяцев (по «Закону Мура»), встроенные
компьютеры могут действовать без модернизации весь срок, который работают системы, ими управляемые.</p>
<p>В дополнение к этому, 32-битный формат time_t также включён в спецификации форматов файлов, таких как
повсеместно распространённый архивный формат ZIP. Формат файла может существовать в течение времени, за
которое сменятся многие поколения компьютеров, а это означает, что Проблема 2038 останется актуальной.</p>
<p>Многие структуры данных, которые используются сегодня, имеют 32-битные представления времени, встроенные
в их структуру. Полный список этих структур данных практически невозможно составить, но есть хорошо известные
структуры данных, у которых есть проблема времени Unix:</p>
<ul>
<li>файловые системы (многие файловые системы используют только 32 бита для представления времени в индексных
дескрипторах)</li>
<li>форматы двоичных файлов (в которых используются 32-битные поля времени)</li>
<li>базы данных (которые имеют 32-битные поля времени)</li>
<li>языки запросов к базам данных, такие как SQL, которые имеют команды, похожие на <code>UNIX_TIMESTAMP()</code></li>
</ul>
<p>Примеры систем, использующих структуры данных, которые могут содержать 32-битные представления времени, включают:</p>
<ul>
<li>встроенные подсистемы управления и мониторинга завода, НПЗ</li>
<li>различное медицинское, военное оборудование</li>
</ul>
<p>Любая система, использующая структуры данных, содержащие 32-битные представления времени, представляет риск.
Степень риска зависит от характера отказа.</p>
<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>
<footer>
<hr>

View File

@ -1,6 +1,6 @@
@font-face{
font-family: '7Digital';
src: url('digital-7\ \(mono\).ttf');
src: url('Orloj.otf');
font-weight: normal;
font-style: monospace;
}