throbber
Paper No. 1
`
`UNITED STATES PATENT AND TRADEMARK OFFICE
`____________
`
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`____________
`
`MICROSOFT CORP.,
`Petitioner,
`
`v.
`
`VIRTAMOVE, CORP.,
`Patent Owner.
`____________
`
`Case No. IPR2025-00853
`Patent No. 7,784,058
`____________
`
`PETITION FOR INTER PARTES REVIEW
`UNDER 35 U.S.C. §§ 311-319 AND 37 C.F.R. § 42.1 et seq
`
`1619344368
`
`

`

`TABLE OF CONTENTS
`
`I.
`II.
`III.
`
`Page
`MANDATORY NOTICES ....................................................................................... 1
`A.
`Real Party-In-Interest ........................................................................... 1
`B.
`Related Matters ..................................................................................... 1
`1.
`United States Patent & Trademark Office ................................. 1
`2.
`USPTO Patent Trial and Appeal Board ..................................... 1
`3.
`U.S. District Court for the Eastern District of Texas ................. 2
`4.
`U.S. District Court for the Western District of Texas ............... 3
`5.
`U.S. District Court for the Northern District of California ....... 3
`C.
`Counsel and Service Information - § 42.8(b)(3) and (4) ...................... 3
`STANDING .................................................................................................... 4
`GROUNDS FOR UNPATENTABILITY ...................................................... 4
`THE ’058 PATENT ........................................................................................ 4
`A.
`Background and Specification ............................................................. 4
`B.
`Person of Ordinary Skill in the Art (“POSA”) ................................... 10
`C.
`Prosecution History ............................................................................ 10
`IV. CLAIM INTERPRETATION ...................................................................... 11
`V.
`CALLENDER RENDERS CLAIMS 1-18 OBVIOUS ................................ 12
`A.
`Callender (EX1005) ........................................................................... 12
`B.
`Claim-by-Claim Analysis ................................................................... 19
`1.
`Claim 1 ..................................................................................... 19
`a.
`[1PRE]: “A computing system for executing a
`plurality of software applications comprising:” ............ 19
`[1A] “a) a processor;” .................................................... 22
`[1B] ................................................................................ 22
`i.
`[1B.1] “b) an operating system having an
`operating system kernel...” .................................. 22
`
`b.
`c.
`
`1619344368
`
`– i –
`
`

`

`ii.
`
`iii.
`
`ii.
`
`ii.
`
`iii.
`
`[1B.2] “LOS kernel] having OS critical
`system elements (OSCSEs)...” ............................ 24
`[1B.3] “[OSCSEs] for running in kernel
`mode using said processor” ................................. 29
`[1C] ................................................................................ 31
`i.
`[1C.1] “c) a shared library having shared
`library critical system elements (SLCSEs)
`stored therein...” .................................................. 31
`[1C.2] “for use by the plurality of software
`applications in user mode...” ............................... 35
`[1D] ................................................................................ 39
`i.
`[1D.1] “i) wherein some of the SLCSEs
`stored in the shared library are functional
`replicas of OSCSEs and...”.................................. 39
`[1D.2] “are accessible to some of the
`plurality of software applications and...” ............ 44
`[1D.3] “when one of the SLCSEs is
`accessed by one or more of the plurality of
`software applications it forms a part of the
`one or more of the plurality of software
`applications” ........................................................ 46
`[1E] ................................................................................ 47
`i.
`[1E.1] “ii) wherein an instance of a SLCSE
`provided to at least a first of the plurality of
`software applications from the shared library
`is run in a context of said at least first of the
`plurality of software applications without
`being shared with other of the plurality of
`software applications and...” ............................... 47
`[1E.2] “where at least a second of the
`plurality of software applications running
`under the operating system have use of a
`unique instance of a corresponding critical
`system element for performing same
`function, and...” ................................................... 50
`
`d.
`
`e.
`
`f.
`
`ii.
`
`1619344368
`
`– ii –
`
`

`

`2.
`3.
`4.
`
`5.
`
`g.
`
`[1F] “iii) wherein a SLCSE related to a
`predetermined function is provided to the first of
`the plurality of software applications for running a
`first instance of the SLCSE, and wherein a SLCSE
`for performing a same function is provided to the
`second of the plurality of software applications for
`running a second instance of the SLCSE
`simultaneously.” ............................................................ 52
`Claim 2 ..................................................................................... 54
`Claim 3 ..................................................................................... 56
`Claim 4 ..................................................................................... 57
`a.
`[4A] ................................................................................ 57
`b.
`[4B] ................................................................................ 58
`i.
`Queue Setup ........................................................ 59
`ii.
`Interrupt Setup and Event Notification ............... 62
`Claim 5 ..................................................................................... 64
`a.
`[5A] ................................................................................ 64
`b.
`[5B] ................................................................................ 65
`6.
`Claim 6 ..................................................................................... 68
`7.
`Claim 7 ..................................................................................... 70
`8.
`Claim 8 ..................................................................................... 71
`9.
`Claim 9 ..................................................................................... 71
`10. Claim 10 ................................................................................... 72
`11. Claim 11 ................................................................................... 73
`a.
`Device access ................................................................. 73
`b.
`Interrupt Delivery .......................................................... 73
`c.
`Virtual memory mapping ............................................... 74
`12. Claim 12 ................................................................................... 74
`13. Claim 13 ................................................................................... 75
`14. Claim 14 ................................................................................... 76
`15. Claim 15 ................................................................................... 77
`
`1619344368
`
`– iii –
`
`

`

`16. Claim 16 ................................................................................... 78
`17. Claim 17 ................................................................................... 78
`18. Claim 18 ................................................................................... 79
`VI. DISCRETIONARY DENIAL IS UNWARRANTED ................................. 80
`VII. CONCLUSION ............................................................................................. 81
`CERTIFICATE OF SERVICE UNDER 37 C.F.R. § 42.6 (E)(4) ............................ 1
`CERTIFICATE OF WORD COUNT ....................................................................... 2
`VIII. CLAIM LISTING ........................................................................................... 3
`
`1619344368
`
`– iv –
`
`

`

`TABLE OF AUTHORITIES
`
`CASES
`BMW of North America, LLC v. Michigan Motor Techs., LLC,
`IPR2023-01224, Paper 15, 11 (Feb. 15, 2024) ................................................... 77
`Facebook, Inc. v. Express Mobile Inc.,
`IPR2021-01457, Paper 10 (Mar. 18, 2022) ........................................................ 78
`Ford Motor Co. v. Neo Wireless LLC,
`IPR2023-00763, Paper 28 (Mar. 22, 2024) ........................................................ 78
`Google LLC v. Security First Innovations, LLC,
`IPR2024-00215, Paper 15 (May 23, 2024) ........................................................... 8
`KSR Int’l v. Teleflex,
`550 U.S. 398 (2007) ............................................................................................ 22
`Markforged Inc. v. Continuous Composites,
`IPR2022-00679, Paper 7 (Oct. 25, 2022) ........................................................... 77
`PLR Worldwide Sales Ltd. v. Flip Phone Games, Inc.,
`IPR2024-00209, Paper 9 (May 10, 2024) ..................................................... 21, 35
`Protect Animals With Satellites LLC v. OnPoint Sys., LLC,
`IPR2021-01483, Paper 11 (Mar. 4, 2022) .......................................................... 77
`Sand Revolution II, LLC, v. Cont’l Intermodal Group–Trucking,
`IPR2019-01393, Paper 24 (June 16, 2020) ......................................................... 76
`Tesla, Inc. v. Graphite Charging Company LLC,
`IPR2024-00388, Paper 15 (Aug. 27, 2024) ........................................................ 78
`Videndum Production Sols., Inc. v. Rotolight Ltd.,
`IPR2023-01218, Paper 12 (Apr. 19, 2024) ......................................................... 79
`Volkswagen Grp. of America, Inc. v. Carucel Investments, L.P.,
`IPR2019-01105, Paper 8 (Dec. 2, 2019)............................................................. 79
`REGULATIONS
`37 C.F.R. §42.100(b) ................................................................................................. 8
`
`1619344368
`
`– v –
`
`

`

`37 C.F.R. §42.104(a) .................................................................................................. 1
`37 C.F.R. §42.104(b)(3) ............................................................................................. 8
`STATUTES
`35 U.S.C. §102(e) ...................................................................................................... 1
`35 U.S.C. §103 ........................................................................................................... 1
`35 U.S.C. §282(b) ...................................................................................................... 8
`35 U.S.C. §314(a) .............................................................................................. 76, 78
`35 U.S.C. §315(d) .................................................................................................... 79
`35 U.S.C. §325(d) .................................................................................................... 79
`OTHER AUTHORITIES
`Director’s Interim Procedure for Discretionary Denials, 5 (June 21, 2022) ..... 76, 77
`
`1619344368
`
`– vi –
`
`

