Эпоха unix что это

Эпоха (ЮНИКС)

UNIX-время или POSIX-время (англ. Unix time ) — способ кодирования времени, принятый в POSIX-совместимых операционных системах.

Моментом начала отсчёта считается полночь (по UTC) с 31 декабря 1969 года на 1 января 1970, время с этого момента называют «эрой UNIX» (англ. Unix Epoch ).

Время UNIX согласуется с UTC, в частности, при объявлении високосных секунд UTC соответствующие номера секунд повторяются.

Способ хранения времени в виде количества секунд очень удобно использовать при сравнении дат (с точностью до секунды), а также для хранения дат: при необходимости их можно преобразовать в любой удобочитаемый формат. Дата и время в этом формате также занимают очень мало места (4 или 8 байтов, в зависимости от размера машинного слова), поэтому его разумно использовать для хранения больших объёмов дат. Недостатки в производительности могут проявиться при очень частом обращении к элементам даты, вроде номера месяца и т. п. Но в большинстве случаев эффективнее хранить время в виде одной величины, а не набора полей.

13 февраля 2009 года в 23:31:30 по UTC (02:31:30 14 февраля по MSK) значение UNIX-времени достигло 1234567890 секунд.

См. также

Ссылки

Полезное

Смотреть что такое «Эпоха (ЮНИКС)» в других словарях:

