Related articles |
---|
[7 earlier articles] |
Re: gawk memory leak cyber_surfer@wildcard.demon.co.uk (1997-04-07) |
Re: gawk memory leak bobduff@world.std.com (1997-04-07) |
Re: gawk memory leak clark@quarry.zk3.dec.com (1997-04-07) |
Re: gawk memory leak arnold@mathcs.emory.edu (1997-04-08) |
Re: gawk memory leak bobduff@world.std.com (1997-04-11) |
Re: gawk memory leak marssaxman@sprynet.com.antispam (1997-04-11) |
Re: gawk memory leak chase@naturalbridge.com (David Chase) (1997-04-11) |
Re: gawk memory leak pfoxSPAMOFF@lehman.com (Paul David Fox) (1997-04-13) |
From: | David Chase <chase@naturalbridge.com> |
Newsgroups: | comp.compilers |
Date: | 11 Apr 1997 00:06:57 -0400 |
Organization: | Natural Bridge LLC |
References: | 97-03-165 97-04-020 97-04-022 97-04-037 |
Keywords: | GC, legal, comment |
Robert A Duff wrote:
> By the way, I'd be interested in hearing exactly what is patented,
> re: purify.
5,535,329
Method and apparatus for modifying relocatable object code files and
monitoring programs
5,335,344
Method for inserting new machine instructions into preexisting machine
code to monitor preexisting machine access to memory
5,193,180 System for modifying relocatable object code files to monitor
accesses to dynamically allocated memory
This is one patent and two continuations of that patent. The abstract
(NOT the claims) of the most recent patent are:
An object code expansion program inserts new instructions and data
between preexisting instructions and data of an object code file;
offsets are modified to reflect new positions of the preexisting
instructions and data. For each item of preexisting object code
(instructions or data), the following steps are performed: making a
new code block comprising any desired new instructions and the item,
and storing it as new object code; tracking the location of the item
and the new code block within the new object code; and tracking items
that contain inter-item offsets. Then, each inter-item offset is
updated using the new location of the item or new code block, as
required. Finally, offsets in symbol tables and relocation structures
are updated with the new location of the item. This expansion program
is used to add instructions to object code files of a second program,
to monitor substantially all of the memory accesses of the second
program. The added instructions establish and maintain a memory status
array with entries for memory locations that are validly accessible by
the second program; entries indicate the status of corresponding
memory locations. The memory status array is used to check for the
errors of writing to unallocated memory and reading from unallocated
or uninitialized memory. Also, the data section of the object code
files are expanded with extra dummy entries to aid in the detection of
array bounds violations and similar data errors. Furthermore,
watchpoints can be established for more comprehensive monitoring.
Make of it what you will. I no longer have much confidence in my
intuition about what is or is not "patentable"; if it gets a patent,
then I guess must have been patentable.
David Chase
[If it gets a patent and the patent stands up in court, then it's patentable.
Few software patents have actually been litigated. -John]
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.