Ainda que não seja normal e habitual, o macOS tem bugs, alguns até bastante engraçados. Um novo descoberto agora, funciona como uma bomba-relógio que ao explodir deixa o Mac quase inoperável e sem acesso à Internet. Tudo está, aparentemente, num contador de tempo que a cada 49 dias, 17 horas, 2 minutos e 47,296 segundos deixa de funcionar!
MacBooks da Apple ficam lentos após 49 dias
O Apple MacBook, o iMac, o Mac mini e outros sofrem de um bug do macOS que funciona como uma bomba-relógio no macOS. Após o temporizador atingir um determinado valor, novas ligações TCP deixam de ser estabelecidas. Isto faz com que muitas aplicações e sites deixem de funcionar neste hardware da Apple.
Quem tem um MacBook Neo, um MacBook Pro ou até mesmo um iMac e raramente reinicia o computador. No entanto, irá muitas vezes notar que o dispositivo fica lento ao fim de algumas semanas e algumas aplicações já não funcionam como esperado. A Photon identificou um bug que funciona como uma bomba-relógio e é provavelmente responsável por alguns destes problemas.
Este bug significa que, após exatamente 49 dias, 17 horas, 2 minutos e 47,296 segundos a partir do momento em que o Mac é ligado, as ligações de rede já não são corretamente encerradas. Isto leva inicialmente a um aumento da utilização da CPU, pois passado algum tempo são geridas centenas ou mesmo milhares de ligações que deveriam ter sido terminadas.
Culpa é de uma "bomba-relógio do macOS"
Assim que as portas disponíveis, geralmente em número de 16.384, são usadas, deixa de ser possível estabelecer novas ligações. A partir desse momento, muitas aplicações deixam de funcionar corretamente, embora as ligações de rede estabelecidas anteriormente continuem a funcionar sem problemas e o macOS também responda corretamente a um ping.
Uma reinicialização recomeça esta contagem decrescente e, portanto, corrige o problema durante exatamente 49 dias até que ocorra novamente. Este período não é uma coincidência, uma vez que o macOS utiliza um contador de 32 bits para determinar o tempo e a duração das ligações de rede. Assim sendo, pode armazenar valores até 2³², o que corresponde a 4.294.967.295 nanossegundos ou 49 dias, 17 horas, 2 minutos e 47,296 segundos.
Se este valor for excedido, o contador atinge o seu limite e deixa de funcionar. Pelo mesmo motivo, o Windows 95 e o Windows 98 bloqueavam ao fim de 49,7 dias, enquanto alguns derivados do Linux registam os segundos desde 1 de janeiro de 1970 com um contador de 32 bits, o que pode levar a erros a 19 de janeiro de 2038. Toda a informação sobre o histórico deste erro podem ser encontradas no relatório da Photon.
