O novo bug do milênio: Y2K38

Bruno Oliveira
Nov 6 · 2 min read

Entre os grandes medos que pairavam a informática nos anos 90, o Bug do Milênio possuía lugar privilegiado na primeira fila. O emblemático problema aconteceria na passagem do ano de 1999 para 2000 (também chamado de Y2K) em sistemas mais antigos, que traziam datas armazenadas com apenas dois dígitos finais.

Bug? Que bug? Não tenho! Aquele carrinho nas areias…

E se eu disser que o mesmo problema que ocorreu na virada do milênio tiver chance de ocorrer novamente, só que agora em 2038 (Y2K38). A história humana é uma repetição de eventos.

Isso pode ocorrer porque boa parte dos sistemas armazenam os horários em formato POSIX, padrão em plataformas UNIX e na linguagem C. Basicamente o POSIX armazena o tempo em segundos a partir de 01/01/1970 — e se considerarmos um computador de 32 bits, isso vai garantir um armazenamento de data até 19/01/2038 (mais preciso que o calendário maia). Essa configuração pode trazer erros da mesma natureza dos esperados no bug do milênio, ao chegar na data limite, os sistemas entenderão que depois de 2038 virá janeiro/1970.

Pequenos assuntos que aparentemente não significam nada na nossa vida, mas que são desafios fundamentais para quem pensa em como projetar o que vai existir no futuro — abraçar a complexidade é tratar as coisas complexas do jeito que elas realmente são, ainda que elas não pareçam ser

Claro que isso não é o fim da picada, mas trará uma série de transtornos. Uma das iniciativas é a modernização dos sistemas, incluindo a utilização de dispositivos de 64 bits — o que aumentaria a vida útil dos sistemas em alguns bilhões de anos. Mas isso não é tão trivial, para alguns sistemas que já estão implementados isso pode ocasionar na incompatibilidade dos sistemas. E, hoje em dia, há um agravante em relação ao milênio passado: usamos cada vez mais sistemas embarcados, ubíquos e pervasivos, com tecnologia de Internet das Coisas. Os dispositivos não são necessariamente dispositivos de alta tecnologia, e comumente possuem baixo poder de processamento e memória. Com as necessidades de resposta em tempo real, a sincronização de tempo e registro de horário são importantes, e por isso esse é um assunto fundamental e cada vez mais atual para se pensar as novas aplicações do século XXI.

As meninas da Peixe Babel são extraordinárias — explicando como o problema de datas nos dispositivos são mais importantes do que imaginamos

Se você gostou do meu artigo, por favor dê-me tantos aplausos quanto você puder! Isso me ajuda a identificar conteúdos que sejam realmente úteis e me incentiva a continuar a produzi-los no futuro, com o mesmo carinho e dedicação ❤️