Mostrando postagens com marcador Unix. Mostrar todas as postagens
Mostrando postagens com marcador Unix. Mostrar todas as postagens

sexta-feira, 23 de maio de 2014

Computadores podem parar de contar o tempo em 2038

Alguns sistemas operacionais só conseguem contar o tempo até 19 de janeiro de 2038. E isso pode se tornar um problema.

Felipe Wiecheteck / Stock Xchng
Em 2038, computadores e outros dispositivos eletrônicos em todo o mundo podem parar de contar o tempo. Embora pareça simples, o problema pode ter sérias consequências.

"Crônometros podem parar de funcionar, lembretes de eventos podem não ser enviados e atualizações ou backups agendados podem não acontecer", afirmou Jonathan Smith, professor da Universidade da Pensilvânia, em entrevista ao Business Insider.

A origem do problema está no Unix, sistema operacional criado na década de 1970 que inspirou o Windows e outros sistemas desenvolvidos depois dele.

O Unix tem um formato de registro de tempo muito limitado. E esse formato é usado também em outros sistemas. Em função disso, diversos gadgets e softwares vão precisar passar por uma atualização nos próximos 24 anos.

Problema

Quando criaram o Unix, os programadores optaram por contar o tempo em segundos a partir das 12h no UTC (um horário internacional de referência) do dia 1º de janeiro de 1970. 

Para isso, eles usaram um número de 32 bits. Com ele, é possível contar até 2.147.483.647 segundos.

Somados à hora a partir da qual a contagem começou, esses segundos nos levam ao horário de 3h14 UTC de 19 de janeiro de 2038.

Nesse momento, todos os gadgets e programas de computador que registram o tempo dessa forma devem reiniciar a contagem.

Teoricamente, devem voltar a marcar a hora partir da qual a contagem começou. Alguns deles entenderiam que estaríamos, de novo, em 1º de janeiro de 1970.

A solução para o problema é que, até 2038, todos os computadores estejam registrando o tempo com um número de 64 bits - que é capaz de contabilizar uma quantidade de segundos equivalente a mais de 290 bilhões de anos.

Corrida contra o tempo