Instrumentation (computer programming): Difference between revisions

Content deleted Content added
a few grammar and punctuation tweaks
copyvio from: https://web.archive.org/web/20070817132522/http://msdn2.microsoft.com/en-us/library/aa983649(VS.71).aspx
Line 1:
{{more footnotes|date=December 2013}}
In the context of [[computer programming]], '''instrumentation''' refers to an ability to monitor orthe measure the level of a product's performance, to diagnose errors, and to write [[Tracing (software)|trace]] information.<ref>[http://pic.dhe.ibm.com/infocenter/rtrthelp/v8r0m0/index.jsp?topic=%2Fcom.ibm.rational.testrt.doc%2Ftopics%2Fcinstruovw.html Source Code Instrumentation Overview at IBM website]</ref> Programmers implement instrumentation in the form of code [[Instruction (computer science)|instructions]] that monitor specific components in a system (for example, instructions may output logging information to appear on the screen). When an application contains instrumentation code, it can be managed by using a management tool. Instrumentation is necessary to review the performance of the application. Instrumentation approaches can be of two types: source instrumentation and binary instrumentation.
 
== Output ==
In programming, instrumentation means the ability of an application to incorporate:<ref>{{cite web|url=http://www.drdobbs.com/architecture-and-design/commenting-testing-and-instrumenting-cod/229300224|title=Commenting, Testing, and Instrumenting Code|date=January 3, 2011|accessdate=January 29, 2014}}</ref>
 
* Code [[Tracing (software)|tracing]] - receiving informative messages about the execution of an application at run time.
* [[Debugging]] and (structured) [[exception handling]] - tracking down and fixing programming errors in an application under development.<ref>{{cite web|url=http://www.drdobbs.com/architecture-and-design/commenting-testing-and-instrumenting-cod/229300224|title=Commenting, Testing, and Instrumenting Code|date=January 3, 2011|accessdate=January 29, 2014}}</ref>
* [[Profiling (computer programming)|Profiling]] - a means by which dynamic program behaviors can be measured during a training run with a representative input. This is useful for properties of a program that cannot be [[static program analysis|analyzed statically]] with sufficient precision, such as [[alias analysis]].
* Performance counters - components that allow the tracking of the performance of the application.