Os computadores podem interpretar apenas 1s e 0s, tornando um pouco complicado interpretar datas em termos de ano, mês e dia. Os cientistas descobriram uma solução para ajudar os computadores a entender as datas: fornecer a data ao computador como um valor numérico em termos de segundos e ensiná-lo a interpretar esse valor como uma data legível. Este valor de segundos será calculado escolhendo um ponto de referência e contando o número de segundos decorridos desde aquele ponto. É disso que trata o Epoch Time.
Apresentando o Epoch Time
No dicionário de inglês, “Epoch” é definido como um instante de tempo considerado o ponto de partida para um determinado período ou evento. Em computação, “Epoch Time” refere-se ao ponto inicial usado para calcular o número de segundos decorridos.
Tempo da época em sistemas operacionais comuns
A Epoch Time no mundo real começa às 00:00:00 UTC, onde UTC significa Tempo Universal Coordenado.
O Apple macOS considera seu Epoch Time como começando em 1 de janeiro de 1904.
O Microsoft Windows considera seu Epoch Time como começando em 1 de janeiro de 1601.
Os sistemas Unix e Linux consideram seu Epoch Time como começando em 1 de janeiro de 1970. Este tempo também é conhecido como Hora Unix e Época Unix.
O que será o tempo do Unix neste momento?
odate
O comando pode ser usado para encontrar a hora unix a qualquer momento, conforme mostrado abaixo.
O grande valor numérico é o número de segundos decorridos desde 00:00:00 UTC de 1º de janeiro de 1970. Para interpretar esta data como humana, ela pode ser alimentada como entrada novamente para o date
comando como mostrado abaixo.

Para mantê-lo simples, por padrão, o date
comando exibe uma data e hora legível junto com informações de fuso horário.

Quem decidiu a hora do Unix?
Nas décadas de 1960 e 1970, Dennis Ritchie e Ken Thompson construíram o sistema Unix juntos. Eles decidiram definir 00:00:00 UTC de 1º de janeiro de 1970 como o momento da “época” para os sistemas Unix.
Qual é a eficácia do tempo Unix?
A hora Unix é armazenada como um valor inteiro assinado de 32 bits. À medida que cada segundo passa, o valor continua aumentando e, eventualmente, atingirá seu limite em 03:14:07, 19 de janeiro de 2038, pois o valor inteiro assinado de 32 bits transbordará e se redefinirá para 13 de dezembro de 1901. Quando isso acontecer , ele interromperá várias atividades com limite de tempo em um sistema, como licenças de software, operações de backup, etc. Esse problema é conhecido como “Problema do ano 2038”.
Algumas pessoas sugeriram que o valor de 32 bits deveria ser alterado para um valor inteiro sem sinal. Isso significava que os sistemas Unix seriam capazes de interpretar datas até o ano 2106. No entanto, descobriu-se que isso não era efetivo para datas anteriores a 1970.
Nova maneira de armazenar tempo Unix
Os desenvolvedores logo surgiram com um valor inteiro assinado de 64 bits para armazenar a hora Unix. Isso significa que o tempo do Unix será válido por aproximadamente 14 bilhões de anos. Isso é quase 22 vezes maior do que a idade estimada atual do universo! Isso deve durar até o fim do universo (estimado em 13,8 bilhões de anos). Os sistemas de 64 bits mais recentes podem lidar com o novo tempo do Unix, mas não os sistemas de 32 bits mais antigos. O kernel do Linux introduziu esse valor de 64 bits para armazenar o número de segundos decorridos desde a época da versão 2.6.19.
Até o ano de 2038, acredita-se que os sistemas de 32 bits estarão fora de moda, então isso não deve ser um problema. Os sistemas incorporados usados em carros como a Unidade de Controle do Motor (ECU) dependem do tempo e são baseados em 32 bits. Espera-se que funcione até o ano 2038.
Fato engraçado
Uma situação semelhante foi observada com o videoclipe de Psy Gangnam Style carregado no YouTube, que anteriormente usava um valor de 32 bits para rastrear o número de visualizações de um vídeo. Esse vídeo obteve tantas visualizações que ultrapassou o limite de 32 bits. Desde então, o YouTube começou a usar um valor de 64 bits para rastrear a contagem de visualizações de seus vídeos, afirmando que não esperava que o número de visualizações de um vídeo ultrapassasse o valor de 32 bits.