Categorias: Sistemas operacionais

Um bug estranho foi descoberto no macOS: o sistema “trava” após 49,7 dias de operação contínua.

Utilizar computadores Apple Mac como servidores é uma ideia inovadora. Apesar de suas raízes Unix, o macOS não foi projetado para operar corretamente sem supervisão, e configurá-lo e utilizá-lo nesse modo seria difícil. Isso é especialmente verdadeiro considerando que ele não conseguiu processar corretamente a atividade de rede por mais de 49 dias, 17 horas, 2 minutos e 47 segundos.

Engenheiros da Photon descobriram um bug no macOS da Apple, que opera uma frota de computadores Mac usados ​​para monitorar os serviços do iMessage. Em determinado momento, esses computadores param de responder às conexões de rede, embora processem pings corretamente. Curiosamente, eles continuam a manter as conexões de rede existentes, o que complica ainda mais o diagnóstico. Tradicionalmente, uma reinicialização resolve o problema, mas isso não ajuda a determinar a causa.

Especialistas da Photon observaram que o problema se manifesta após 49,7 dias de operação contínua da rede nos computadores Apple e criaram vários scripts para testar sua teoria. Acontece que o culpado era o contador de sistema “tcp_now”, cuja função é rastrear o tempo atual em milissegundos desde a inicialização da pilha TCP. Os valores de “tcp_now” são representados como um inteiro de 32 bits, com um valor máximo de 4.294.967.295 (2³² – 1), após o qual são zerados. Em milissegundos, isso equivale exatamente a 49,7 dias.

De acordo com os padrões, os sistemas operacionais encerram rapidamente as conexões TCP abertas; no macOS, esse período é de 30 segundos. Quando o valor de “tcp_now” se aproxima ou atinge o limite, o status de expiração da conexão é calculado.Em relação a esse parâmetro, o resultado é um valor que excede um número natural de 32 bits. Quando uma verificação periódica é realizada para determinar se uma conexão fechada deve ser excluída, o sistema retorna uma resposta negativa devido a um erro matemático. A pilha TCP sofre um estouro devido à retenção errônea de portas temporárias e para de funcionar quando não há mais portas disponíveis. A velocidade desse processo depende do volume de atividade da rede, mas em qualquer servidor ou ambiente profissional, ele ocorre rapidamente.

Portanto, uma reinicialização resolve o problema. Essa questão é a origem de vários bugs conhecidos relatados pela comunidade de usuários de computadores Apple. Talvez soluções mais adequadas surjam em breve.

admin

Postagens recentes

O TikTok está investindo mais € 1 bilhão em um centro de dados na Finlândia para armazenar e processar dados de usuários europeus.

O TikTok, uma criação da chinesa ByteDance, anunciou um investimento de € 1 bilhão em…

53 minutos atrás

A Intel lançou um driver com suporte para as placas gráficas profissionais Arc Pro B70 e Arc Pro B65.

A Intel lançou a versão mais recente do driver Arc Graphics, a 32.0.101.8629 WHQL. O…

1 hora atrás

O YouTube agora pode acelerar e desacelerar vídeos automaticamente, mas apenas para usuários pagos.

O YouTube Premium costuma ser escolhido para se livrar de anúncios irritantes, mas a assinatura…

1 hora atrás

A GoPro vai demitir 23% de seus funcionários para voltar a ser lucrativa.

A fabricante de câmeras de ação GoPro anunciou planos para demitir quase um quarto de…

1 hora atrás

“Não aos centros de dados”: Tiros são disparados contra a casa de um funcionário de Indianápolis que aprovou a construção de um centro de dados.

Os protestos contra a construção de data centers nos Estados Unidos estão se tornando mais…

2 horas atrás