`

`APPENDIX LISTING OF EXHIBITS
`Description
`U.S. Patent No. 7,784,058
`Prosecution History of U.S. Patent No. 7,784,058
`Declaration of Samrat Bhattacharjee, Ph.D. (“Bhattacharjee”), (EX.
`1003 from IPR2025-00489)
`Curriculum Vitae of Dr. Samrat Bhattacharjee
`U.S. Patent No. 7,024,672 (“Callender”)
`RESERVED
`U.S. Patent No. 6,263,376 (“Hatch”)
`U.S. Patent No. 6,260,075 (“Cabrero”)
`U.S. Patent No. 6,212,574 (“O’Rourke”)
`U.S. Patent No. 5,481,706 (“Peek”)
`U.S. Patent No. 7,499,966 (“Elnozahy”)
`U.S. Patent App. Pub. No. 2004/0216145 (“Wong”)
`U.S. Patent App. Pub. No. 2003/0065856 (“Kagan”)
`U.S. Patent No. 7,583,681 (“Green”)
`Excerpts from Charles Petzold, Programming Windows 95
`(Microsoft Press 1996) (“Petzold”)
`U.S. Patent App. Pub. No. 2002/0066086 (“Linden”)
`U.S. Patent No. 6,349,355 (“Draves”)
`Excerpts from Silberschatz et. al, Operating System Concepts
`(Wiley 6th ed. 2002) (“Silberschatz”)
`U.S. Patent No. 7,451,456 (“Andjelic”)
`Chart re: ’058 Patent accompanying Plaintiff VirtaMove Corp.’s
`Supplemental Preliminary Disclosure of Asserted Claims and
`Infringement Contentions, in VirtaMove, Corp. v. Google LLC,
`7:24-cv-00033-DC-DTG (W.D. Tex.) (Sep. 26, 2024)
`U.S. Patent App. Pub. No. 2002/0095224 (“Braun”)
`U.S. Patent No. 6,173,336 (“Stoeckl”)
`U.S. Patent No. 6,016,515 (“Shaw”)
`U.S. Patent No. 7,080,172 (“Schmalz”)
`Excerpts from Webster’s New World Computer Dictionary (10th ed.
`2003)
`Excerpts from Barron’s Dictionary of Computer and Internet Terms
`(8th ed. 2003)
`U.S. Patent No. 7,324,450 (“Oliver”)
`U.S. Patent App. Pub. No. 2003/0103455 (“Pinto”)
`
`Exhibit
`1001
`1002
`1003
`
`1004
`1005
`1006
`1007
`1008
`1009
`1010
`1011
`1012
`1013
`1014
`1015
`
`1016
`1017
`1018
`
`1019
`1020
`
`1021
`1022
`1023
`1024
`1025
`
`1026
`
`1027
`1028
`
`1619344368
`
`– vii –
`
`

`

`1029
`1030
`1031
`1032
`1033
`1034
`
`1035
`
`1036
`1037
`1038
`1039
`1040
`1041
`1042
`1043
`1044
`1045
`1046
`1047
`1048
`
`1049
`
`1050
`
`1051
`
`1052
`
`1053
`
`1054
`1055
`
`U.S. Patent No. 6,526,567 (“Cobbett”)
`U.S. Patent App. Pub. No. 2004/0142563 (“Fontarensky”)
`U.S. Patent No. 7,284,246 (“Kemp”)
`U.S. Patent No. 5,375,241 (“Walsh”)
`U.S. Patent No. 6,698,015 (“Moberg”)
`Excerpts from Collin, Dictionary of Computing (Collin 4th Ed.
`2002) (“Collin”)
`Microsoft Computer Dictionary (Microsoft 5th ed. 2002)
`(“Microsoft”)
`U.S. Patent No. 6,526,159 (“Nickerson”)
`U.S. Patent App. Pub. No. 2003/0154320 (“Calusinski”)
`U.S. Patent No. 7,437,483 (“Goossen”)
`U.S. Patent No. 7,100,162 (“Green-162”)
`U.S. Patent No. 7,453,852 (“Buddhikot”)
`U.S. Patent No. 5,584,023 (“Hsu”)
`U.S. Patent No. 7,144,031 (“Lin”)
`U.S. Patent No. 6,792,492 (“Griffin”)
`U.S. Patent App. Pub. No. 2002/0116563 (“Lever”)
`U.S. Patent No. 6,594,698 (“Chow”)
`U.S. Patent No. 7,216,164 (“Whitmore”)
`U.S. Patent No. 6,988,271 (“Hunt”)
`Liss et. al, Efficient Exploitation of Kernel Access to Infiniband: a
`Software DSM Example, 11th Symposium on High Performance
`Interconnects, 2003 (“Liss”)
`Patel et. al., A Model of Completion Queue Mechanisms Using the
`Virtual Interface API, Proc. IEEE Int’l Conf. on Cluster Computing,
`281-282 (IEEE 2002) (“Patel”)
`Scheduling Order in VirtaMove, Corp. v. Google LLC, 7:24-cv-
`00033-DC-DTG (W.D. Tex. June 17, 2024) (ECF 34)
`Federal Court Management Statistics–Profiles, U.S. District Courts–
`Combined Civil and Criminal (September 2024)
`Google LLC’s Proposed Claim Terms for Construction, VirtaMove,
`Corp. v. Google LLC, 7:24-cv-00033-DC-DTG (W.D. Tex.) (Oct. 1,
`2024)
`Plaintiff’s Disclosure of Proposed Claim Constructions, VirtaMove,
`Corp. v. Google LLC, 7:24-cv-00033-DC-DTG (W.D. Tex.) (Oct. 1,
`2024)
`U.S. Patent No. 7,124,260 (“LaBerge”)
`U.S. Patent No. 7,406,677 (“Colling”)
`
`1619344368
`
`– viii –
`
`

`

`1056
`1057
`1058
`
`1059
`
`1060
`
`1061
`1062
`1063
`1064
`1065
`1066
`1067
`
`1068
`
`U.S. Patent No. 5,278,969 (“Pashan”)
`Excerpts of Webster’s New World Dictionary (4th Ed. 2003)
`Joint Claim Construction Statement, VirtaMove, Corp. v. Google
`LLC, 7:24-cv-00033-DC-DTG (W.D. Tex.) (Dec. 18, 2024)
`Google’s Opening Claim Construction Brief, VirtaMove, Corp. v.
`Google LLC, 7:24-cv-00033-DC-DTG (W.D. Tex.) (Oct. 22, 2024)
`Request for Ex Parte Reexamination of U.S. Patent No. 7,784,058
`(“Unified Reexam”)
`U.S. Patent No. 7,210,124 (“Chan”)
`U.S. Patent No. 7,055,152 (“Ganapathy”)
`U.S. Patent No. 6,419,502 (“Trammel”)
`U.S. Patent App. Pub. No. 2003/0140051 (“Fujiwara”)
`U.S. Patent No. 6,442,752 (“Jennings”)
`U.S. Patent App. Pub. No. 2003/0225864 (“Gardiner”)
`VirtaMove’s Responsive Claim Construction Brief, VirtaMove,
`Corp. v. Google LLC, 7:24-cv-00033-DC-DTG (W.D. Tex.) (Nov.
`12, 2024)
`VirtaMove’s Surreply Claim Construction Brief, VirtaMove, Corp.
`v. Google LLC, 7:24-cv-00033-DC-DTG (W.D. Tex.) (Dec. 13,
`2024)
`U.S. Patent No. 7,213,247 (“Wilner”)
`1069
`U.S. Patent App. Pub. No. 2004/0078600 (“Nilsen”)
`1070
`U.S. Patent App. Pub. No. 2002/0138675 (“Mann”)
`1071
`1072-1088 RESERVED
`1089
`Order Granting Defendant Google LLC’s Motion to Transfer
`Venue, VirtaMove, Corp. v. Google LLC, 7:24-cv-00033-DC-DTG
`(W.D. Tex.) (Jan. 22, 2025)
`Order Cancelling Markman Hearing, VirtaMove, Corp. v. Google
`LLC, 7:24-cv-00033-DC-DTG (W.D. Tex.) (Jan. 17, 2025)
`1091-1096 RESERVED
`1097
`U.S. Patent No. 7,424,710 (“Nelson”)
`1098-1106 RESERVED
`1107
`Plaintiff VirtaMove Corp.’s Supplemental Preliminary Disclosure of
`Asserted Claims and Infringement Contentions, in VirtaMove, Corp.
`v. Google LLC, 7:24-cv-00033-DC-DTG (W.D. Tex.) (Sept. 06,
`2024)
`Plaintiff VirtaMove Corp.’s Preliminary Disclosure of Asserted
`Claims and Infringement Contentions, in VirtaMove, Corp. v.
`Microsoft Corp., 7:24-cv-00338 (W.D. Tex.) (Mar. 28, 2025)
`
`1090
`
`1108
`
`1619344368
`
`– ix –
`
`

`

`MANDATORY NOTICES
`Real Party-In-Interest
`A.
`Petitioner Microsoft Corp. (“Microsoft”) is the Real Party-in-Interest.
`
`B.
`
`Related Matters
`1.
`United States Patent & Trademark Office
`The application from which U.S. Patent No. 7,784,058 (“the ’058 patent”)
`
`issued claims priority to provisional application No. 60/504,213, filed September
`
`22, 2003.
`
`The following U.S. patent applications claim the benefit of priority to U.S.
`
`Patent 7,784,058:
`
`(i) U.S. Patent Application 11/432,843 (U.S. Patent No. 7,757,291), filed
`
`May 12, 2006; (ii) U.S. Patent Application 11/380,285 (U.S. Patent No.
`
`7,774,762), filed April 26, 2006; (iii) U.S. Patent Application 12/075,842 filed
`
`March 13, 2008.
`
`U.S. Patent No. 7,784,058 is the subject of Ex Parte Reexamination No.
`
`90/019,676, requested by Unified Patents, LLC, filed on September 23, 2024.
`
`USPTO Patent Trial and Appeal Board
`2.
`Concurrently with the present petition, Petitioner is filing IPR2025-00854
`
`and IPR2025-00855, also challenging U.S. Patent No. 7,784,058.
`
`1619344368
`
`– 1 –
`
`

`

`Petitioner is also filing IPR2025-00849, IPR2025-00850, IPR2025-00851,
`
`and IPR2025-00852 challenging U.S. Patent No. 7,519,814 (“814 patent”), which
`
`is also asserted in VirtaMove, Corp. v. Microsoft Corp., Case No. 7:24-cv-00338,
`
`listed below.
`
`Other proceedings filed against the ’814 or ’058 patents include:
`
`(i) International Business Machines Corp. v. VirtaMove, Corp., IPR2025-
`
`00591;
`
`(ii) International Business Machines Corp. v. VirtaMove, Corp., IPR2025-
`
`00599;
`
`(iii) Google LLC v. VirtaMove, Corp., IPR2025-00487;
`
`(iv) Google LLC v. VirtaMove, Corp., IPR2025-00490;
`
`(v) Google LLC v. VirtaMove, Corp., IPR2025-00489;
`
`(vi) Google LLC v. VirtaMove, Corp., IPR2025-00488;
`
`(vii) Amazon.com, Inc. v. VirtaMove, Corp., IPR2025-00563;
`
`(viii) Amazon.com, Inc. v. VirtaMove, Corp., IPR2025-00566;
`
`(ix) Amazon.com, Inc. v. VirtaMove, Corp., IPR2025-00561.
`
`U.S. District Court for the Eastern District of Texas
`3.
`(i) VirtaMove, Corp. v. Hewlett Packard Enterprise Company, Case No.
`
`2:24-cv-00093;
`
`1619344368
`
`– 2 –
`
`

`

`(ii) VirtaMove, Corp. v. International Business Machines Corporation, Case
`
`No. 2:24-cv-00064.
`
`U.S. District Court for the Western District of Texas
`4.
`(i) VirtaMove, Corp. v. Google LLC, Case No. 7:24-cv-00033;
`
`(ii) VirtaMove, Corp. v. Amazon.com, Inc. et al, Case No. 7:24-cv-00030
`
`(pending transfer to Northern District of California per Order dated February 19,
`
`2025, see Docket Entry No. 94);
`
`(iii) VirtaMove, Corp. v. Microsoft Corp., Case No. 7:24-cv-00338;
`
`(iv) VirtaMove, Corp. v. Oracle Corp., Case No. 7:24-cv-00339.
`
`U.S. District Court for the Northern District of California
`5.
`(i) Red Hat, Inc. v. VirtaMove, Corp., Case No. 5:24-cv-04740;
`
`(ii) VirtaMove, Corp. v. Google LLC, Case No. 5:25-cv-00860.
`
`C.
`
`Counsel and Service Information - § 42.8(b)(3) and (4)
`
`Lead Counsel
`Backup Counsel
`
`James M. Heintz, Reg. No. 41,828
`Robert Williams (pro hac vice forthcoming)
`Zachary Loney (pro hac vice forthcoming)
`Meera Midha (pro hac vice forthcoming)
`Service Information E-mail:
` DLA-MicroIPR-VirtaM@us.dlapiper.com
`
`Post and hand delivery: DLA Piper LLP (US)
`One Fountain Square
`11911 Freedom Drive, Suite 300
`Reston, VA 20190-5602
`
`Telephone: 703 773 4000
`Facsimile: 703 773 5000
`
`– 3 –
`
`1619344368
`
`

`

`A power of attorney is submitted with the Petition. Counsel for Petitioner
`
`consents to service of all documents via electronic mail.
`
`Petitioner requests inter partes review and cancellation of claims 1-18 of the
`
`’058 patent (EX1001). This Petition is substantively identical to the Petition in
`
`IPR2025-00489, and a motion for joinder with that proceeding is being filed
`
`concurrently herewith.
`
`I.
`
`STANDING
`Petitioner certifies that the ’058 patent is available for inter partes review
`
`and that Petitioner is not barred or estopped from requesting inter partes review of
`
`the challenged claims. 37 C.F.R. §42.104(a).
`
`II. GROUNDS FOR UNPATENTABILITY
`Claims 1-18 are unpatentable under pre-AIA 35 U.S.C. §103 over Callender
`
`(EX1005). Callender is prior art under (at least) pre-AIA §102(e) to the ’058
`
`patent’s earliest claimed priority date and was not of record during prosecution.
`
`III. THE ’058 PATENT
`A.
`Background and Specification
`A typical computer system may run multiple “application[s]” (or
`
`“application programs”), e.g., email or word-processing, that must share the
`
`computer system’s resources, like hardware or files. EX1001, 1:21-31; EX1035,
`
`378; EX1003 (“Bhattacharjee”), ¶31. The computer’s “operating system” (“OS”)
`
`1619344368
`
`– 4 –
`
`

`

`“traditionally...provides mechanisms to...control [the applications’] access to
`
`shared resources.” EX1001, 1:20-24. Additionally, the ’058 patent states that the
`
`OS “‘normally’ supplie[s]” “service[s] or part[s] of a service” that are “critical to
`
`the operation of a software application”; the patent calls such services, or parts
`
`thereof, “critical system elements” (“CSEs”). EX1001, 2:1, 6:6-9; Bhattacharjee,
`
`¶32. Examples of CSEs include services such as networking, file access, “memory
`
`allocation” and “device access.” EX1001, 5:38-45, 6:12-28, 9:33-35;
`
`Bhattacharjee, ¶32.
`
`CSEs are “normally” found in the OS’s “kernel.” EX1001, 5:21-23. The
`
`“kernel” is the “core” of an OS and performs tasks like “manag[ing] memory, files,
`
`and peripheral devices” (e.g., disks, network interfaces), and “allocat[ing] system
`
`resources.” EX1035, 300, 398; Callender, 1:40-43; Bhattacharjee, ¶33.
`
`Conventional computer processors typically run in a special “kernel mode” when
`
`executing the kernel; running in this mode gives the kernel unrestricted access to
`
`the computer’s resources, enabling the kernel to perform its tasks. EX1001, 6:32-
`
`36; Callender, 1:37-48; EX1003, ¶34. In contrast, when executing applications,
`
`processors typically run in “user mode,” where access to certain resources is
`
`restricted to prevent applications from interfering with each other or damaging the
`
`system—application code cannot run in kernel mode. EX1001, 6:31-36; Callender,
`
`1:32-48; Bhattacharjee, ¶35. However, applications often need to use CSEs that
`
`1619344368
`
`– 5 –
`
`

`

`are typically provided by the kernel; to access kernel services, applications
`
`typically make “system calls” to request that the OS kernel perform a needed
`
`service (like a CSE) for the application, using the processor executing in kernel
`
`mode. EX1001, 5:38-58, 6:66-7:16; Bhattacharjee, ¶¶36-37.
`
`The above-described system-call-based technique has known disadvantages,
`
`including that (i) switching processor modes takes time and thus may impact
`
`performance; and (ii) all applications must use the same version of a CSE, i.e.,
`
`whatever version the computer system’s OS kernel provides. Callender, 1:50-56;
`
`EX1001, 5:54-6:3; Bhattacharjee, ¶38. Thus, it was known to implement some
`
`CSEs in user mode instead. EX1001, 7:23-25 (’058 patent admitting this was
`
`known); Bhattacharjee, ¶39. In some known user-mode CSE implementations, the
`
`CSE was provided by a “process[]” that executed in user mode but was separate
`
`from any application that used the CSE. EX1001, 7:23-30. In other words, when a
`
`user-mode application needed a CSE, it would request that a different user-mode
`
`process, rather than the kernel, perform the CSE. Different user-mode processes
`
`provided different user-mode CSEs, or a single user-mode process provided all
`
`user-mode CSEs. EX1001, 7:23-61; Figs. 2a-2b; Bhattacharjee, ¶¶40-41. As
`
`illustrated in Fig. 2a (below), however, communication between a user-mode
`
`application needing a CSE and a user-mode process providing that CSE still passed
`
`1619344368
`
`– 6 –
`
`

`

`through the kernel—that is, the application issued a request to the kernel, which
`
`then invoked the user-mode CSE process. EX1001, 7:31-52; Bhattacharjee, ¶41.
`
`In contrast to the above-described scheme requiring communication with a
`
`separate user-mode CSE process via the kernel, the ’058 patent discloses
`
`“replicat[ing] [CSEs] in user mode” by “placing CSEs similar to those in the OS in
`
`shared libraries.” EX1001, 5:22-34; Bhattacharjee, ¶42. “The CSE library
`
`1619344368
`
`– 7 –
`
`

`

`includes replicas or substantial functional equivalents or replacements of kernel
`
`functions.” EX1001, 8:27-28. POSAs understood that a “function” is a predefined
`
`set of instructions that carry out a specific action (e.g., a CSE). Bhattacharjee,
`
`¶43; EX1007, 1:22-33. Placing a CSE in a shared library “provides a means of
`
`attaching or linking a CSE service to an application having access to the shared
`
`library.” EX1001, 5:29-31, 9:15-27; Bhattacharjee, ¶44. The “functions” in the
`
`shared CSE library “run in the context of a software application.” EX1001,
`
`5:22-25;1 see also id., 9:41-42 (“FIG. 4 shows that the invention allows for
`
`[CSEs] to exist in the same context as an application.”), FIG. 4. In other words,
`
`the user-mode application itself performs the CSE (by calling a function from the
`
`library), rather than asking another user-mode process to perform the CSE.
`
`Bhattacharjee, ¶45.
`
`1 Emphases added throughout unless otherwise indicated.
`
`1619344368
`
`– 8 –
`
`

`

`The patent refers to user-mode CSEs in a shared library as “SLCSEs,” and to
`
`CSEs in the kernel as “OS [operating system] critical system elements (OSCSEs).”
`
`EX1001, 2:7-12. The patent mentions the well-known “dynamic linked library
`
`(DLL)” as an example of a “shared library.” EX1001, 2:45-51; Bhattacharjee, ¶46.
`
`The patent contends that CSEs that “execute” “in the same context as an
`
`application” “contrast” with prior-art user-mode CSEs that were allegedly only
`
`implemented as “shared service[s].” EX1001, 1:46-54; Bhattacharjee, ¶47.
`
`However, the patent admits that “sharing of code” between applications via a user-
`
`mode shared library was “common practice.” EX1001, 3:30-33; see also
`
`EX1001, 7:3-5; EX1003, ¶47. The patent also admits that it was “typical” to
`
`provide “functions” in “libraries which applications link with.” EX1001, 6:37-45;
`
`Bhattacharjee, ¶47. Nowhere does the patent explain what is purportedly novel
`
`1619344368
`
`– 9 –
`
`

`

`about using linking and shared libraries to make CSEs available to applications.
`
`Bhattacharjee, ¶48. In fact, as demonstrated below, Callender disclosed doing just
`
`that, well before the ’058 patent’s filing.
`
`Person of Ordinary Skill in the Art (“POSA”)
`B.
`A POSA as of the ’058 patent’s September 22, 2003 earliest claimed priority
`
`date would have had at least a bachelor’s degree in computer science, computer
`
`engineering, or a related field, with three years of academic and/or industry
`
`experience in the areas of “computing system[s]” and “application libraries.”
`
`EX1001, 1:15-17. More education may substitute for less experience.
`
`Bhattacharjee, ¶¶49-51.
`
`Prosecution History
`C.
`As detailed where relevant infra §V.B, the examiner rejected the originally-
`
`filed claims over Cabrero (EX1008), after which the applicants amended claim 1 to
`
`require SLCSEs to be “functional replicas of OSCSEs.” EX1002, 216-222, 235,
`
`265-266, 273, 278; Bhattacharjee, ¶¶52-53. The examiner then rejected the claims
`
`over O’Rourke (EX1009) and Peek (EX1010). EX1002, 296-297. The applicants
`
`traversed the rejection, as also detailed infra §V.B. EX1002, 323-325.
`
`Subsequently, for reasons not recorded, the examiner discussed two different
`
`references, Elnozahy (EX1011) and Wong (EX1012), in an examiner interview,
`
`and then allowed the claims without further discussing O’Rourke or Peek.
`
`1619344368
`
`– 10 –
`
`

`

`EX1002, 348-351. The allowed claims contain an examiner’s amendment to
`
`Element [1E] (see claim listing infra §VIII) to recite “at least a first” and “at least
`
`a second” of the plurality of software applications. EX1002, 350-351. The
`
`examiner also incorporated into claim 1 originally-filed dependent claim 6, which
`
`is essentially limitation [1F]’s “wherein” clause. EX1002, 350-352; infra §VIII;
`
`Bhattacharjee, ¶¶54-56.
`
`The examiner said neither Elnozahy nor Wong disclosed the amended
`
`language of claim 1. EX1002, 352-353. But neither reference explicitly discloses
`
`shared libraries or an SLCSE in a shared library, and there is no indication that the
`
`examiner considered whether these features would have been obvious.
`
`Bhattacharjee, ¶¶57-61. Furthermore, Callender was not of record.
`
`IV. CLAIM INTERPRETATION
`Claim terms are construed herein using the standard used in civil actions
`
`under 35 U.S.C. §282(b), in accordance with the ordinary and customary meaning
`
`as understood by POSAs and the patent’s prosecution history. 37 C.F.R.
`
`§42.100(b). In a concurrent district-court proceeding, the parties (Defendant
`
`“Google” and Patent Owner “VirtaMove”) have proposed constructions of various
`
`claim terms, including competing constructions for some terms and agreed
`
`constructions for others. EX1052-EX1053. As discussed further within the
`
`Ground, this Petition presents alternative mappings of the prior art under both
`
`1619344368
`
`– 11 –
`
`

`

`parties’ proposed constructions of disputed terms, thus demonstrating
`
`unpatentability regardless of which proposed construction is correct. Google LLC
`
`v. Security First Innovations, LLC, IPR2024-00215, Paper 15, 6 (May 23, 2024)
`
`(finding this approach “complies with” Rule 42.104(b)(3)).
`
`V.
`
`CALLENDER RENDERS CLAIMS 1-18 OBVIOUS
`A.
`Callender (EX1005)
`Callender discloses techniques for “a single implementation of operations
`
`that are common to both kernel mode processing and user mode processing, relative
`
`to a hardware adapter.” Callender, 2:28-31; Bhattacharjee, ¶62. An example
`
`“adapter” is a “host channel adapter (‘HCA Adapter’),” which enables
`
`communication using the well-known “InfiniBand” networking protocol.
`
`Callender, 4:51-57; Bhattacharjee, [0007]-[0008]; EX1014, 1:50-60; Bhattacharjee,
`
`¶63. Examples of “operations” that are “common” to both user- and kernel-mode
`
`processing include “operations” for “sending and receiving” information through
`
`the adapter. Callender, Abstract, 2:41-50, 3:40-4:16, 4:51-5:5, claims 4, 12, 22;
`
`Bhattacharjee, ¶64.
`
`Callender’s techniques are performed in a “computer” with a conventional
`
`“operating system.” Callender, 8:19-9:5, Fig. 4; Bhattacharjee, ¶65. Callender’s
`
`“computer” also has various hardware components, including network “adapter[s]”
`
`such as an HCA adapter. Callender, 9:22-24; Bhattacharjee, ¶66. Callender’s
`
`1619344368
`
`– 12 –
`
`

`

`Figure 1 illustrates “a hardware driver model that allows for a single
`
`implementation of common user mode and kernel mode operations.” Callender,
`
`3:39-44. A “driver” is software by which a computer interacts with a hardware
`
`device such as an adapter. EX1035, 177; Bhattacharjee, ¶67. In Callender’s
`
`model, a “user mode implementation” of an operation provides applications with
`
`“direct access to [the] adapter...without switching to kernel mode.” Callender,
`
`3:45-49. The model also comprises a “kernel mode implementation” of “all
`
`operations possible for [the] adapter,” including “operations unique to kernel
`
`mode” and operations common to both modes. Callender, 3:52-4:12. “[F]requent
`
`operations like sending and receiving information” are operations for the adapter
`
`that are “likely candidates to be included” in both user- and kernel-mode
`
`implementations. Callender, 4:4-12; Bhattacharjee, ¶68.
`
`1619344368
`
`– 13 –
`
`

`

`Figure 2A (annotated below) shows a more specific use case for the general
`
`model of Figure 1—an “example hardware driver model that allows for a single
`
`implementation of common user mode and kernel mode operations” specifically for
`
`an HCA adapter. Callender, 4:51-57. The example model includes

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket