Clique aqui para voltar à página inicial  http://www.novomilenio.inf.br/ano99/9902abu2.htm
Publicado originalmente pelo editor de Novo Milênio no caderno Informática do jornal A Tribuna de Santos, em 2/2/1999.
Última modificação em (mês/dia/ano/horário): 01/07/00 14:06:51
BUG DO MILÊNIO
Dez anos para acabar com o bug

Sente-se antes de continuar a leitura: não haverá tempo nem gente especializada para corrigir todos os sistemas neste ano: a previsão otimista é que o processo se estenda pelo menos até 2010 em todo o mundo. É preciso verificar cerca de 250 milhões de PCs, 85 mil computadores de grande porte e 21 bilhões de eletro-eletrônicos em todo o mundo, a um custo estimado em US$ 1 trilhão 635 bilhões, equivalente ao que teria sido gasto com três guerras do Vietnã. Aliás, o Gartner Group, conceituada entidade de pesquisas do setor, que inicialmente estimava um custo global de uns US$ 4 bilhões, e depois refez o cálculo para dez vezes mais, hoje estima o valor em US$ 4 trilhões (não é erro de cálculo: os custos é que estão aumentando, com a falta de especialistas no mercado para atender toda a demanda).

O sistema de uma pequena empresa tem pelo menos 400 mil linhas de código-fonte, a serem depuradas. Multiplique esse número pelo tempo médio de 2,6 segundos para analisar cada linha. Mesmo trabalhando 24 horas ao dia a essa velocidade, doze dias serão insuficientes. Mas, esta é apenas uma etapa do processo, pois além da conferência dos programas é necessário verificar fisicamente os equipamentos, corrigir os aplicativos padronizados que a empresas utiliza, verificar as redes e estender o processo de controle a todos os fornecedores, agentes financeiros etc. 

Apenas para corrigir um conhecido sistema composto por editor de textos, planilha de cálculos e banco de dados, é necessário gastar em média quatro horas por computador, e esse é apenas um passo entre sete etapas de verificação. Multiplique esse tempo por um parque de centenas e até milhares de computadores de uma grande corporação, e terá a dimensão do enfarte que aguarda o seu gerente de informática...

Mais dinamite – Para completar o quadro, se o leitor possui ou administra uma empresa com sistemas e computadores compatíveis com o bug do ano 2000, experimente ler as letras miúdas dos contratos de hardware e software. Descobrirá estar provavelmente sendo vítima de um jogo de palavras numa pequena cláusula, pela qual os fornecedores desses sistemas e equipamentos mascaram outro problema. Como alerta William David Kiss IV, em inglês a palavra compliant tem um sentido pleno, de total compatibilidade durante todo o tempo. A palavra latina compatível não tem o mesmo sentido pleno, dando a entender que a compatibilidade existe, mas não necessariamente em todas as situações e em todo o tempo.

Assim, muito administrador de rede ou empresário que acredita estar livre do problema em seus sistemas e equipamentos vai cair das nuvens, ao descobrir que essa não é a realidade. Esse jogo de palavras esconde, por exemplo, que a maioria dos computadores tem um relógio de tempo real (RTC) informando a data errada e um BIOS (sistema básico do computador, aquele que assume o controle assim que ele é ligado, para identificar os componentes existentes) que recebe essa data e faz uma conversão. A maioria dos programas vai buscar a informação de data no BIOS, e não terá problemas com isso, mas existem casos documentados de programas que sobrepassam o BIOS, buscando a informação de data diretamente no relógio de tempo real, o RTC. Nesses casos, mesmo sendo o computador compatível com o bug, a falha do milênio surgirá. 

No caso do software, esconde por exemplo que ao ser iniciado o sistema pode ser rodado um pequeno programa tipo TSR (Terminate and Stay Resident - ou seja, que fica residente na memória) para conversão de datas: ele recebe a data errada do BIOS e faz a correção, informando uma data correta ao sistema. Todos os programas que utilizam a data do sistema funcionarão normalmente, mas basta que um deles busque a data no BIOS ou no RTC e a falha aparecerá. Ou então, que na primeira reinstalação dos programas aquele TSR seja excluído por engano. Ou que, por alguma outra razão, o TSR não seja carregado quando da inicialização do sistema. Basta que um computador, por um pequeno período, funcione sem o TSR ativo para todo o sistema estar comprometido.

Nas duas situações, o problema será ainda mais grave, pois as pessoas estarão imaginando que o sistema é seguro e vai passar muito tempo até que alguém se lembre de rever os testes de certificação contra o Bug do Milênio.

Veja mais:
Sem bug!
Entenda o problema... e fique arrepiado!
Verificação é feita em sete níveis
Maioria da organizações sequer sabe que o problema existe
Governos crêem que não alertar sobre o caos ajuda a evitá-lo
Falha foi prevista com muita antecedência