Por que o horário do Unix começa em 01-01-2009? Por que não 1971-01-01 ou qualquer outra data?
Por que o horário do Unix começa em 01-01-2009? Por que não 1971-01-01 ou qualquer outra data?
Respostas:
Eu não saberia a resposta, exceto que o google estava lá para mim:
A partir daqui (precisa de assinatura gratuita):
O Linux segue a tradição estabelecida pelo Unix de contar o tempo em segundos desde seu "aniversário" oficial - chamado de "época" em termos de computação - em 1º de janeiro de 1970.
Uma explicação mais completa pode ser encontrada neste artigo da Wired News . Explica que os primeiros engenheiros do Unix escolheram essa data arbitrariamente, porque precisavam definir uma data uniforme para o início dos tempos, e o Dia de Ano Novo de 1970 parecia mais conveniente.
O Unix não nasceu em 1970.
A época do Unix é meia-noite de 1º de janeiro de 1970. É importante lembrar que este não é o "aniversário" do Unix - versões aproximadas do sistema operacional existiam nos anos 60. Em vez disso, a data foi programada no sistema em algum momento no início dos anos 70 apenas porque era conveniente fazê-lo, de acordo com Dennis Ritchie, um dos engenheiros que trabalhavam no Unix no Bell Labs desde o início.
Eu gosto da pergunta :-)
Deixe-me tentar responder (fonte do curso: internet)
O tempo Unix é representado por um número inteiro de 32 bits (um número inteiro) que pode ser positivo ou negativo (assinado). O Unix foi desenvolvido originalmente nas décadas de 60 e 70, de modo que o "início" do Horário do Unix foi definido para 1º de janeiro de 1970 à meia-noite GMT (horário de Greenwich) - nesta data / hora foi atribuído o valor de Tempo Unix igual a 0. É isso que se sabe como a época do Unix.
A 32 bit signed integer can represent whole numbers between -2147483648 and 2147483647. Since Unix Time starts at 0, negative Unix Time values go back in time from the Epoch and positive numbers go forward in time. This means that Unix Time spans from Unix Time value of -2147483648 or 20:45:52 GMT on December 13th 1901 to Unix Time value of 2147483647 or 3:14:07 GMT on January 19 in 2038. These dates represent the beginning, the pre-history and the end of Unix Time.
O final do horário Unix ocorrerá em 19 de janeiro de 2038 03:14:07 GMT. Em 19 de janeiro de 2038 03:14:08 GMT, todos os computadores que ainda usam o Unix Time de 32 bits serão excedidos. Isso é conhecido como "problema do ano 2038". Alguns acreditam que este será um problema mais significativo que o "problema do ano 2000". A correção para o problema do ano 2038 é armazenar o tempo do Unix em um número inteiro de 64 bits. Isso já está em andamento na maioria dos sistemas operacionais de 64 bits, mas muitos sistemas podem não ser atualizados até 2038.