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

Para alguns setores, a atualização dos computadores é urgente - como no caso dos bancos.

Muitos deles ainda usam Windows XP em seus caixas eletrônicos e, caso não troquem o sistema operacional até 2038, vão ter problemas no agendamento de transações.

Entretanto, alguns sistemas operacionais já contam o tempo com um número de 64 bits - como o iOS7, da Apple (presente em gadgets como iPhone 5S).

Nestes casos, a preocupação fica restrita aos outros programas instalados no dispositivo - que também precisam registrar o tempo com 64 bits para não terem problemas em 2038.

Bug do Milênio

A situação toda lembra muito o chamado Bug do milênio, que era esperado para o ano 2000.

Naquela ocasião, o problema era o fato de algumas linguagens antigas usadas em programas de computador contarem os anos a partir de seus dois últimos dígitos (99 para 1999, por exemplo). O temor então era que elas entendessem que 2000 era 1900.

À época, foi necessário que muitos softwares fossem atualizados antes da virada de década. O problema, porém, não afetaria a contagem do tempo pelos sistemas operacionais - que só devem temer mesmo a chegada de 2038.

Felizmente, ainda faltam 24 anos. Até lá, espera-se, os computadores estarão atualizados e prontos para mais 290 bilhões de anos.

Nenhum comentário:

Postar um comentário