Handbuch zur dynamischen Ablaufverfolgung in Solaris

Überblick

Der Provider lockstat stellt zwei Arten von Prüfpunkten zur Verfügung: „contention-event-Prüfpunkte“ und „hold-event-Prüfpunkte“.

Contention-event-Prüfpunkte sprechen auf Konkurrenzsituationen (Contentions oder Kollisionen) an einer Synchronisierungsgrundeinheit an und werden ausgelöst, wenn ein Thread gezwungen ist, zu warten, bis eine Ressource verfügbar wird. Solaris ist allgemein für den konkurrenzfreien Betrieb (also ohne Contentions) optimiert. Länger andauernde Konkurrenzsituationen sind folglich nicht zu erwarten. Diese Prüfpunkte helfen Ihnen, Fälle zu verstehen, in welchen es trotzdem zu Konkurrenz kommt. Da Konkurrenzsituationen relativ selten sind, beeinträchtigt die Aktivierung von contention-event-Prüfpunkten die Leistung in der Regel kaum.

Hold-event-Prüfpunkte sprechen auf das Erhalten, Freigeben oder eine andere Art der Manipulation von Synchronisierungsgrundeinheiten an. Diese Prüfpunkte können helfen, beliebige Fragen über die Art und Weise der Manipulation von Synchronisierungsgrundeinheiten zu beantworten. Da in Solaris sehr häufig Synchronisierungsgrundeinheiten erhalten und freigegeben werden (auf belasteten Systemen bewegen wir uns hier in einem Größenbereich von mehreren Millionen Mal pro Sekunde und CPU), bewirkt die Aktivierung von hold-event-Prüfpunkten eine wesentlich höheren Prüfaktivität als die Aktivierung von contention-event-Prüfpunkten. Die Aktivität kann zwar beträchtlich ausfallen, ist aber nicht schädlich. Diese Prüfpunkte können trotzdem gefahrlos auf Produktionssystemen aktiviert werden.

Der Provider lockstat stellt Prüfpunkte zur Verfügung, die auf die verschiedenen Synchronisierungsgrundeinheiten in Solaris ansprechen. Der Rest dieses Kapitels befasst sich mit diesen Grundeinheiten und den auf sie ansprechenden Prüfpunkten.