Guia de rastreamento dinâmico Solaris

Visão geral

O provedor plockstat disponibiliza testes para os seguintes tipos de evento:

Eventos de contenção

Esses testes correspondem à contenção em um primitivo de sincronização no nível do usuário, e são acionados quando um segmento é forçado a aguardar que um recurso se torne disponível. O Solaris é geralmente otimizado para o caso de não-contenção, sendo assim, a contenção prolongada não é esperada; esses testes devem ser usados para o entendimento desses casos onde acontece a contenção. Como a contenção é criada para ser (relativamente) rara, a ativação dos testes de evento de contenção geralmente não possui um efeito de teste sério; os testes podem ser ativados sem preocupação de afetar substancialmente o desempenho.

Eventos de manutenção

Esses testes correspondem a adquirir, liberar ou manipular um primitivo de sincronização no nível do usuário. Como tal, esses testes podem ser usados para responder a questões arbitrárias sobre a forma em que os primitivos de sincronização no nível do usuário são manipulados. Como os aplicativos geralmente adquirem e liberam os primitivos de sincronização muito freqüentemente, a ativação dos testes de evento de manutenção pode ter um maior efeito de teste do que os testes de evento de contenção. Enquanto o efeito de teste induzido pela ativação deles pode ser substancial, ele não é patológico; eles ainda podem ser ativados com confiança em aplicativos de produção.

Eventos de erro

Esses testes correspondem a qualquer tipo de comportamento anômalo encontrado ao adquirir ou liberar um primitivo de sincronização no nível do usuário. Estes eventos podem ser usados para detectar erros encontrados enquanto um segmento está bloqueando um primitivo de sincronização no nível do usuário. Os eventos de erro devem ser extremamente incomuns, sendo assim, ativá-los não deve induzir um efeito de teste sério.