Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

United States Patent: (12) (10) Patent N0.: US 6,643,842 B2

Download as pdf or txt
Download as pdf or txt
You are on page 1of 45

US006643842B2

United Sta tes P a tent


( 1 2) ( 1 0) P a tent N 0. : US 6, 643, 842 B2
Angel et a l. ( 45 ) D a te o f P a tent: * N o v . 4, 2003
( 5 4) BYTE COD E IN STRUMEN TATION 5 , 297, 284 A * 3/1 994 Jo nes et a l. . . . . . . . . . . . . . . . . . 71 7/1 37
5 , 35 5 , 487 A * 1 0/1 994 Keller et a l. . 71 7/1 27
Inv ento rs : D a v id JI Ange], Huds o n, A T ROb IIlSOIl . . . . . . . . . . R- N H 99; 21 25 1 222 : 1 1 222 1 1 1 ~~~~~~~ ~~ 1 1 1 /1 22
_ , , erna e a . . giggghAMs o erif ll?di, gg?g?llglgggs ) 5 , 5 28, 75 3 A * 6/1 996 Fo rtin . . . . . . . . . . . . 71 4/35
' 5 , 5 81 , 696 A * 1 2/1 996 Ko la wa et a l. . . . . . . . . . 71 4/38
( Us ) 5 , 61 7, 5 69 A * 4/1 997 Gra y et a l. . . . . . . . . . . . . . 707/1 03 R
_ _ _ 5 , 628, 01 7 A * 5 /1 997 Kimmerly et a l. . . . . . . . . . . 71 7/1 27
( 73) As s lgneei Co mpuwa re COFP OFa tIOIL Fa rmlngto n 5 , 790, 85 8 A * 8/1 998 V o gel . . . . . . . . . . . . . . . . . . . . . . 71 7/1 30
Hills , MI ( Us ) 5 , 987, 249 A * 1 1 /1 999 Gro s s ma n et a l. . . 71 7/1 30
6, 01 6, 466 A * 1 /2000 Guinther et a l. . . . . . . . . . . . . 702/1 87
( * ) N o tice: Sub ject to a ny dis cla imer, the term o f this 6, 026, 237 A * 2/2000 Berry et a l. . . . . . . . . . . 71 7/1 30
pa tent is extended o r a djus ted under 35 6, 1 86, 677 B1 * 2/2001 Angel et a l. . 71 7/1 1 8
U_ S_ C_ 1 5 4( 1 ) ) b y 49 da ys _ 6, 31 4, 5 5 8 B1 * 1 1 /2001 Angel et a l. . . . . . . . . . . . . . . . . 71 7/1 1 8
. . . . . OTHER P UBLICATION S
This pa tent is s ub Ject to a termma l dis
cla imer. IBM Technica l D is clo s ure Bulletin, Memo ry P ro tectio n
So f twa re Fa cility f o r OS/2 Sha red D a ta Applica tio ns , v o l.
( 21 ) AP P L N o ; 09/95 1 , 01 7 N o . 34, Is s ue N o . 4A, Sep. 1 991 , 8 pa ges . *
( 22) Filed: Sep. 1 2, 2001 * Cited b y exa miner
( 65 ) P rio r P ub lica tio n D a ta P rima ry Exa minerTua n Q . D a m
( 74) Atto rney, Agent, o r FirmCho a te, Ha ll & SteW a rt
US 2002/0095 661 A1 Jul. 1 8, 2002
( 5 7) ABSTRACT
Rela ted US. Applica tio n D a ta _ _ _
Ins trumentmg a co mputer pro gra m to pro v ide ins trumented
( 63) Co ntinua tio n o f a pplica tio n N o . 09/25 0, 626, ?led o n Feb . b yte Co de includes exa mining the b yte Co de> Selecting Fo r
1 6, 1 999, no w P a t. N o . 6, 31 4, 5 5 8, W hich is a co ntinua tio n- tio ns o f the b yte co de f o r ins trumenta tio n, a nd ins trumenting
iII' P a Tt o f a pplica tio n N o - 0945 67-988, ?le/( . 1 o n AP L . 23, 1 998, the po rtio ns to pro v ide ins trumented b yte co de. Selecting the
235 5 ;; EI( O 5 /691 66771 2 ;h i1 d s lf gggl?a f b o grgjglgirlgs g po rtio ns ma y include cho o s ing po rtio ns o f the b yte co de
N o _ 5 , 987, 249 co rres po nding to metho d entry, metho d exit, a thro W , a
( 60) P ro v is io na l a pplica tio n N o , 60/045 , 01 8, ?led o n Apr, 28, metho d ca ll, o r a neW line numb er. Ins trumenting a po rtio n
1 997, pro v is io na l a pplica tio n N o - 60/036, 25 0, ?led o n Ja n- o f the b yte co de co rres po nding to a metho d ca ll ma y include
24 1 997 a nd P ro v is io na l a pplica tio n N O' 60/024, 624 ?led ins trumenting a lo ca l line numb er o f s o urce co de co rre
On Aug 27 1 996' s po nding to the b yte co de b eing ins trumented. Ins trumenting
( 5 1 ) Int. Cl. 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G06F 9/44 the po rtio ns ma y include a dding ca lls to ins trumenta tio n
( 5 2) US. Cl. . . . . . . . . . . . . . . . . . . . . . . . 71 7/1 30; 71 7/71 7; 71 7/1 27; runtiine f unctio ns tha t pa s s pa ra meters indica tiv e o f the
71 7/1 1 8; 71 4/35 po rtio ns b eing ins trumented. At lea s t o ne o f the pa ra meters
( 5 8) Field o f Sea rch . . . . . . . . . . . . . . . . . . . . . . . . . 71 7/1 1 8, 1 271 30, tha t is P a s s ed ma y include a line numb er o f the So urce Co de
71 7/1 46; 71 4/35 , 38, 45 co rres po nding to the po rtio n b eing ins trumented o r a this
po inter f o r the metho d co rres po nding to the po rtio n b eing
( 5 6) Ref erences Cited ins trumented. D a ta f ro m ins trumenta tio n ma y b e pa s s ed v ia
a mes s a ge s trea m tha t is v ieW ed a s the da ta is b eing
U' S' P ATEN T D OCUMEN TS genera ted a nd/o r s to red.
4, 667, 290 A *
5 , 265 , 25 4 A
5 /1 987 Go s s et a l. . . . . . . . . . . . . . . . . . 71 7/1 47
* 1 1 /1 993 Bla s cia k et a l. . . . . . . . . . . . . 71 7/1 30 41 Cla ims , 26 D ra wing Sheets
N ATIV E
COD E 400 \
402
CLAS$
IN SIAN TIAIOR
CLASS
IN P UI
V
RUN IIME
' MOD ULE ,
MON W OR
41 71 / W
, 1 MESSAGE SIREAM
A1 6 4
A
MESSAGE
D ATA
|
1
1
/ / b ,
1
1
1
1
1
1
/
lN STUMEN TAIION if >
41 0 D tt
AN ALYZERS/ if if , a ,
\LH? I V IEW ERS STORAGE
CLASS
1 N STAN CE
U. S. P a tent N o v . 4, 2003 Sheet 1 6f 26 US 6, 643, 842 B2
20
SOURCE 44
co ns / 40
V
c002
COMP ILER IN STRUMEN TATION
\\ /
- 42 5 O
OBJECT
COD E 46
Fig. 2
U. S. P a tent N o v . 4, 2003 Sheet 2 6f 26 US 6, 643, 842 B2
@ . 6
wOOu \
o m
@045 m 645
N @045 H W OSM
a
9K
U. S. P a tent N o v . 4, 2003 Sheet 4 6f 26 US 6, 643, 842 B2
mm
Rm
U. S. P a tent N o v . 4, 2003 Sheet 6 6f 26 US 6, 643, 842 B2
200
TREE
208g IN STRUMEN T
21 0 MOD IFY
OTHER
IR D ATA
Fig. 7
U. S. P a tent N o v . 4, 2003 Sheet 7 6f 26 US 6, 643, 842 B2
( EN TER )
V A
EFFECTIV E \
SCOP E \0 = 232
SCOP E ID
Fig. 8
U. S. P a tent N o v . 4, 2003 Sheet 8 6f 26 US 6, 643, 842 B2
( EN TER )
242
240
/
260
MARK N O
IN STRUMEN T
Fig. 9B
U. S. P a tent N o v . 4, 2003 Sheet 9 6f 26 US 6, 643, 842 B2
FROM
204
TO
202
TO
202
U. S. P a tent N o v . 4, 2003 Sheet 1 0 6f 26 US 6, 643, 842 B2
326
320
324
322
Fig. 1 1 8
U. S. P a tent N o v . 4, 2003 Sheet 1 1 6f 26 US 6, 643, 842 B2
M95 05
E< Q 25 E;
: @ \Sq
@9202
//
, 5 302
22: 22
2>
K326
W 5 00
W 222
w?
@0725 ;
$5 0 : 0 OS
@Ez w f l | 1
-225 ; 29725 35 5 ;
5 &7:
$4240
chub /i5 25 ;
r A
mo w
/ a ,
o o q
U. S. P a tent N o v . 4, 2003 Sheet 1 2 6f 26 US 6, 643, 842 B2
G { 420
7
RECEIV E
P OIN TER AN D SIZE
FOR CLASS
IN STAN CE
422
ALLOCATE SP ACE
FOR
IN STRUMEN TED
CLASS IN STAN CE
424
IN STRUMEN T 4' 26
CLASS
P ROV ID E N EW 428
P OIN TER + SIZE
TO V IV I
432
D EALLOCATE
SP ACE
U. S. P a tent
440 K
448
442
444
IN STRUMEN T
FOR
ABORT
T
I D ON E I
N o v . 4, 2003
I START I
T
IN STRUMEN T
METHOD
EN TRY
N EXT
45 0
N OE/Q
45 4
45 8
EXAMIN E
IN STRUCTION
Sheet 1 3 0f 26
446
IN STRUMEN T
FOR
N EW LN O
' f dI
IN STRUMEN T
FOR
US 6, 643, 842 B2
I45 2
f 45 6
THROW
IN STRUMEN T
L_ _ _ _ _ _ _ _ _ _ _ -.
FOR
EXIT
IN STRUMEN T
LOCAL
LN O
U. S. P a tent N o v . 4, 2003 Sheet 1 4 6f 26 US 6, 643, 842 B2
I START I
470K
IN SERT
P USH
THIS P OIN TER
476
IN SERT
P USH 478
METHOD
P ARAMETERS
I
IN SERT P USH 480
METHOD
IN FO
IN SERT CALL
TO MON ITORIN G
FUN CTION
T
I D ON E I
Fig. 1 5
482
U. S. P a tent N o v . 4, 2003 Sheet 1 5 6f 26 US 6, 643, 842 B2
I START I
490 I
K AD D ITEMS TO
EXCEP TION TABLE I492
TO CATCH ALL
OBJECTS
49b
IN SERT 498
P USH
THIS P OIN TER
IN SERT
P USH 1 5 00
METHOD
P ARAMETERS
IN SERT P USH
2
METHOD f SO
IN FO
IN SERT CALL
TO MON ITORIN G
FUN CTION
5 04
IN SERT
THROW 5 06
( OBJECT)
T
I D ON E I
Fig. 1 6
U. S. P a tent N o v . 4, 2003
CEO
Sheet 1 6 0f 26 US 6, 643, 842 B2
YES
IN SERT
P USH
THIS P OIN TER
IN SERT 5 2g
P USH
P ARAMETERS
I
IN SERT P USH 5 22
METHOD
IN FO
T
IN SERT CALL 5 24
TO MON ITORIN G f
FUN CTION
I
I D ON E I
Fig. 1 7
U. S. P a tent N o v . 4, 2003
5 30 K
Sheet 1 7 0f 26
I START I
IN SERT
D UP
OBJECT
US 6, 643, 842 B2
I5 32
IN SERT
P USH
METHOD
I5 34
I
IN SERT
P USH
LOCAL LN O
I
IN SERT CALL
TO MON ITORIN G
FUN CTION
I5 38
I
I D ON E I
Fig. 1 8
U. S. P a tent N o v . 4, 2003 Sheet 1 8 6f 26 US 6, 643, 842 B2
5 5 0 K
\N SERT P USH 5 5 2
LIN E
N UMBER
IN SERT CALL 5 5 4
TO MON HORIN G
FUN CTION
Fig. 1 9
U. S. P a tent N o v . 4, 2003 Sheet 1 9 6f 26 US 6, 643, 842 B2
600 K
624
AD D MON ITOR
FUN CTION S TO
CON STAN T P OOL
AD D N EW 61 8
MON ITOR FUN CTION S
TO LIST
T
MOD IFY 620
TABLES
T
Fig. 20

You might also like