FERRAMENTAS LINUX: O Sanitizer de simultaneidade de kernel é definido para o Kernel Linux 5.5 para descobrir as condições de corrida de dados

quarta-feira, 27 de novembro de 2019

O Sanitizer de simultaneidade de kernel é definido para o Kernel Linux 5.5 para descobrir as condições de corrida de dados



Confira !!



Adicionando à lista de alterações no deck do kernel Linux 5.5 está um novo "desinfetante" para detectar as condições de corrida de dados.

O kernel do Linux já possui um desinfetante de endereços, desinfetante de comportamento indefinido e outros auxiliares, enquanto o mais novo é o desinfetante de simultaneidade do kernel. Como muitos dos desinfetantes para o kernel e dentro dos compiladores, o trabalho é cortesia dos engenheiros do Google.

O Sanitizer de simultaneidade do kernel deve poder detectar as corridas de dados dentro do kernel em tempo real quando compilado com o suporte "KCSAN" ativado. Devido à sobrecarga de tempo de execução, essa funcionalidade não deve ser empacotada para kernels de produção, mas mais apenas para testar compilações.

Veja como funciona: "O KCSAN usa os recursos de instrumentação -fsanitize = thread build time do GCC e do Clang, que transforma todas as leituras / gravações de memória em retornos de chamada __tsan_ * com endereços e sinalizadores de tipo de acesso passados ​​no KCSAN que o KCSAN pode processar e se transformar em uma matriz global de 'watchpoints' que denotam acessos contínuos. Se duas CPUs acontecerem uma com a outra através de um acesso não seguro (não atômico), um aviso será gerado. "

O Kernel Concurrency Sanitizer ainda está sendo aprimorado para solucionar falsos positivos, mas a implementação inicial está pronta para o Kernel Linux 5.5.

Fonte

Até a próxima !!


Nenhum comentário:

Postar um comentário