Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

TraceSkin - another trace aspect

IP.com Disclosure Number: IPCOM000031312D
Original Publication Date: 2004-Sep-21
Included in the Prior Art Database: 2004-Sep-21
Document File: 1 page(s) / 34K

Publishing Venue

IBM

Abstract

One of the most popular means of debugging a program is the trace. Presented herein is the TraceSkin,which keeps the view of the latest trace instances, so that each particular trace in the code is monitored and its last values, along with the associated timestamp, and the total count of the times that trace was executed are preserved.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 92% of the total text.

Page 1 of 1

TraceSkin - another trace aspect

One of the most popular means of debugging a program is the trace. In an on-going environment, one cannot expect to retain all traces, because of the their sheer volume and size. Therefore, when the trace is utilized the tendency is to keep a cyclic buffer, such that only the last traces are kept. However, in few instances the trace buffer might be filled up with the often-visited traces, and important traces can get lost, thus hampering the debugging efforts. The "easy" way to solve this problem would be to use filters, so that only the relevant traces are collected. Such a technique might require numerous iterations but still, in extreme cases, does not guarantee that a rare trace (though very significant) is not lost.

The TraceSkin keeps the view of the latest trace instances, so that each particular trace in the code is monitored and its last values, along with the associated timestamp, and the total count of the times that trace was executed are preserved. This view of the trace can give the analyst a new view of the program/system's life-time activity. This technique guarantees that not even a single trace is lost. By sorting the traces according to their respective timestamps, one can create a sort of life-time trace depiction.

The TraceSkin is kept in a static array with enough entries to hold all relevant trace instances. Each time a trace is executed, its timestamp is retained, its respective counter is incremented, and...