Manuel de suivi dynamique Solaris

Stratégie fill et sondes END

En règle générale, les sondes END ne se déclenchent pas avant que le suivi n'ait été arrêté de manière explicite par le consommateur DTrace. Les sondes END se déclenchent toujours sur une CPU, mais celle-ci n'est pas définie. Avec les tampons fill, le suivi est arrêté de manière explicite lorsqu'au moins l'un des tampons principaux par CPU est marqué comme rempli. Si la stratégie fill est sélectionnée, la sonde END est susceptible de se déclencher sur une CPU ayant un tampon rempli. Pour accueillir le suivi END dans des tampons fill, DTrace calcule la quantité d'espace potentiellement consommée par les sondes END et soustrait cet espace de la taille du tampon principal. Si la taille nette est négative, DTrace refuse de démarrer et dtrace(1M) affiche un message d'erreur correspondant.


dtrace: END enablings exceed size of principal buffer

Le mécanisme de réservation garantit qu'un tampon plein dispose toujours d'un espace suffisant pour n'importe quelle sonde END.