Close Menu
Український телекомунікаційний портал
    Facebook X (Twitter) Instagram Threads
    Український телекомунікаційний портал
    • Новини
    • Мобільна техніка
    • Технології
    • ПЗ
    • Наука
    • Транспорт
    • Дім
    • Обладнання
    • Здоров’я
    Facebook X (Twitter) YouTube Telegram
    Український телекомунікаційний портал
    Home»Новини»Події»Unix исполнилось 50 лет
    Події

    Unix исполнилось 50 лет

    ВолодимирBy Володимир01.01.20202 коментарі4 Mins Read
    Facebook Twitter Email Telegram Copy Link

    2020 год знаменателен для Unix: в самом начале года оригинальной операционной системе исполнилось 50 лет. Время Unix, известное также как «даты эпохи», — это количество секунд, прошедших с 1 января 1970 года. Но что же беспокоит разработчиков ядра в связи с полувековым юбилеем Unix?

    Хотя некоторые из ранних разработок Unix предшествуют официальному началу его «эпохи», 1 января 1970 года остаётся нулевой точкой во времени POSIX. Поэтому с началом 1 января 2020 года официально платформе исполнилось ровно 50 лет.

    Время Unix против времени человека

    С точки зрения человеческого времени, 50 лет — это большой период. С точки зрения времени Unix, нет ничего особенного в 50 лет, а 43 года были бы не менее значительными. Системы Unix (включая Linux) хранят значения даты и времени как количество секунд, прошедших с 1970-01-01 00:00:00 UTC, с записью в 32 битах. Чтобы определить, сколько секунд прошло с того времени и, следовательно, текущее значение времени Unix, можно выполнить команду:

    $ date +%s

    1576883876

    Аргумент %s после команды date задаёт отображение текущей даты и времени в виде количества секунд с начала 1970-01-01.

    Родословное дерево Unix-базированных систем

    Родословное дерево Unix-базированных систем

    Какую максимальную дату могут хранить системы Unix?

    Чтобы понять, сколько времени может вместить Unix-система, нужно оценить ёмкость 32-битного поля. Это можно рассчитать так:

    $ echo ‘2^32’ | bc

    4294967296

    Однако, поскольку Unix предусматривает сохранение и отрицательных чисел, один бит резервируется для знака, уменьшая, таким образом, значение времени до:

    $ echo ‘2^31’ | bc

    2147483648

    И так как нумерация Unix начинается с 0, это означает, что у нас есть 2 147 483 648 значений, но самое большое составляет 2 147 483 647 — значение даты и времени Unix не могут превышать это число. Так же, как одометр на автомобиле не может показывать больше 999 999 километров — добавьте 1, и значение обнулится.

    Сколько длится год в секундах?

    Количество секунд в году можно рассчитываются следующим образом:

    $ expr 24 \* 60 \* 60 \* 365

    31536000

    В високосном году добавляется ещё один день:

    $ expr 24 \* 60 \* 60 \* 366

    31622400

    Низкоуровневый графический интерфейс

    Низкоуровневый графический интерфейс

    Как Unix отображает свой 50-й день рождения?

    1 января 2020 года в 12:00 утра будет время 1577836800. Расчет несколько усложняется, потому что следует учитывать високосные годы. С начала эпохи Unix было 12 таких лет, начиная с 1972 года и заканчивая в 2016 году. То есть обычных лет прошло 38.

    Вот так выглядит команда expr для подсчета секунд за прошедшие 50 лет:

    $ expr 24 \* 60 \* 60 \* 365 \* 38 + 24 \* 60 \* 60 \* 366 \* 12

    1577836800

    Или так, с учётом ранее проведённых подсчётов:

    $ expr 31536000 \* 38 + 31622400 \* 12

    1577836800

    Этот способ записи времени сделал системы Unix невосприимчивым к проблеме Y2K года, из-за которой люди в конце 1999 года беспокоились, что переход на 2000 год может нанести ущерб компьютерным системам. Трудностей оказалось гораздо меньше, чем ожидалось. Фактически, только приложения, записывающие годы в двузначном формате, столкнулись с обнулением дат. Многие разработчики провели дополнительную работу, чтобы гарантировать, что их приложения не будут затронуты проблемой Y2K.

    Когда время Unix столкнется с проблемами?

    Аналогичные трудности ожидают Unix-системы не ранее 2038 года, когда даты, сохраненные в описанном выше формате, превысят 32-битное пространство. Остаётся ещё 18 лет, но разработчики ядра уже работают над тем, чтобы избежать грядущих сбоев.

    Проблема 2038 года иногда упоминается как проблема Y2K38. Если она не будет решена до вторника 19 января 2038 года, после этой даты системы могут подумать, что наступил 1901 год. Один из способов решения этой проблемы — перейти на 64-битное представление информации о дате и времени. Некоторые считают, что и это будет гораздо сложнее, чем может показаться.

    В любом случае, паниковать ещё рано. А действительно важным сегодня является 50-летний юбилей систем Unix, которые признаны одними из наиболее важных ОС в истории.

    Читайте також

    В Антарктиді виявили підземну активність біля льодовика “Судного дня”

    13.12.2025

    Пластикові частинки можуть змінювати наукове розуміння океанічного вуглецю

    12.12.2025

    Загадкова пандемія знищує морських їжаків по всьому світу

    12.12.2025

    Останні

    Незвичайне поховання часів вікінгів здивувало науковців

    14.12.2025

    Супутник Starlink уникнув зіткнення з китайським космічним апаратом

    14.12.2025

    Представлений новий кросовер Chery Fulwin T9L

    14.12.2025

    Вчені заявляють: людство офіційно вступило в «місячний антропоцен»

    14.12.2025
    Facebook X (Twitter) YouTube Telegram RSS
    • Контакти/Contacts
    © 2025 Portaltele.com.ua. Усі права захищено. Копіювання матеріалів дозволено лише з активним гіперпосиланням на джерело.

    Type above and press Enter to search. Press Esc to cancel.

    Ad Blocker Enabled!
    Ad Blocker Enabled!
    Наш вебсайт працює завдяки показу онлайн-реклами нашим відвідувачам. Будь ласка, підтримайте нас, вимкнувши блокувальник реклами.
    Go to mobile version