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

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-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';

View File

@ -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>

View File

@ -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;
} }