Instrumentierung (Computerprogrammierung) - Instrumentation (computer programming)

Im Zusammenhang mit der Computer - Programmierung , Instrumentierung bezieht sich auf das Maß für die Leistung des Produkts, um Fehler zu diagnostizieren und schreiben Spur Informationen. Es gibt zwei Arten von Instrumenten: Quellinstrumentierung und binäre Instrumentierung.

Ausgabe

Instrumentierung bedeutet in der Programmierung:

  • Profilerstellung : Messung des dynamischen Programmverhaltens während eines Trainingslaufs mit einer repräsentativen Eingabe. Dies ist nützlich für Eigenschaften eines Programms, die nicht statisch mit ausreichender Genauigkeit analysiert werden können , z. B. für die Alias-Analyse .
  • Timer in Funktionen einfügen.
  • Protokollierung wichtiger Ereignisse wie Abstürze.

Einschränkungen

Die Instrumentierung ist durch die Ausführungsabdeckung begrenzt. Wenn das Programm niemals einen bestimmten Ausführungspunkt erreicht, sammelt die Instrumentierung an diesem Punkt keine Daten. Wenn beispielsweise eine Textverarbeitungsanwendung instrumentiert ist, der Benutzer jedoch die Druckfunktion nie aktiviert, kann die Instrumentierung nichts über die Routinen aussagen, die ausschließlich von der Druckfunktion verwendet werden.

Einige Arten von Instrumenten können die Ausführungszeit dramatisch verlängern. Dies kann die Anwendung der Instrumentierung auf Debugging-Kontexte einschränken.

Siehe auch

  • Hooking - eine Reihe von Techniken, mit denen das Verhalten eines Betriebssystems, von Anwendungen oder anderen Softwarekomponenten geändert oder erweitert werden kann, indem Funktionsaufrufe oder Nachrichten oder Ereignisse abgefangen werden, die zwischen Softwarekomponenten übertragen werden
  • Befehlssatzsimulator - Simulation aller Anweisungen auf Maschinencodeebene zur Bereitstellung von Instrumenten
  • Runtime Intelligence - Technologien, verwaltete Dienste und Verfahren zur Erfassung, Integration, Analyse und Darstellung von Anwendungsnutzungsstufen, -mustern und -praktiken
  • Softwareleistungsanalyse - Techniken zur Überwachung der Codeleistung, einschließlich Instrumentierung
  • Hardware-Leistungsindikator
  • DTrace - Ein umfassendes Framework für die dynamische Ablaufverfolgung zur Fehlerbehebung bei Kernel- und Anwendungsproblemen auf Produktionssystemen in Echtzeit, implementiert in Solaris , macOS , FreeBSD und vielen anderen Plattformen und Produkten.
  • Java Management Extensions (JMX) - Java-Technologie zum Verwalten und Überwachen von Anwendungen, Systemobjekten, Geräten (z. B. Druckern) und serviceorientierten Netzwerken
  • Application Response Measurement - standardisierte Instrumentierungs- API für C und Java
  • Dynamische Neukompilierung - Eine Funktion einiger Emulatoren und virtueller Maschinen, bei der das System während der Ausführung möglicherweise einen Teil eines Programms neu kompiliert

Verweise