|
Oracle v. Google - Oracle Responds on '720 Office Action - UPDATED |
|
Wednesday, July 13 2011 @ 09:00 AM EDT
|
Oracle has responded on one of the seven office actions it faces in the reexamination of the patents it has asserted against Google. It is clear from the response that Oracle is not going to abandon ship without a fight. This first response pertains to U.S. Patent No. 7,426,720 and is covered by reexamination number 95/001560.
We are not going to reproduce the Oracle filings in text because (a) they are extremely lengthy and (b) a number of you have expressed concern about being exposed to the detail of the arguments. However, for those of you who are interested in the detail, here are the filings (cover sheet omitted):
Claims and Cited Art [PDF]
Remarks and Arguments [PDF]
Appendices [PDF]
And here is the first office action [PDF] for reference.
Basic Oracle Arguments
In responding to the first office action in the reexamination Oracle identifies the following elements of Claim 1 of the '720 patent as going to the heart of the invention:
- A "class preloader" to obtain a representation of at least one class from a source definition provided as object-oriented program code;
- A "master runtime system process" to interpret and to instantiate the representation as a class definition in a memory space of the master runtime system process;
- A "runtime environment" to clone the memory space as a child runtime system process responsive to a process request; and
- A "copy-on-write process cloning mechanism" to copy references to the memory space of the master runtime system process into a separate memory space of the child runtime system process and to defer copying of the master's memory space until the child needs to modify the referenced memory space.
It is these elements that Oracle asserts escape the prior art references the examiner has cited, particularly that any combination of these elements was obvious. What will be interesting is whether any of the subsequent prior art that Google has now brought to the attention of the court will have an impact on this or the other reexaminations. By Google filing those further documents with the court, Oracle is now under an obligation to assure that the examiner in each of the reexaminations is aware of those documents, as well, even if Google does not file them with the USPTO.
*************
UPDATE
Judge Alsup has now posed a question to Google about Google's earlier negotiations with Sun over a possible patent license. The judge's question:
In reading the Daubert briefing, it appears
possible that early on Google recognized that it would infringe patents
protecting at least part of Java, entered into negotiations with Sun to
obtain a license for use in Android, then abandoned the negotiations as
too expensive, and pushed home with Android without any license at all.
How accurate is this scenario? Does Google acknowledge that Android
infringes at least some of the claims if valid? If so, how should this
affect the damages analysis? How should this affect the questions of
willfulness and equitable relief? Counsel should be prepared to address
these issues at the hearing.
Of course, Google has to answer this for themselves. However, I can tell you as an experienced licensing attorney that parties frequently have discussions over possible patent licenses while specifically avoiding any discussion over whether the patents are believed to be infringed. Google may well have been simply testing the waters to see if it was worth buying an "insurance policy" from Sun just to avoid later problems. Given that Google walked away from those negotiations, it is far more likely that they decided (a) Sun was asking too much and (b) the likelihood of infringement was relatively low. However, like everything else in this case, you shouldn't be reading the tea leaves too early.
Docket:
209 -
Filed & Entered: 07/11/2011
Order
Docket Text: REQUEST FOR UPDATE RE RE-EXAMINATION. Signed by Judge Alsup
on July 11, 2011. (whalc1, COURT STAFF) (Filed on 7/11/2011)
210 -
Filed & Entered: 07/12/2011
Order
Docket Text: NOTICE REGARDING ADDITIONAL QUESTIONS FOR JULY 21 HEARING.
Signed by Judge Alsup on July 12, 2011. (whalc1, COURT STAFF) (Filed on
7/12/2011)
211 -
Filed & Entered: 07/12/2011
Declaration in Support
Docket Text: Declaration in Support of [196] Administrative Motion to
File Under Seal DECLARATION OF MATTHEW SARBORARIA IN SUPPORT OF GOOGLE,
INC.S ADMINISTRATIVE MOTION TO FILE UNDER SEAL PORTIONS OF GOOGLES
DAUBERT REPLY BRIEF filed byOracle America, Inc.. (Attachments: # (1)
Proposed Order [PROPOSED] ORDER SEALING ORACLE AMERICA, INC.S
CONFIDENTIAL INFORMATION FROM GOOGLE, INC.S DAUBERT REPLY BRIEF)(Related
document(s)[196]) (Holtzman, Steven) (Filed on 7/12/2011)
212 -
Filed & Entered: 07/12/2011
Order on Administrative Motion to File Under Seal
Docket Text: ORDER PARTIALLY GRANTING MOTION TO FILE REPLY BRIEF UNDER
SEAL, Order by Hon. William Alsup granting in part and denying in part
[196] Administrative Motion to File Under Seal.(whalc1, COURT STAFF)
(Filed on 7/12/2011)
|
|
Authored by: nsomos on Wednesday, July 13 2011 @ 09:22 AM EDT |
Please post corrections here.
A summary in posts title may be helpful.[ Reply to This | # ]
|
|
Authored by: nsomos on Wednesday, July 13 2011 @ 09:28 AM EDT |
Please post off-topic to this article, while still being
on-topic to Groklaw in general. Please follow the "important stuff"
even if it pains you. Preview can only help you if you use it.[ Reply to This | # ]
|
|
Authored by: cassini2006 on Wednesday, July 13 2011 @ 09:33 AM EDT |
In a foggy computer science class on UNIX many many years ago, the UNIX
fork() command was covered. UNIX implements process cloning (via fork()) by
simply copying the memory space of the programs. An easy optimisation is to
implement the copy through using copy-on-write VM memory pages, because it is
far faster to copy through the VM system than copy in software. Also, most
fork() commands are followed by an exec or spawn command, so the work of copying
those memory pages will likely be wasted.
- Can anyone confirm this? for
UNIX, Linux and/or NextStep?
- Wouldn't this feature make the later three
claims extremely obvious?
- Did NextStep have a feature resembling a class
preloader? [ Reply to This | # ]
|
|
Authored by: nsomos on Wednesday, July 13 2011 @ 09:36 AM EDT |
"Oracle is now under an obligation to assure that the examiner
in each of the reexaminations is aware of those documents,
as well, even if Google does not file them with the USPTO."
And just how does Google or anyone else determine if Oracle
has fulfilled this obligation? How wise would it be for
Google to 'trust' Oracle to do what they are obliged to do?
What sort of trouble can Oracle get into, if they do other
or less than they should?[ Reply to This | # ]
|
|
Authored by: nsomos on Wednesday, July 13 2011 @ 10:28 AM EDT |
Please group posts on News Picks here.
A link in the first post on any given News Pick is useful
and appreciated. Remember to use HTML post mode.
Follow the 'Important Stuff', even if it pains you.
Your post can profit from use of 'preview'.[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, July 13 2011 @ 10:44 AM EDT |
What is the standard for determining whether a technique [read `claim`],
described in a patent is obvious? You see, it's very possible that none of the
patent examiners were active in the computer field in the 70s an 80s or even the
90s.
Am I wrong to assume that the side which will win will be the one with a
"better salesman?" [ Reply to This | # ]
|
|
Authored by: hAckz0r on Wednesday, July 13 2011 @ 10:46 AM EDT |
"class preloader" = program loader/interpreter loading of script byte
code
"master runtime system process" = kernel exec
"runtime
environment" = process environment cloning
"copy-on-write process cloning
mechanism" = fork with memory write through optimization
Nothing new here
except its object oriented code being launched. Cents to dollars that the first
object oriented language did the same thing. Simula? 1967 Smalltalk? 1972 The
biggest difference is that those languages did not call their interpreters
Virtual Machines. Little else has changed. Nothing new here, well, at least not
in the last 30 years or so.
--- DRM - As a "solution", it solves the
wrong problem; As a "technology" its only 'logically' infeasible. [ Reply to This | # ]
|
|
Authored by: designerfx on Wednesday, July 13 2011 @ 11:00 AM EDT |
the only thing they can reasonably claim for certain is what
the office has
said "isn't up for re-examination"
both basically claim that it's a: master
runtime process and
child runtime process that are java VM's.
Dalvik
doesn't run in entirely JAVA VM's anyway, so
this is entirely 100% BS.
Look at Oracle dance around that
oh so carefully. Dalvik runs in dalvik, so
this is mooted
entirely.
Ahh, love oracle misleading on everything. Even
technopedia
confirms.
So even if oracle says they own java, dalvik
is not java. So
all of the 720 patent doesn't even
apply.
Someone please review and/or comment
in case I'm wrong here,
but that was how I took this. [ Reply to This | # ]
|
|
Authored by: cassini2006 on Wednesday, July 13 2011 @ 02:25 PM EDT |
Appendix A: Declaration of Dr. Goldberg makes an interesting read. It
quickly becomes apparent that only a precise description written in the same
words as the patent will be considered an obvious match. For
example:
To achieve this, Traut teaches the use of copy-on-access
... combining Bryant with Traut would result in copy-on-access being used, but
never copy-on-write. [Appendix A: p. 6]
This neatly overlooks the
fact that copy-on-write is a special form of copy-on-access. Copy-on-access
requires interrupts on read-write, while copy-on-write requires interrupts on
write. Not all architectures support both forms.
Traut's virtual
machine emulates a hardware machine and interprets machine code, whereas
Bryant's Java virtual machine emulates a software machine and interprets Java
bytecodes. [Appendix A: p. 6]
This discussion conveniently
overlooks the difference between the Java software machine and a hardware
machine is that Sun never built the promised microprocessor that directly
executes Java bytecodes. For anyone reading a description of Java bytecodes,
they will quickly notice that they are almost identical to conventional machine
code.
The extent to which the discussion relies on labels and not firm
concepts is just amazing.
Anyone else have good quotes? [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, July 13 2011 @ 04:26 PM EDT |
What Oracle argues are examples that take a narrow view of what obviousness
means when it comes to patent claims. They want the standard applied to
individual citations to prior art one at a time, looking only to what a single
reference suggests in each case and comparing that one reference to to all
elements of a claim. The problem with this approach is that it practically makes
the obviousness requirement redundant to the novelty requirement. In a novelty
argument, the defendant has to show prior art that demonstrates existence of an
earlier work containing all elements of a contested claim.
Obviousness
should be a different type of standard. When considering a person ordinarily
skilled in a particular art, you should allow for that person's experience to
include everything he knows taken together. Obviousness doesn't flow from any
single teaching or suggestion, but from the sum total of what is known at the
time. Even if a particular example doesn't immediately suggest a certain course
of action all by itself, knowledge of the example combined with knowledge of
other known cases certainly can.
Just for some background on how
obviousness is considered by the courts and the USPTO today, I found the
following information helpful.
A big change in how the courts interpret
the obviousness requirement for patents came in the 2007 KSR v. Teleflex
ruling by the Supreme Court.
Seeking to resolve the question
of obviousness with more uniformity and consistency, the Court of Appeals for
the Federal Circuit has employed an approach referred to by the parties as the
“teaching, suggestion, or motivation” test (TSM test), under which a patent
claim is only proved obvious if “some motivation or suggestion to combine the
prior art teachings” can be found in the prior art, the nature of the problem,
or the knowledge of a person having ordinary skill in the art. See, e.g.,
Al-Site Corp. v. VSI Int’l, Inc., 174 F. 3d 1308, 1323–1324 (CA Fed. 1999). KSR
challenges that test, or at least its application in this case. See 119 Fed.
Appx. 282, 286–290 (CA Fed. 2005). Because the Court of Appeals addressed the
question of obviousness in a manner contrary to §103 and our precedents, we
granted certiorari, 547 U. S ___ (2006). We now
reverse.
When a work is available in one field of
endeavor, design incentives and other market forces can prompt variations of it,
either in the same field or a different one. If a person of ordinary skill can
implement a predictable variation, §103 likely bars its patentability. For the
same reason, if a technique has been used to improve one device, and a person of
ordinary skill in the art would recognize that it would improve similar devices
in the same way, using the technique is obvious unless its actual application is
beyond his or her skill. Sakraida and Anderson’s-Black Rock are illustrative—a
court must ask whether the improvement is more than the predictable use of prior
art elements according to their established
functions.
Often, it will be necessary for a court
to look to interrelated teachings of multiple patents; the effects of demands
known to the design community or present in the marketplace; and the background
knowledge possessed by a person having ordinary skill in the art, all in order
to determine whether there was an apparent reason to combine the known elements
in the fashion claimed by the patent at issue.
As
our precedents make clear, however, the analysis need not seek out precise
teachings directed to the specific subject matter of the challenged claim, for a
court can take account of the inferences and creative steps that a person of
ordinary skill in the art would employ.
The
obviousness analysis cannot be confined by a formalistic conception of the words
teaching, suggestion, and motivation, or by overemphasis on the importance of
published articles and the explicit content of issued patents. The diversity of
inventive pursuits and of modern technology counsels against limiting the
analysis in this way. In many fields it may be that there is little discussion
of obvious techniques or combinations, and it often may be the case that market
demand, rather than scientific literature, will drive design trends. Granting
patent protection to advances that would occur in the ordinary course without
real innovation retards progress and may, in the case of patents combining
previously known elements, deprive prior inventions of their value or
utility.
Well, you can get a good idea of what the Supreme
Court said in the KSR v. Teleflex decision. After the decision came out, the
USPTO put out a set of guidelines in 2007 for
examiners that included new tests for
obviousness.
(A) Combining prior art elements according to
known methods to yield
predictable results;
(B) Simple substitution of
one known element for another to obtain predictable results;
(C) Use of
known technique to improve similar devices (methods, or products) in the same
way;
(D) Applying a known technique to a known device (method, or
product) ready for improvement to yield predictable results;
(E)
“Obvious to try”–choosing from a finite number of identified, predictable
solutions, with a reasonable expectation of success;
(F) Known work in
one field of endeavor may prompt variations of it for use in either the same
field or a different one based on design incentives or other market forces if
the variations would have been predictable to one of ordinary skill in the
art;
(G) Some teaching, suggestion, or motivation in the prior art that
would have led one of ordinary skill to modify the prior art reference or to
combine prior art reference teachings to arrive at the claimed
invention.
However, the USPTO put out updated
guidelines in 2010 that reduced the seven tests down to only three. These
were seen as weakening the ability of parties to claim patent invalidity due to
obviousness. Tests (C), (D), (F), and (G) were eliminated from the previous
guidelines. As can be seen, the new guidelines seem to take back much of the
flexibility that the Supreme Court ruling in 2007 said was important to consider
when deciding on questions of obviousness.
Patently O has a table which
lists case law cited by the USPTO in their 2010 guideline analysis. It shows
Federal Circuit opinions since KSR v. Teleflex that interpret and implement its
holdings.
USPTO Guidelines for Determining
Obviousness
--bystander1313 [ Reply to This | # ]
|
|
Authored by: dmarker on Wednesday, July 13 2011 @ 07:38 PM EDT |
It just occurred to me that a significant amount of code used in Java came from
IBM Hursley (UK) and a lot from Rochester (USA).
When I saw this item
>>
A "master runtime system process" to interpret and to instantiate the
representation as a class definition in a memory space of the master runtime
system process;
<<
I wondered if in fact that was part of the object reinstantiation code from the
AS/400 project that was passed over to Sun by IBM.
IIRC, IBM did a deal with Sun to support and expand enterprise Java if IBM were
granted a perpetual lic to Java.
So, how much of what Oracle are claiming is stuff from IBM or the other Java
supporters who also came on board.
DSM[ Reply to This | # ]
|
|
Authored by: Anonymous on Thursday, July 14 2011 @ 02:04 AM EDT |
I'd guess the initial discussions were BEFORE davlik was
developed.. I'm guessning initally they were going to use
JVM and when that fell though, they wrote davlik to work
around it the patents and stuff they saw as applicable.
cheers
Frank[ Reply to This | # ]
|
|
Authored by: Anonymous on Thursday, July 14 2011 @ 10:59 AM EDT |
A "class preloader" to obtain a representation of at least
one class from a source definition provided as object-oriented program
code;
So a preloader? Like LD_PRELOAD or /etc/ld.so.preload?
Just narrowed to code defining Classes and object oriented
code?
A "master runtime system process" to interpret and
to instantiate the representation as a class definition in a memory space of the
master runtime system process;
Would this be like the KDE
process (kdeinit ?) that preloads a bunch of shared libraries (containing
several class definitions) to make it faster to launch
applications?
A "runtime environment" to clone the
memory space as a child runtime system process responsive to a process request;
and
This would be the fork() system call,
right?
A "copy-on-write process cloning mechanism" to
copy references to the memory space of the master runtime system process into a
separate memory space of the child runtime system process and to defer copying
of the master's memory space until the child needs to modify the referenced
memory space.
And this would be the basic copy-on-write fork
optimization that every 'modern' operating system used when I was in college 15
years ago.
The following is dated 2001. Is it relevant? kde-slow.txt [ Reply to This | # ]
|
|
|
|
|