Como consertar o & quot; kernel_task & quot; Bug de alto uso de CPU

Nunca é divertido quando o computador começa a funcionar lentamente, mas é ainda pior quando você não consegue descobrir por que está tão lento. Se você desligou todos os programas que pode, e tudo em seu Mac ainda parece estar se movendo através do melado, isso pode ser um sinal do temido kernel_task causando alto uso da CPU.

Em seu Mac, kernel_task é o nome dado a uma variedade de funções de baixo nível que permitem que o resto do seu computador funcione. Isso significa que descobrir o culpado pode ser difícil.

Já vimos muito isso, então temos algumas dicas para ajudá-lo a se livrar desse problema.

Diagnosticando um Mac lento

Se o seu Mac parece estar lento, gerando muito calor ou parece que está prestes a decolar devido à alta velocidade do ventilador, abra o Activity Monitor e descubra por quê. Este é essencialmente o equivalente do macOS ao Gerenciador de Tarefas do Windows.

Relacionado: O que é o Activity Monitor? O equivalente para Mac do Gerenciador de Tarefas

Você pode abrir o Activity Monitor usando o Spotlight: basta clicar em Cmd + Space e começar a digitar "activity" e ele deve aparecer. Você também pode encontrá-lo em Aplicativos> Utilitários e pode querer fixá-lo em seu Dock para um acesso ainda mais rápido ao se deparar com problemas graves.

O motivo do seu computador lento deve ser evidente na guia CPU . Basta clicar no cabeçalho da coluna % CPU para organizar os processos em execução por uso do processador. Qualquer coisa que use uma grande quantidade de poder de processamento aparecerá no topo; eles se moverão conforme o computador executa várias tarefas em segundo plano.

O alto uso da CPU geralmente é um problema apenas quando você não está esperando por isso. É razoável esperar que sua máquina consuma recursos se você estiver executando um jogo, assistindo a um vídeo no navegador ou editando um vídeo. Se uma única guia do Safari ou processo do Mac está usando mais do que seu quinhão, isso geralmente significa que algo deu errado.

Por que o kernel_task é o culpado?

Você pode eliminar a maioria dos processos clicando neles e, em seguida, clicando no X no canto superior esquerdo da tela. Infelizmente, você não pode fazer isso para um processo em particular: kernel_task . A razão para isso é que kernel_task é, na verdade, uma parte do macOS.

Não é tanto um processo único, mas na verdade uma série de processos sob um rótulo. Enquanto você trabalha, o macOS executa todos os tipos de tarefas em segundo plano. Isso inclui enviar e receber dados pela rede, gravar e ler dados no disco e indexar novas pastas ou discos para pesquisa do Spotlight.

Esse processo geralmente usa muita RAM disponível na guia Memória , mas isso é muito menos preocupante. A quantidade de RAM em uso aumentará e diminuirá conforme necessário. O alto uso da CPU, no entanto, pode fazer com que todo o seu sistema pare e até resultar em uma falha completa ocasional do sistema.

Então, como você impede que o kernel_task afete negativamente o desempenho do seu Mac?

Soluções simples para problemas do kernel_task

Em muitos casos, uma simples reinicialização do Mac resolverá o problema imediatamente. No entanto, essa não é uma solução permanente e de longo prazo se você já tem esse problema há algum tempo. É apenas uma solução de curto prazo que deve fornecer resultados imediatos.

O que quer que esteja causando o pico essencial no uso da CPU pode retornar. Portanto, se você está tendo incidentes repetidos, pode tentar redefinir o controlador de gerenciamento de sistema (SMC) também. Isso é fácil de fazer e pode corrigir uma grande variedade de problemas do macOS.

As instruções para redefinir o SMC variam ligeiramente dependendo do modelo de Mac que você possui. Como ele pode corrigir muitos problemas, temos um guia completo detalhando como redefinir o SMC do seu Mac . Ele também cobre a redefinição de seu PRAM, outra parte de um Mac que pode causar vários problemas.

Outras soluções para corrigir o alto uso da CPU do kernel_task

Talvez a correção mais óbvia para qualquer problema relacionado ao sistema operacional seja atualizar para a versão mais recente do macOS. Basta iniciar as Preferências do Sistema , clicar em Atualização de Software e executar todas as atualizações de software da Apple pendentes.

Outra causa comum de alto uso da CPU pelo processo kernel_task é o Adobe Flash. Já se foram os dias em que o Flash era essencial para navegar na web, mas você ainda pode precisar dele para um aplicativo da web ou site específico.

Em vez de manter o Flash instalado, você pode usar um navegador como o Google Chrome, que fornece Flash (embora opcional). Provavelmente, você não precisa do Flash, portanto, é seguro removê-lo. Além disso, como a Adobe não oferece suporte a Flash desde 31 de dezembro de 2020, você não receberá atualizações de segurança cruciais.

É crucial que você o remova – pelo menos por motivos de segurança. Para remover o Flash, execute o Adobe Flash Player Install Manager e clique em Desinstalar .

Explorando um pouco mais o alto uso da CPU kernel_task do Mac

Algumas pessoas tiveram sucesso na remoção das extensões do kernel, que são módulos de código capazes de realizar tarefas de baixo nível. Também conhecido como "kexts", a grande maioria dessas extensões é instalada pela Apple como parte do ambiente macOS principal. Alguns softwares instalam extensões de terceiros como drivers ou para controlar o hardware.

Uma maneira rápida de verificar se um kext de terceiros está causando os problemas do kernel_task é reiniciar sua máquina no Modo de Segurança. Para fazer isso, reinicie sua máquina e segure a tecla Shift ao inicializar. O Modo de segurança carrega apenas as extensões de kernel necessárias, portanto, se o problema não ocorrer neste ambiente, ele aponta para um problema com um kext de terceiros.

Para mergulhar nisso, reinicie o sistema normalmente e inicie o Terminal . Em seguida, execute o seguinte comando:

 kextstat

Isso mostrará quais extensões do kernel estão carregadas no momento. Todas as extensões da Apple serão semelhantes a:

 com.apple.[etc]

Enquanto isso, os drivers de terceiros terão o nome do desenvolvedor neles, como este:

 com.paragon-software.filesystems

E também como este:

 ch.tripmode.TripModeNKE

A melhor maneira de removê-los é desinstalar o software associado . Para alguns aplicativos, isso significa simplesmente mover o arquivo do aplicativo para a Lixeira e inserir sua senha de administrador para permitir a alteração.

Outros podem incluir um arquivo de desinstalação PKG que você precisa para executar. Para o resto, vá para Preferências do Sistema e procure os painéis de preferência de terceiros.

Começando com o OS X El Capitan, a Apple introduziu um novo recurso de segurança que quebrou uma série de modificações de terceiros. System Integrity Protection, ou SIP para abreviar, impede que os aplicativos injetem código nos próprios aplicativos da Apple, bem como gravam em certas partes da unidade que a Apple considera importantes para a segurança do sistema.

Isso resulta em melhor estabilidade do sistema, portanto, você deve ver esse problema com menos frequência nas versões modernas do macOS.

Ainda tem alto uso da CPU? O que fazer quando todo o resto falhar

A solução final aqui é um pouco arriscada: remover as extensões de kernel da própria Apple. Fazer isso não é recomendado. No entanto, se você tentou de tudo e ainda está vendo kernel_task causando alto uso da CPU, esta é uma solução que você pode querer tentar.

O desenvolvedor e blogueiro Viktor Petersson escreveu extensivamente sobre kernel_task e os problemas em torno dele. No caso dele, provavelmente foi causado por uma placa de som duvidosa. A postagem inicial de Petersson focou no Mac OS X Yosemite, embora ele tenha seguido com atualizações para versões posteriores do macOS.

Não testamos essa correção e não podemos dizer se ela funcionará para você. Se você estiver interessado em experimentar, eis o que você precisa fazer:

  1. Crie um backup do seu Mac usando o Time Machine ou outra solução de backup.
  2. Desligue a proteção de integridade do sistema inicializando no modo de recuperação e executando o seguinte comando no terminal:
     csrutil disable
  3. Siga o método de Viktor . Comece encontrando o modelo do seu Mac usando o comando:
     system_profiler -detailLevel mini | grep "Model Identifier:"
  4. Execute o seguinte comando:
     cd /System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/Contents/Resources
  5. Mova e faça backup do arquivo relevante para o seu modelo. Por exemplo, se seu identificador for MacBookPro8,2, você executaria:
     sudo mv MacBookPro8_2.plist MacBookPro8_2.bak
  6. Reinicialize no modo de recuperação e ative a Proteção de integridade do sistema novamente usando o comando:
     csrutil enable

Novamente, essa é uma solução de último recurso. Tente apenas se você estiver lutando para fazer algo devido ao kernel_task tornar seu Mac inutilizável. Esta não é uma solução de curto prazo – ela persiste mesmo depois de reinstalar o sistema operacional.

Mesmo assim, você também precisará repetir esse processo após cada atualização importante de software ou atualização do sistema operacional, pois a Apple irá restaurar o arquivo que você moveu.

Corrigindo o problema de bug do kernel_task do Mac

Geralmente, a atualização para uma nova versão do macOS traz novos recursos e capacidades, mas também pode introduzir bugs. Isso é especialmente verdadeiro em modelos mais antigos de hardware que estão começando a ultrapassar os limites.

Mas, se você começou a ver problemas com kernel_task em seu Mac somente após uma atualização, isso pode ser o culpado. Esperançosamente, um desses truques o ajudou a corrigir o problema e melhorar o desempenho do seu Mac.