|
|
1.1 ! root 1: .th MONITOR III 5/10/73 ! 2: .sh NAME ! 3: monitor \*- prepare execution profile ! 4: .sh SYNOPSIS ! 5: .ft B ! 6: monitor(lowpc, highpc, buffer, bufsize) ! 7: .br ! 8: int lowpc( ), highpc( ), buffer[ ], bufsize; ! 9: .sh DESCRIPTION ! 10: .it Monitor ! 11: is an interface to the system's profile entry (II). ! 12: .it lowpc ! 13: and ! 14: .it highpc ! 15: are the names of two functions; ! 16: .it buffer ! 17: is the address of a (user supplied) ! 18: array of ! 19: .it bufsize ! 20: integers. ! 21: .it Monitor ! 22: arranges for the system to sample the user's ! 23: program counter periodically ! 24: and record the execution histogram in ! 25: the buffer. ! 26: The lowest address sampled ! 27: is that of ! 28: .it lowpc ! 29: and the highest is ! 30: just below \fIhighpc\fR. ! 31: For the results to be significant, ! 32: especially where there are small, heavily ! 33: used routines, ! 34: it is suggested that the buffer be no more ! 35: than a few times smaller than the range ! 36: of locations sampled. ! 37: .s3 ! 38: To profile the entire program, ! 39: it is sufficient to use ! 40: .s3 ! 41: extern etext; ! 42: ... ! 43: monitor(2, &etext, buf, bufsize); ! 44: .s3 ! 45: .it etext ! 46: is a loader-defined symbol which lies just above all the ! 47: program text. ! 48: .s3 ! 49: To stop execution monitoring and write the results ! 50: on the file \fBmon.out\fR. ! 51: use ! 52: .s3 ! 53: monitor(0); ! 54: .s3 ! 55: Then, when the program exits, prof (I) can be used ! 56: to examine the results. ! 57: .sh FILES ! 58: mon.out ! 59: .sh "SEE ALSO" ! 60: prof (I), profil (II)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.