Эпоха Юникс — Эта статья о формате кодирования времени; об утилите см.: time (Unix). UNIX время или POSIX время (англ. Unix time) способ кодирования времени, принятый в POSIX совместимых операционных системах. Моментом начала отсчёта считается полночь (по… … Википедия

Эпоха (значения) — Эпоха: Исторический период, «меньший, чем эра»; например, эпоха Ренессанса, эпоха царизма, эпоха Юникс (см. ниже). Подразделение геохронологической шкалы. Эпоха момент, с которого начинают исчислять движение астрономического светила. Эпоха… … Википедия

Эпоха — Эпоха: Исторический период эра. Подразделение геохронологической шкалы. Эпоха момент, с которого начинают исчислять движение астрономического светила. Эпоха в геополитике см. Системы международных отношений. «Эпоха» петербургский ежемесячный… … Википедия

Источник

Unix time конвертер (Конвертер времени Unix онлайн)

Обычная дата(Human readable time)Секунды
1 минута60 секунд
1 час3600 секунд
1 день86400 секунд
1 неделя604800 секунд
1 месяц (30.44 дней)2629743 секунд
1 год (365.24 дней)31556926 секунд

Конвертивание эпохи Unix в человекопонятную дату(human readable date)

Unix дата начала и конца года, месяца или дня

Перевод секунд в дни, часы и минуты

Как получить Unix время в.

Конвертирование даты в Unix время в.

Конвертирование Unix времеми в понятную дату(human readable date).

Для чего нужен инструмент «Unixtime конвертер»?

Данный инструмент, в первую очередь, будет полезен веб-мастерам, которые постоянно имеют дело с большими объемами дат или часто в своей работе обращаются к их элементам. С помощью инструмента «Unixtime конвертер» можно легко конвертировать Unix время в понятную для пользователя дату (и наоборот), узнать текущее Unix epoch время, а также получить Unix время в различных языках программирования, СУБД и операционных системах.

Что такое Unix время?

Эра Unix (Unix epoch) началась в ночь с 31 декабря 1969 года на 1 января 1970 года. Именно эту дату взяли за точку отсчета «компьютерного» времени, которое исчисляется в секундах и занимает очень мало места на диске – всего 4 или 8 байт. С помощью такого способа кодирования программисты могут «спрятать» любую дату в одно число, и легко конвертировать его обратно в понятный пользователям формат.

Unix время (еще его называют Unix time или POSIX time) удобно использовать в различных операционных системах и языках программирования, так как оно отображается в виде одной величины, а не определенного количества полей, занимающих место. К тому же, UNIX time полностью соответствует стандарту UTC (в том числе и в високосных годах) – в таком случае соответствующие значения секунд просто повторяются.

Пару слов о терминах.

Итак, Unix-временем (или POSIX-временем) считается количество секунд, которые прошли с полуночи 1 января 1970 года до настоящего времени.

Unix Timestamp (временная метка) – это «зафиксированное» время, иными словами – конкретная дата, запечатленная в числе.

UTC (Universal Coordinated Time) – это Всемирное координированное время, которое «фиксируется» на нулевом меридиане, и от которого ведется отсчет географических часовых поясов.

Насколько «долговечна» данная система?

Всего лишь через пару десятков лет, а именно 19 января 2038 года в 03:14:08 по UTC Unix time достигнет значения 2147483648, и компьютерные системы могут интерпретировать это число как отрицательное. Ключ к решению данной проблемы лежит в использовании 64-битной (вместо 32-битной) переменной для хранения времени. В таком случае, запаса числовых значений Unix time хватит человечеству еще на 292 миллиарда лет. Неплохо, правда?

Unix время – одно для всех

Если вы живете в Лондоне или Сан-Франциско, а ваши друзья – в Москве, то «сверить часы» можно по Unix time: эта система в данный момент времени едина для всего мира. Естественно, если время на серверах выставлено правильно. А с помощью инструмента «Unixtime конвертер» такая конвертация займет у вас доли секунды.

Источник

Что такое время Unix и когда была эта эпоха?

Эпоха unix что это. Смотреть фото Эпоха unix что это. Смотреть картинку Эпоха unix что это. Картинка про Эпоха unix что это. Фото Эпоха unix что это

Время Unix – это система, которую компьютеры используют для измерения времени. Но как работает это время и что такое «эпоха Unix»?

Почему в Unix есть собственное понятие времени? Какая эпоха и в чем проблема Y2038?

Время Unix – это средство представления определенной даты и времени, используемое Linux, macOS и многими другими совместимыми системами. Он настолько распространен, что вы, вероятно, используете его, даже не подозревая об этом. Однако, как только вы поймете время Unix, вы заметите его во многих контекстах, а несколько предоставленных нами инструментов, могут помочь вам в работе со временем Unix.

Какова цель Unix Time?

Время Unix – это количество секунд, прошедших с фиксированной даты и времени. Это формат даты / времени (или отметки времени), который отличается от привычных нам удобочитаемых дат и времени. Это чисто из соображений эффективности. Для хранения одного числа, представляющего секунды, требуется намного меньше места, чем для хранения отдельных значений года, месяца, часа и т. д.

Конечно, говоря современным языком, разница в пространстве не так уж и велика. Но учтите, что Unix возник в конце 1960-х, когда доступное хранилище было намного меньше. Также часто используются временные метки, поэтому их хранилище увеличивается. Например, с каждым файлом связаны три метки времени.

Формат практически невозможно перевести в уме, если вы не гений математики. Но он по-прежнему имеет некоторые преимущества перед более читаемыми альтернативами, такими как среда, 21 октября 2015 г., 07:28:00 по Гринвичу. Вы можете легко и быстро заказать две метки времени Unix. Также обычно быстрее определить разницу между двумя отметками времени. Это особенно верно для дат, близких друг к другу, например, в соседние дни.

Об эпохе

Итак, время Unix – это общее количество секунд с определенного момента времени. Но что это за момент времени? Это 00:00:00 UTC на 1 января 1970 года. Это часто называют эпохой Unix. Программисты выбрали эту дату для эпохи из соображений удобства, поскольку это была ближайшая круглая дата, когда они изобрели время Unix.

Возможно, вы видели эту дату, когда что-то пошло не так. Это явно ошибка, но она выглядит очень странно, когда она приводит к дате до того времени, когда многие из нас родились! Впрочем, это вполне понятно, если знать о времени Unix. Если какая-либо система пытается отобразить метку времени, которая не имеет никакого значения, она часто преобразуется в 0 и приводит к точной дате эпохи.

Формат данных времени Unix

Собственно говоря, его нет. Исходный тип данных был 32-битным целым числом, и это часто остается так, даже в гораздо более мощных системах.

Этот тип данных позволяет значению хранить в общей сложности 2^32 (2 в 32-ой степени) секунды, что составляет чуть более 136 лет. Это значение обычно подписано, что означает, что оно может быть отрицательным или положительным. Таким образом, обычно это 68 лет по обе стороны от эпохи, то есть с 1902 по 2038 годы.

Конечно, это еще ограниченный период. Но в первую очередь формат временной метки использовался для таких понятий, как модификация файлов. Очень важно было представить время, близкое к настоящему, а не древнюю историю или далекое будущее. Даже для таких приложений, как календари, редко требуется представлять даты более чем на несколько десятилетий в будущем.

Но это не значит, что в этом ограниченном промежутке времени нет проблем…

Проблема 2038 года

Ошибка 2000 года, одна из худших ошибок программирования в истории, затронула компьютерные системы, которые хранят годы в виде двузначных значений. Когда наступил 2000 год, такие системы относились к нему так, как будто это был 1900 год. В действительности это было не так катастрофично, как предполагалось, главным образом потому, что многие люди заранее потратили много времени и усилий, готовясь к нему.

Если бы вы обратили внимание на предыдущий раздел, вы могли бы заметить аналогичную проблему, которая может повлиять на время Unix. Что ж, у Unix time есть собственная проблема с данными: проблема Y2k38. (Это часто называют проблемой, а не ошибкой; возможно, мы стали более оптимистичными с 2000 года!) Когда время Unix буквально истечет в 2038 году, системы будут рассматривать новые даты как 1902 или 1970.

По крайней мере, эта проблема нас не коснется ровно в полночь под Новый год. Последняя секунда 32-битного времени Unix приходится на 19 марта. В конечном итоге мы, скорее всего, модернизируем большинство систем к 2038 году, или к тому времени они все равно устареют.

Некоторые полезные ресурсы по меткам времени

Сайт Epoch Converter, возможно, является наиболее полным доступным конвертером временных меток. Он начинается с отображения текущего времени Unix – в реальном времени – и добавляет к этому почти все мыслимые функции. Его основное использование – для преобразования между отметками времени и датами, удобочитаемыми человеком, в обоих направлениях.

Dan’s Tools – это огромная коллекция полезных веб-приложений, одно из которых – конвертер временных меток, он более прост в использовании.

Time.is представляет еще один, еще более минималистичный вид. Он показывает время в нескольких форматах, включая время Unix. Он включает в себя текущее время в заголовке страницы, что полезно.

Использование Unix Time с инструментами командной строки

В Linux и macOS программа даты является основной утилитой для работы с датой и временем, включая временные метки Unix. Вызывается без каких-либо аргументов, возвращает текущую дату / время в удобочитаемом формате:

Если вам нужна текущая дата / время во времени Unix, используйте аргумент +% s :

Вы можете преобразовать дату, удобочитаемую человеком, в метку времени, используя флаг -d, если ваша версия даты поддерживает его. Большинство версий Linux по умолчанию должны:

В macOS дата – это другая программа, для которой требуется другой набор флагов:

Идя в другом направлении, вы можете преобразовать временную метку Unix, используя флаг -r:

Некоторые другие программы используют формат %s для работы со временем Unix. Например, если вы хотите показать дату изменения файла во времени Unix, с версией ls для Linux, вы можете использовать следующее:

Как использовать Unix Time в языках программирования

В PHP есть функция time(), которая возвращает текущую временную метку Unix. Его функция date() принимает метку времени в качестве второго аргумента:

JavaScript подходит к вещам интересным образом. У него есть метод Date.now() для получения количества миллисекунд с эпохи Unix. Конечно, вы можете разделить это на 1000 и округлить результат, чтобы получить эквивалентное время Unix в секундах:

Понимание времени Unix

Такие понятия, как эпоха и временные метки, являются важной частью начала работы с Linux. Время Unix – это простая концепция, которая возникает во многих местах. Как только вы это поймете, вы можете найти его весьма полезным, например, при вычислении разницы во времени. Вы также можете распознать, когда это может быть причиной определенных ошибок.

Источник

Рождение и развитие Unix

Эпоха unix что это. Смотреть фото Эпоха unix что это. Смотреть картинку Эпоха unix что это. Картинка про Эпоха unix что это. Фото Эпоха unix что это
Томпсон (сидит) и Ритчи работают на PDP-11, 1972 год.

Период 1968-69 гг. был очень неопределенным для Bell Labs: проект операционной системы с разделением времени Multics (Multiplexed Information and Computing Service), разрабатываемой с 1964 года для дорогой 36-битной ЭВМ GE-645, не имел четких перспектив и целей, а лишь разрастался в размерах и сложности, всё ясней был виден его предполагаемый провал. В конце концов, American Telephone & Telegraph вышла из проекта, в который за пять лет были вложены миллионы долларов.

Однако, некоторые из инженеров, работавших над Multics — Кен Томпсон, Деннис Ритчи, Малкольм Дуглас Макилрой, Джозеф Оссанна, — ощущали необходимость в продолжении работы над подобным проектом, и не хотели терять успевшую сформироваться уютную рабочую атмосферу. Поэтому в 1969 году они начали искать альтернативу Multics: Оссанна, Томпсон, Ритчи пытались протолкнуть покупку машины средней мощности, для которой группа обещала написать операционную систему. Заказ на предлагаемые ЭВМ DEC PDP-10 и Sigma 7 так и не был сделан, и хотя несколько раз ситуация выходила на грань получения нужного оборудования, было вполне очевидно, что команда просит слишком крупную сумму для проекта с расплывчатым планом, тем более, что после провала Multics операционные системы стали не настолько привлекательной сферой. Поэтому Томпсон (в основном это была его задумка), Кэнэдэй и Ритчи (привнесший идею файлов-устройств) разработали на обычных черных учебных досках и бумаге устройство файловой системы, которая позже стала сердцем Unix.

Начало работы

Томпсон написал для Multics симуляцию производительности предлагаемой файловой системы и страничного поведения программ, начал реализацию новой операционной системы для GE-645. Он разработал ассемблер для машины и рудиментарное системное ядро, способное лишь выводить приветственное сообщение. Сложность оборудования делала заметным достижение Томпсона, но как только выяснилось, что ввиду выхода из проекта Multics 645-ая серия в Bell Labs будет продолжать работать от силы несколько месяцев, работа была прекращена.

Также в 1969 году Томпсон написал игру Space Travel для Multics, пока ещё имел к ней доступ, а потом переписал её на Фортране для GECOS, операционной системы машин GE-635. Игра содержала всего лишь симуляцию движения основных тел Солнечной системы, среди которых игроку предлагалось провести корабль и приземлиться на планетах и их лунах. Игра в версии для GECOS имела два основных недостатка: высокая цена вычислительного времени ($75 за игру) и подтормаживания графики. Поискав, Кен нашел немного использовавшийся PDP-7 с отличным экраном, ранее машину купили как терминал Graphic-II для проекта анализа цепей.

Ритчи и Томпсон переписали Space Travel для запуска на этой ЭВМ. Работа над маленькой игрой была куда более важной, чем может показаться: поскольку они проигнорировали существующее программное обеспечение, приходилось писать пакет для обработки чисел с плавающей запятой, спецификации графических символов и систему отладки самостоятельно. Всё это было написано на GECOS на кросс-ассемблере для PDP-7, и процесс переноса ассемблерного кода на перфокартах использовался в дальнейшем для реализации уже файловой системы, проект которой уже был разработан.

Летом 1969 года жена Кена уехала к его родителям, чтобы показать новорожденного сына, и Томпсон с головой ушел в работу. Вместе с файловой системой новой операционной системы появился маленький набор пользовательских программ: копирование, печать, удаление, редактирование и, конечно же, интерпретатор команд, командный процессор. После доработки ассемблера отпала необходимость писать на GECOS и переносить файлы перфолентой. Хотя название Unix как отсылка к Miltics появилось только в 1970 году как шутка Брайана Кернигана на тему того, что новая система поддерживала лишь пользователя Томпсона, и поэтому должна носить название Un-multiplexed Information and Computing Service, операционная система уже родилась и жила.

Эпоха unix что это. Смотреть фото Эпоха unix что это. Смотреть картинку Эпоха unix что это. Картинка про Эпоха unix что это. Фото Эпоха unix что это

Файловая система Unix для PDP-7 имела линейный массив индексных дескрипторов, каждый из которых описывал файл, директории (особый файл, содержащий имена и ассоциированный индекс), особые файлы, описывающие устройства. Вызовы файловой системы тоже не слишком отличаются от сегодняшних: read, write, open, creat, close. Отличие было в том, что единицей ввода-вывода в PDP-7 было машинное слово, а не байт. Примитивная по сегодняшним меркам операционная система предоставляла более удобную среду разработки, чем существовавшие аналоги. Всё очевиднее становилось, что изначально устаревшая PDP-7, накладывающая множество раздражающих ограничений на работу новой операционной системы, не сможет удовлетворить нужды для дальнейшего развития, как и вся серия машин PDP-7, а разрешать закупку нового оборудования руководство вряд ли решится.

Оссанна, до конца его дней увлекавшийся текстовым процессингом, предложил схитрить и попросить у начальства новейший микрокомпьютер компании DEC — PDP-11 — для создания инструментов редактирования и форматирования текста. А факт того, что для создания этих инструментов потребуется написать операционную систему, шел почти что как сноска. Запрашиваемая сумма была куда меньше, чем ранее — всего 65 тыс. долларов.

Эпоха unix что это. Смотреть фото Эпоха unix что это. Смотреть картинку Эпоха unix что это. Картинка про Эпоха unix что это. Фото Эпоха unix что этоПредыдущие расплывчатые предложения встречались с неодобрением, это же было слишком узко́. Не сразу, но начальство клюнуло, уже в мае 1970 года благодаря усилиям Макмахона был произведен заказ на PDP-11. Машина прибыла в конце лета, но продукт был настолько новым, что накопительный диск пришлось ждать до декабря. Всё это время Томпсон, Ритчи и остальные продолжали работать над Unix на PDP-7. В это время новенький PDP-11 три месяца обсчитывал ходы шахматного коня на доске 6×8.

Лишь после установки накопителя PDP-11 всё усложняющаяся операционная система была переписана на новую машину. У версии Unix для PDP-11 не имелось особых преимуществ относительно версии для PDP-7. К примеру, всё так же не было многозадачности: лишь одна пользовательская программа могла находиться в ядре. Размеры системы были невелики: 24 килобайта ОЗУ (16 килобайт для операционной системы и 8 килобайт для пользовательских программ), диск с тысячей блоков (512 килобайт). Файлы были ограничены размером в 64 килобайта.

Затем была переписана программа roff, текстовый процессор, написанный Осанной. Впервые Unix испытали вне Bell Labs при работе в патентном отделе AT&T, где требовалось редактировать и форматировать заявки на патенты. Unix-система имела преимущества над испытываемой в это же время в патентном отделе коммерческой системой редактирования текста: во-первых, Unix имела поддержку 37-ой модели терминалов Teletype, печатавшей все требующиеся математические символы, во-вторых, в roff быстро добавили возможность нумеровать страницы, чем конкурент не обладал.

Во время второго полугодия 1971 года группа осуществляла поддержку трех машинисток и пыталась продолжать работу в свободное время. Unix получила хорошую репутацию за поддержку интересных функций на скромном оборудовании, и система была принята к использованию в патентном отделе AT&T, что давало возможность группе убедить руководство заказать ещё одну машину, другую модель PDP-11 — PDP-11/45, ещё более мощную, чем уже купленная.

В ранние годы Unix постоянно изменялась и эволюционировала, поэтому не было смысла выпускать версии или релизы, хотя периодически происходили издания программисткого руководства, и первые системы Unix носили названия этих изданий. Первое издание датируется ноябрем 1971 года.

Языки программирования высокого уровня

Каждая программа для Unix в версии PDP-7 писалась на очень слабом ассемблере — к примеру, не было макрокоманд. Первым интересным языком был TMG Макклура, реализованный Макилроем. Потом Томпсон решил, что нельзя предлагать компьютерную систему без Фортрана, поэтому он начал писать Фортран в TMG, но намерение реализовать его продлилось неделю. То, что он сделал, было компилятором для нового языка B. Новый язык испытал сильное влияние BCPL, вкуса Томпсона к спартанскому синтаксису и скромные размеры места для компилятора, который производил простой и медленный, но исполняемый код, что сделало жизнь программистов легче. Позже кросс-компилятор PDP-7 для PDP-11 был написан на B, и постепенно компилятор для PDP-7 был транслитерирован из TMG в B. С прибытием PDP-11 почти сразу же на ней был настроен B. Ещё до прибытия накопителя для новой машины на PDP-11 был написан калькулятор.

Над переписыванием операционной системы на B не особо задумывались, даже ассемблер для новой ЭВМ переписывался на ассемблере, поскольку интерпретируемый код был слишком медленным. Также стояла проблема несоответствия ориентированного на машинное слово B и PDP-11 с байтовой адресацией.

Поэтому в 1971 году была начата работа над тем, что стало языком C. Всем прекрасна известна связь BCPL → B → C, и нет смысла повторять её, стоит лишь отметить, что в 1973 году ядро операционной системы было переписано на C, и Unix приобрел черты своих современных версий. Было ещё множество внешних изменений, и внутреннее строение системы стало более рациональным и простым. Успех попытки подтвердил, что C является полезным и практически универсальным инструментом для системного программирования, а не игрушкой для простых приложений. Сегодня лишь самые важные программы Unix-подобных систем пишутся на ассемблере, почти все утилиты и приложения написаны на C.

Дальнейшее развитие

Годами Unix оставалась лишь исследовательским проектом Bell Labs, но в 1973 году авторы представили систему на симпозиуме Ассоциации по вычислительной технике, и запросы на предоставление копий посыпались сразу же. Это ставило AT&T в крайне неудобное положение: ещё в 1956 году монополист связи был ограничен от продажи продуктов и услуг, не связанных напрямую с телефонами и телекоммуникациями, и поэтому Unix не могла продаваться. Именно этим мы обязаны выпуску исходных кодов ранних версий практически всем желающим без поддержки, рекламы и исправлений.

И такая политика дала свои плоды: поклонники операционной системы уже тогда начали общаться и собираться вместе для обмена опытом, исправлениями и багфиксами, новыми инструментами и улучшениями системы. К популярности Unix в конечном счете привели не только простота, элегантность её устройства, востребованность и портируемость, но и формирование сплоченного комьюнити Usenix. Сообщества формировались не только в США, но и в Австралии (в университете Нового Южного Уэльса и Сиднейском университете), и все они обменивались магнитными лентами с новыми программами и исправлениями для системы. К середине 70-х годов именно это окружение сформировало современные традиции сообщества open-source.

Однако, чем популярнее становилась Unix, тем пристальнее юристы AT&T следили за несколько фривольным поведением лицензиатов. К примеру, Джон Лайонс, преподающий в университете Нового Южного Уэльса, в 1977 году опубликовал одну из самых известных книг всех времен «Комментарии к операционной системе Unix», включавшую и листинг исходных кодов ОС. Условия лицензирования Unix допускали обмен исходниками, поэтому вначале книга Лайона продавалась только лицензиатам. В 1979 году AT&T ужесточила наказание за использование книги в учебных классах, и нет ничего удивительного в том, что книга стихийно начала копироваться самиздатом, порой, фотокопии фотокопий имели практически нечитабельное состояние.

Юристы AT&T следили и за жизнью в Bell Labs. К примеру, между изданием шестого издания Unix в 1975 году и седьмого в 1979 Томпсон собрал из внешних и внутренних источников Bell Labs десятки важных исправлений для системы, которые собирался вбросить в пользовательскую базу. Юристы компании запретили ему это делать, поскольку это было бы формой поддержки. Но корректоры ошибок всё равно стали доступны: Лоу Кацу, основателю и презиенту Usenix, однажды позвонили и сообщили, что если он в 2 часа дня посетит определенное место на Маунтайн авеню (где и находится Bell Labs), то он найдет кое-что интересное. Кац последовал указаниям и нашел магнитную ленту с исправлениями, которые немедленно попали в руки бесчисленного числа пользователей.

80-е. Ответвления

После разрушения монополии Bell System компания AT&T более не была связана путами соглашения 1956 года. Одновременно с этим развивались многочисленные ответвления Unix, в первую очередь версия университета Беркли, которая была тщательно вычищена от кода AT&T, чтобы сделать её свободно распространяемой. После суда в 1992 году AT&T против университета Беркли законный статус Unix-клонов был подтвержден.

Если бы исходные коды Unix не были бы доступны общественности, Линус Торвальдс, как он сам говорит, вряд ли бы создал Linux, который в начале 90-х был написан с нуля. Сегодня именно Linux и семейство BSD несут крест отошедшей на задний план Unix и управляют всем: от мобильных телефонов до суперкомпьютеров.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *