Key points are not available for this paper at this time.
Die Überwachung von parallelen Programmen basiert typischerweise auf der Sammlung von Traces, um Programmausführungen zu abstrahieren. Bestehende Ansätze, die auf allgemeine Verhaltensmerkmale abzielen, sind jedoch entweder nicht für die Online-Überwachung konzipiert, werden nicht mehr gewartet oder implementieren naive Instrumentierungen, die häufig zu unsoliden Urteilen führen. Zuerst definieren wir das Konzept, wann ein Trace repräsentativ für eine parallele Ausführung ist. Dann präsentieren wir einen nicht-blockierenden Vektor-Uhr-Algorithmus, um während der Ausführung solide parallele Traces zu sammeln, die die partielle Ordnung zwischen Ereignissen widerspiegeln. Darüber hinaus stellt das Auftreten paralleler Ereignisse im repräsentativen Trace ein Soliditätsproblem für Monitore dar, die aus totalen Ordnungsformalismen abgeleitet sind. Zu diesem Zweck extrahieren wir eine kausale Abhängigkeitsbeziehung aus dem Monitor, um zu überprüfen, ob der Trace die erforderlichen Ordnungen aufweist, und definieren die Bedingungen, um zur Laufzeit zu entscheiden, wann ein gesammelter Trace monitorierbar ist. Wir implementieren unsere Beiträge in einem Tool, FACTS, das Programme, die nach Java-Bytecode kompilieren, instrumentiert, solide repräsentative Traces erstellt und den Monitor über nicht monitorierbare Traces warnt. Wir evaluieren unsere Arbeit und vergleichen sie mit bestehenden Ansätzen.
Soueidi et al. (Wed,) haben diese Frage untersucht.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: