`to
`5(J
`Lu
`Du:
`
`84%?988
`IIIIHIIIIIIIIIIIIIIIIIII{III
`
`9
`
`6457088
`E
`
`
`97%;th
`O.I.P.E.
`PATENT DATE
`scmneo&:Q& GET 3:; m
`
`SECTOR
`
`suecuss __
`
`ART UNIT
`ii"? I 1': 4
`FILED WITH: El DISK (CRF) E] FICHE
`(Attached «1 pocket on fight insme flep)
`
`PREPARED AND APPROVED FOR ISSUE
`
`ISSUING CLASSIFICATION
`
`cnoss REFERENCEG.)
`ORIGINAL -
`suecmss _| suecmss (one means Pen BLOCK}
`
`
`
`TERMINAL
`DISCLAIMER
`
`CI 3) The term 01 this palent
`subeequeni io
`has been DISCIEIIT‘IECI.
`
`(date)
`
`‘
`
`(Messiah! Examlner}
`
`I:I b) The term of this patent shall
`n0! (mend beyond the expiration date I
`
`of U.S Patent. No.
`
`.
`
`GR GORV MORSE
`TECHNUan' we"?
`
`SUPERVISOHY PATENT FXAFIINI
`
`[Primary Examiner}
`
`7VW/1L
`
`’
`
`I
`
`
`
`_.
`
`Ba“;”:39; '1
`Am°””' ””5
`Renae“? W «7
`ISSUE BATCHFNUMBE'R.
`
`«T ix, .-
`
`-
`
`mDnIIIS DJ
`I] c) The ier'rninai
`ihls paleni have been disciaimed.
`
`(Legal Instruments Examiner)
`
`1
`
`I WARNING:
`The information disclosed herein may be restricted. Unauihorized disciosure may he prohibited by me. llniied States Code TIME 35‘ Seminna 122. 131 and 363
`Possession outside the U.S. Patent & Trademark Ofllce 1‘s resiricled lo athorIzeri empioyees and contractors only.
`Form PTO-435A
`(Rev, 6/98)
`
`1M“
`
`'
`
`MICROSOFT CORP.
`
`EXHIBIT 1002
`
`Page 1 of 85}
`
`APRILQXHIB.IT1002- P
`
`
`
`
`jc:
`
`PTO
`
`EIII‘IH
`“z;07
`
`IIx:I
`PA'ltNl APPLICATIIoN IIIIIIIIIIII
`IIIIII
`‘aD
`IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII ,
`“93435“?
`ICONTENTS
`
`;
`
`'
`
`I
`
`Date received
`(IncI. c. at M.)
`or
`Date Mailed
`
`received
`(Ind. c oI M.)
`or
`Date Mailed
`1. Applicationji“ papers.
`42.-
`M
`. 2m 0,
`43. __
`/ ’ 35) ’ V7
`S
`3;? MW” -/ ‘34- max/I
`44.
`,959/5 ,9“
`“3‘
`SIGI
`l/
`f 45.
`
`1L:0{3‘0
`2— ,LV ~ 012
`5/7 oz
`
`4s.
`47.
`48.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`'4
`
`I
`
`IIT‘rwwxmwmfiau
`
`
`
`
`
`;
`
`
`
`
`
`
`
`
`
`“351"“
`:I uaal
`... v NQ—Ew
`~
`4‘
`8K9 eoxubr I3?E°4°898@997IIISII’III‘I:
`1 455'"
`Columnld: 610 298733
`
`,. Localionid1N‘7‘61'3—10—0014-3-02—01
`Filo Dasnr: 09343607
`
`.
`
`3K 600067960121163 3K
`,
`,
`
`‘
`
`
`
`
`
`
`
`
`
`
`
`
`
`'
`
`[19343607
`
`241574886— 000001E_RTID:VI
`BET
`r1 —4?— @1- 3— 19—”@614 3-02—010103206733
`
`SKP:RF048980997 — 00003 CUMSTtfiF048980997
`6487086
`FIJI: ThiInIpaf.
` SIII:..lJTI'1% 1:I]flI'IIIIED1
`
`
`' BONDS Mflfii'lfltNEM
`
`:R IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII'IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIPage_2 of 85
`
`82' —RPPtE—E*l-H'BIT—1'062TP#GE 0002-—
`(LEFT OUTSIDE)
`,
`
`
`
`
`
`FORMALITY REVIEW
`
`INDEX OF CLAIMS
`1/
`..Fleiected
`N
`
`=
`.. Allowed
`l
`— (Through numeral). Canceled
`A
`+ ................................. Restricted
`O
`i
`Claim
`
`
`
`Non-elected
`...interlerence
`....Appeal
`.. objected
`
`
`;
`1,
`
`‘
`
`Claim
`
`Date
`
`Date
`
`Claim
`
`
`Dale
`
`l
`E 9
`i: 5 “LL
`
`_ E g 57
`
`III!
`
`E 52'
`i: 6
`
`_ E
`
`g E”
`i: 5
`
`_ E
`
`'
`
`»
`
`
`,1
`f
`1'
`3
`I
`51
`
`2
`1
`'
`52
`
`1
`3
`i
`53
`m
`
`if
`4
`I,
`54
`k
`104
`j
`1’
`5
`55
`i
`c,
`5
`55
`7 7 I—I
`57
`3 L1;
`513
`i 9
`59
`10 .19
`so
`11 ~11
`61
`p, 12
`52
`
`[3 13" l
`
`‘7
`
`33
`
`1....
`
`¢
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`54
`65
`66
`
`57
`ea
`59
`70
`71
`
`72
`173
`
`
`
`
`123
`
`
`75
`_
`l
`125
`76
`7
`’ "
`120 I
`
`
`,
`127
`_i
`.17.
`,
`,,
`
`1213
`.
`‘
`73
`
`79
`129 A
`l
`‘30
`130 I
`
`01
`13-1
`
`132
`
`83
`B4
`as
`as
`
`
`
`,
`
`__
`
`
`
`7
`
`7
`
`F
`r
`132
`133
`__ _____)j
`
`134
`1
`13d
`V—J—w
`
`—1?6_
`'
`"7‘ "T7
`
`'
`
`
`
`37
`i
`137
`_
`’ i
`BB
`130 7
`'
`i
`
`as
`__
`_139
`
`I40 *
`90
`140
`~
`
`l
`I 4-.
`91
`1-11
`II
`
`
`.42
`92
`MI
`
`
`.43
`'
`14 I
`93
`
`
`I 44
`14
`94
`
`I45
`45 —I
`95
`
`
`46
`1
`146
`96
`
`14
`‘
`47
`I
`'7 —97
`
`
`
`14-
`4a
`98
`
`.49
`I
`99
`|
`F”
`14-
`50
`III
`D
`| w:
`5'
`
`l—
`
`”
`
`1
`
`
`
`
`
`
`
`it more than 150 claims or to actions
`staple additional sheet here
`
`Page 3 of 85
`(LEFT INSIDE)
`APPLE XBH||T1002 - AE 0003
`
`
`
`
`
`
`
`firm».
`
`”ESE-“‘2
`“15*.7w
`3g;
`w1
`
`"m-
`
`SEARCH NOTES
`(INCLUDING SEARCH STRATEGY)
`
`W/
`IEM “FM, 27%)
`
`.Jt
`T§é§
`
`
`
`
`
`APPLE EXHIBIT 1002 - PAGEWQQO
`
`(RIGHT OUTSIDE)
`
`.
`
`
`
`
`SERIAL NUMBER
`GROUP ART UNIT
`FILING DATE
`ATTORNEY Doclffifiu.
`
`PER—23.706
`05/30/99
`
`09/343,607
`
`TASSER RLSAFADI, YORKTOWN HEIGHTS, NY; DAVID J. SCHAFFER,
`WAPPINGERS FALLS, NY.
`
`‘kfiCONTINUING DOMESTIC DATA*********************
`VERIFIED
`
`.
`
`qu
`
`*1'3'71 (NAT :‘L STAGE) DATAkkk************k**i¢fi*
`VERIFIED
`4
`
`MI,
`
`‘
`
`
`
`* *FOREIGN APPLICATIONS* * * * * * * * *** *
`VERIFIED
`
`”III—(”Q4
`
`
`
`
`
`APPLICANT
`
`
`
`
`
`
`
`
`IF REQUIRED, FOREIGN FILING LICENSE GRANTED 07/30/99
`
`
`TOTAL
`Eérai n PriorI
`chimed
`Elves
`o
`
`CLAIMS
`
`35 U C 119 II;-
`cundIIions met Dyes git: EIMet after Allowance COUNTRY
`
`
`21
`
`
`Verified and AcKnowIadged
`NY
`I
`
`CORPORA’J‘Tui PATENT COUNSEL
`
`US PHILIPS CORPORATION
`ADDRESS
`580 WHITE PLAINS ROAD
`TARRYTOWN NY 10591
`
`
`
`I
`RECONFIGURATION MANAGER FOR CONTROLLING UPGRADES OF
`ELECTRONIC DEVICES
`
`
`
`
`AII Fees
`
`III
`
`
`FEES: Authority has been given in Paper
`
`1.16 Fees (Filing)
`
`
`
`No.
`to charge/credit DEPOSIT ACCOUNT
`
`
`1.17 Fees (Processing Ext. of time)
`NO.
`for the following:
`
`
`1.18 Fees (Issue)
`
`DUII
`Other -
`
`Credit
`
`
`TITLE
`
`
`
`FILING FEE
`RECEIVED
`
`S778
`
`Page 5 of 85
`APPLE EXHIBIT 1002 - PAGE 0005
`
`
`
`PATENT APPLICATION SERIAL NO.
`
`US. DEPARTMENT OF COMMERCE
`PATENT AND TRADEMARK OFFICE
`FEE RECORD SHEET
`
`07/131199 PM W 141!” W7
`
`01 Hill“
`.2 F6110!
`
`760.00 0|
`18.“ Eli
`
`PTO-1556
`
`(5/87)
`‘U‘S. GPO: 1998-433-214/80404
`
`Page 6 of 85
`APPLE EXHIBIT 1002 - PAGE 0006
`
`
`
`Ii m“iiiliiillii
`
`
`Old '5' n ZLSDF
`
`i
`
`,
`
`.
`
`Case Docket No. PHA 23,706
`
`A'
`
`THE COMMISSIONER OF PATENTS AND TRADEMARKS, Washington, D.C.
`
`20231
`
`Enclosed for filing is the patent application of Inventor(s):
`.
`
`as:
`o
`l-‘ a
`air gmc3___
`EASSER ALSAFADI , J . DAVID SCHAFFER
`- =m
`I
`For: RECONFIGURATION MANAGER FOR CONTROLLING UPeRADEs OF ELECTRONagggese
`DEVICES
`of... g...”
`H
`”3::
`:3: 26‘
`ENCLOSED ARE:
`.p
`555
`[X] Associate Power of Attorney;
`[X]
`Information Disclosure Statement, Form PTO—1449 and copies of
`documents listed therein;
`.
`J Preliminary Amendment;
`[
`& Abstract);
`[Xj Specification (15 Pages of Specification, Claims,
`.
`[X‘ Declaration and POWer of Attorney:
`.
`(3 Pages of a [Xjfully executed
`[ ]uns1gned Declaration);
`[X] Drawing (3 sheets of [innformal
`[ 1formal sheets);
`[
`_ Certified copy of
`application Serial No.
`;
`[
`J Other:
`-
`[Xj Assignment to Philips Electronics North America Corporation
`
`;
`
`EEE_QQEEHEAIIQE
`
`CLAIMS AS FILED
`
`
`
`
`RATE
`
`BASIC FEE
`NUMBER FILED NUMBER
`EXTRA
`- 7 60 . 00
`
`4
`Total Claims
`1
`l
`X $18
`=
`18.00
`Independent
`0
`X $78
`=
`0.00
`Claims
`
`
`
`
`
`
`~
`
`3- 3
`
`=
`
`Multiple Dependent Claims, if any
`
`5260 =
`
`0.00
`
`TOTAL FILING FEE .
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`='
`
`$778.00
`
`Please charge Deposit Account No. 14- 1270 in the amount of
`the total filing fee indicated above, plus any deficiencies. The
`Commissioner is also hereby authorized to charge any other fees
`which may be required, except the issue fee, or credit any
`overpayment to Account No. 14-1270.
`
`JAmend the specification by inserting before the first line the
`[
`sentence:
`--This is a continuation—in-part of application Serial
`No.
`, filed
`.——.
`
`CERTIFICATE OF EXPRESS MAILING
`
`Express Mail Mailing Label No. E1 35?) 55“, 858! Q 3"
`Data of Daposii A Mix“:
`:20 ' iqqq
`I hereby certify ihnt this paper nndlur fee is being
`deposited with the United States Posts! Service “Express
`Ma“ P061 Office to Addresses" service under 37 G.F.R.
`1.10 an the date indicnied above and is addressed in 1he
`Commissiunlr (:1 Patents and Trademarks. Washington,
`0.0. 20231.
`Noemcmga
`Printed Name
`
`-1
`i
`a
`widow“ _ 10d» Jae
`Signature
`
`Si
`
`M
`' X
`Gregory L- Th rne HBQ- NO- 39.398
`AtmmSV
`‘
`,
`(914i 3‘33‘35b5
`“-5- Ph'i'Ps Corporation
`580 Wh-te Hams Road
`Tarrytown, New York 10591
`F:\WFDOCS\TH\MJ25THAG.NCO.doc
`
`Page 7 of 85
`APPLE EXHIBIT 1002 - PAGE 0007
`
`
`
`Abstract
`
`A reconfiguration manager implemented on a computer or other data processing device
`
`controls the reconfiguration of sofiware or other components of an electronic device Such as a
`
`computer, personal digital assistant (FDA), set-top box, television, etc. The reconfiguration manager
`
`5
`
`receives a reconfiguration request, e.g., a software upgrade request from the electronic device, and
`
`determines one or more device components that are required to implement the reconfiguration
`
`request. The reconfiguration manager also determines, eg, from information in the request,
`
`identifiers ofone or more additional components currently implemented in the electronic device. The
`
`reconfiguration manager then compares the needed and currently implemented components with
`
`previously-stored lists ofknown acceptable and unacceptable configurations for the electronic device.
`
`Ifthe needed, and currently implemented components correspond to a configuration on the list of
`
`acceptable configurations, the request is approved and the needed components are downloaded to
`
`the electronic device.
`
`If the needed and currently implemented components correspond to a
`
`configuration on the list of unacceptable configurations, the request is denied. Otherwise, the
`
`reconfiguration manager may indicate that the requested reconfiguration is unknown, or may take
`
`
`
`another action such as responding to the electronic device with a list of other components that would
`
`be required to implement the request.
`
`F:\WPDQCS\TH\A~SPECS\PHA13J06.doc
`
`20
`
`moms
`
`Page 8 of 85
`APPLE EXHIBIT 1002 - PAGE 0008
`
`
`
`ELECON E-IEURATION MANAQER
`FOR CONTROLLING UPGRADES OF ELECTRONIC DEVICES
`
`5
`
`Field of the Invention
`
`The present invention relates generally to the field of electronic devices, and more particularly
`
`to techniques for upgrading or otherwise reconfiguring software and/or hardware components in such
`
`devices.
`
`Background of the Invention
`
`For many difl'erent electronic devices, such as desktop, laptop and palmtop computers
`
` add to or otherwise improve device functionality. Users of such devices often prefer to upgrade their
`
`personal digital assistants (PDAs),
`
`telephones,
`
`televisions, set-top boxes and other consumer
`
`electronic processing devices, it is common for ongoing development efforts to continue to produce
`
`improvements to existing device software or hardware components, as well as new components that
`
`devices incrementally, rather than discard their current devices and purchase new ones. However,
`
`for most contemplated upgrades, it is generally necessary to determine if the new or improved
`
`component is compatible with the rest of the device, and if not, what other components would need
`
`simultaneous upgrading in order to provide the desired compatibility,
`
`This compatibility
`
`20
`
`determination can be particularly difiicult if the range of possible device configurations is large and
`
`the interaction among device components is compIex,
`
`F:\WDOGS\Ht\A—SPECS\PHA23,70min»:
`
`I
`
`700406
`
`Page 9 of 85
`APPLE EXHIBIT 1002 - PAGE 0009
`
`
`
`A number of different techniques have been developed for updating components of electronic
`
`devices. For example, US. Patent No. 5,155,847 discloses a technique for updating software at
`
`remote locations. A central computer system stores the original sofiware, and keeps track of all the
`
`software configurations for a number of remote systems. The remote system SOfi‘Wfll‘c is upgraded
`
`5
`
`or otherwise changed based on patches transmitted by the central computer system. However, this
`
`technique generally requires the central computer system to keep track of the particular software
`
`configurations at each ofthe remote systeins. Furthermore, the technique is not directly applicable
`
`to electronic devices other than computers, and cannot efirciently handle reconfiguration of hardware
`
`components,
`
`or
`
`hardware
`
`and
`
`software
`
`inter-dependencies.
`
`Another conventional technique, described in PCT Application No. W0 9435923, manages
`
`
` computer are independent, and fails to adequately address situations in which the required resources
`
`the configuration of an enterprise-wide nenyork which includes at least one centralized computer and
`
`a plurality of desktop computers The technique attempts to ensure that each of the desktop
`
`computers has an appropriate set of resources as determined in accordance with a set of enterprise
`
`policies However, the technique generally assumes that the resources required by each desktop
`
`are highly interdependent. Furthemiore, this technique generally assumes that the information
`
`regarding component interactions is fully specified and built in to the system.
`
`UK Patent Application No. GB 2,325,766 discloses a version management system for keeping
`
`files on remote devices updated to latest versions as determined by a master list maintained on a
`
`20
`
`central server. The updating process in this approach generally involves adding, amending and
`
`deleting files in their entirety. A significant problem with this approach is that it apparently assumes
`
`either that the files are independent or that any potential conflicting requirements have already been
`
`F:\W?DOCS\W-SPECS\RHA23,706, Line
`
`2
`
`700406
`
`Ky.)
`,l'
`
`._
`
`Page 10 of 85
`APPLE EXHIBIT 1002 - PAGE 0010
`
`
`
`reenlved using other techniques. It fails to provide generalized techniques for ensuring compatibility
`
`among requested components.
`
`A convention technique disclosed in PCT Application No. W0 96/326'79 describes the remote
`
`patching of operating code in a mobile unit of a distributed system, A manager host device in the
`
`5
`
`system transmits patches to the mobile unit, and the mobile unit creates patched operating code by
`
`merging the patches with current operating code and switching execution to the patched'operating
`
`
`
`code. However, like the other conventional techniques described previously, this technique also fails
`
`to adequately ensure compatibility among sofiware and hardware components for a variety of
`
`different electronic devices.
`
`As is apparent from the above, a need exists for improved techniques for managing
`
`reconfiguration of electronic devices, such that compatibility determinations can be facilitated,
`
`particularly for large and complex device configurations.
`
`Summary of the Invention
`
`The invention provides a reconfiguration manager that may be implemented on a computer
`
`or other data processing device to control the reconfiguration of sofiware or other components of
`
`an electronic device such as a computer, personal digital assistant (PDA), set-top box, television, etc.
`
`In accordance with the invention, a reconfiguration manager receives a reconfiguration request, eg,
`
`a software upgrade request from the electronic device, and determines one or more device
`
`20
`
`components that are required to implement the reconfiguration request, The reconfiguration request
`
`can be received directly from the electronic device itself, or otherwise supplied to the reconfiguration
`
`manager.
`
`F:\W.PDOCS\'I’H\A~SP.ECS'LPI~LQ23,706.doc
`
`3
`
`TUB-106
`
`Page 11 of 85
`APPLE EXHIBIT 1002 - PAGE 0011
`
`
`
`The reconfiguration manager also determines, cg, from information supplied by the
`
`electronic device as part of the request, identifiers of one or more additional components currently
`
`implemented in the electronic device. The reconfiguration manager then compares the needed and
`
`currently implemented components with previously-stored lists of known acceptable and unacceptable
`
`5
`
`configurations for the electronic device.
`
`If the needed and currently implemented components
`
`correspond to a configuration on the list of acceptable configurations, the request is approved and
`
`the needed components are downloaded or otherwise supplied to the electronic device, Ifthe needed
`
`
`
`and currently implemented components correspond to a configuration on the list of unacceptable
`
`configurations, the request is denied. Otherwise, the reconfiguration manager may indicate that the
`
`requested reconfiguration is unknown, or may take another action such as responding to the
`
`electronic device with a list of other components that would be required to implement the
`
`reconfiguration request
`
`Advantageously, the invention provides efficient techniques for incrementally upgrading or
`
`otherwise reconfiguring electronic devices. The invention ensures that upgrades are compatible with
`
`the configuration of a given device before they are implemented in that device, thereby avoiding
`
`problems associated with inconsistent upgrades. Although particularly well suited for use with
`
`software upgrades deliveredvover a network, the invention is applicable to reconfiguration of other
`
`types of device components, e.g., hardware components or combinations ofhardware and soflware
`
`components, and to numerous other applications. These and other features and adVantages of the
`
`20 I
`
`present invention will become more apparent from the accompanying drawings and the following
`
`detailed description.
`
`F:‘.iWDDCS\IT-I\A~SPECS\PHA23.maniac
`
`4
`
`790405
`
`Page 12 of 85
`APPLE EXHIBIT 1002 - PAGE 0012
`
`
`
`Brief Description of the Drawings
`
`FIG.
`
`1 illustrates the operation of a reconfiguration manager in accordance with a preferred
`
`embodiment of the invention,
`
`5
`
`FIG. 2 is a flow diagram showing processing operations implemented in the reconfiguration
`
`manager of FIG. '1.
`
`FIG. 3 is a block diagram of an exemplary network-based computer system which includes
`
`a reconfiguration manager in accordance with the invention.
`
`
`
`
`
`Detailed Description of the Invention
`
`FIG. 1 shows a preferred embodiment of the invention, in which a reconfiguration manager
`
`10 interacts with an electronic device 12 also referred to as “DeviceX.” The device 12 may represent
`
`a desktop, laptop or palmtop computer, a personal digital assistant (FDA), a telephone, television,
`
`set-top box or any other type of consumer electronic processing device. The device 12 includes a
`
`15
`
`number of software components 14A, 14B and 14C, corresponding to version 1.1 of a software
`
`component A, version 2.3 of a sofiware component B, and version 2.0 of a software component C,
`
`respectively. The reconfiguration manager 10 may be implemented on a computer, a set of
`
`computers, or any other type of data processing system or device.
`
`The reconfiguration manager 10 includes a listing 16 of known configurations, and a
`
`20
`
`repository 18 of software components. Repository 18 may represent, e.g., a database, data
`
`warehouse, physical warehouse or any other type of storage device or element incorporated in or
`
`otherwise associated with a computer or other processing system or device on which the
`
`F:\WPDOC51WSPEGS\PHA23,7D&AW
`
`5
`
`7004051
`
`Page 13 of 85
`APPLE EXHIBIT 1002 - PAGE 0013
`
`
`
`reconfiguration manager 10 is implemented The repository 18 need not be co-located with the
`
`processing portions of the reconfiguration manager 10. For example, the repository 18 could be
`
`accessed
`
`by
`
`the
`
`reconfiguration manager
`
`10
`
`over
`
`a
`
`suitable
`
`network
`
`connection.
`
`
`
`FAWPDOCmW-SPECNHAIJ.706.doc
`
`6
`
`790405
`
`Page 14 of 85
`APPLE EXHIBIT 1002 - PAGE 0014
`
`
`
`The list 16 in this example is illustrated in the form of a graph indicating which of a set of
`
`software components supported by the manager 10 are known to work well together or are otherwise
`
`compatible. The'list 16 includes identifiers of a number of software components, each represented
`
`by an oval, including components corresponding to versions 1.1, 1.8 and 2.0 of the software
`
`5
`
`component A, versions 1.5 and 2.3 of the software component B, versions 1.0, 2.0 and 3.0 of a
`
`soflware component C, and version 1.7 ofa software component Z. Each ofat least a subset ofthese
`
`components of the list 16 may be stored in the software component repository 18. Additional
`
`
`
`components not shown may also be stored in the repository 18.
`
`A solid line between a given pair of components in the exemplary list 16 indicates that the pair
`
`of components corresponds to a known “good" configuration, i.e., the components work well
`
`together or are otherwise compatible. The pair including version 1.1 of component A and version
`
`1.5 of component B is an example of a known good configuration. A dashed line between a given
`pair ofcemponents in the list 16 indicates that the pair ofcomponents correspond to a known “bad"
`
`configuration, i.e., are not compatible. The pair including version 1.8 of component A and version
`
`1.0 of component C is an example of a known bad configuration.
`
`It should be understood that the list 16, although shown in graphical form in FIG. 1, may be
`
`implemented, cg, as a stored table. set of tables or other type of list
`
`in a memory of the
`
`reconstruction manager ’10, as a portion of a program executed by the reconfiguration manager 10,
`
`or in any other suitable format. Moreover, although illustrated in FIG. 1 as indicating- pair-wise
`
`20
`
`compatibility among components, the list in other embodiments could include information indicative
`
`of compatibility between groups ofmultiple components. The term "list" as used herein is therefore
`
`intended to include any stored representation of information indicative of component compatibility.
`
`Fr\WPDDCS\TH\A—5PHCN\PWZJOSAOB
`
`7
`
`'100406
`
`Page 15 of 85
`APPLE EXHIBIT 1002 - PAGE 0015
`
`
`
`A given stored list in accordance with the invention can be implemented in a straightforward manner,
`
`as will be apparent to those skilled in the art.
`
`In operation, the reconfiguration manager 10 receives a request 20 fiom the device 12. In this
`
`example, the request 20 indicates that a user ofthe device 12 wants to upgrade the device to include
`
`5
`
`version 2.0 of software component A. The request in the illustrative embodiment also includes a list
`
`ofthe components currently in the device, i.e., version 1.1 ofcomponent A version 2.0 of component
`
`
`
`C and version 2.3 of component B. The request may include additional information, such as any
`
`needed information regarding the interconnection of the components or other parameters associated
`
`with the device. The reconfiguration manager 10 processes the request, in a manner to be described
`
`in greater detail in conjunction with the flow diagram of FIG. 2, and if appropriate delivers to device
`
`X a response 22 which includes the requested version 2.0 of software component A.
`
`For example, the reconfiguration manager first determines whether the requested upgrade,
`
`in this case version 2.0 of component A, is compatible with other components of device X= i_e.,
`
`version 2.3 of component B and version 2.0 of component C. The reconfiguration manager 10 in the
`
`embodiment ofFIG. 1 makes this determination using the list 16. In this case, list 16 indicates that
`
`version 2.0 of component‘A is compatible with version 2.3 of component B and version 2.0 of
`
`component C. As a result, the requested upgrade is delivered to device 12 as part of the response
`
`22.
`
`FIG. 2 shows a flow diagram illustrating the operation of the reconfiguration manager 10 in
`
`20
`
`greater detail.
`
`In step 100, the reconfiguration manager 10 obtains information regarding the
`
`hardware and software configuration of device X, i.e., electronic device 12 of FIG. 1. This
`
`information is generally included as part of the request 20 sent by the device 12 to the reconfiguration
`
`F:\W'PDOCS\TH\A-SPECS\PHA23,706,doc
`
`8
`
`700406
`
`Page 16 of 85
`APPLE EXHIBIT 1002 - PAGE 0016
`
`
`
`manager 10.
`
`In other embodiments, this information may be obtained in another suitable manner,
`
`e. g, from a local database based on a serial number or other identifier of the electronic device.
`
`In step 102, the reconfiguration manager 10 determines that the request 20 includes a request
`
`for a soitware upgrade, Le, a request to upgrade to version 2.0 of component A. it should be noted
`
`5
`
`that, although desm'ibed primarily in conjunction with software upgrades, the invention is also
`
`applicable to hardware upgrades, and to upgrades in combinations ofhardware and software, as well
`
`as to other changes in device configuration. In the FIG. 2 example, the request is for an upgrade to
`a‘ particular software component, Other types of requests which may be processed by the
`
`reconfiguration manager 10 of FIG. 1 include requests for an upgrade to a particular device feature.
`
`Such a feature upgrade may require the reconfiguration manager to upgrade several device
`
` components.
` 104 is determined in step 108 to correspond to one of the known bad configurations,
`
`In step 104 of FIG. 2, the reconfiguration manager 10 generates a potential upgrade
`
`configuration that will satisfy the received request. The reconfiguration manager in step 106 then
`
`searches through a set of known bad configuratious. Ifthe upgrade configuration as generated in step
`
`the
`
`reconfiguration manager in step 110 attempts to find a set or sets of potential upgrade configurations
`
`from a set of known good configurations.
`
`Ifthe resulting set of potential upgrade configurations is detennined in step 112 to be empty,
`
`the reconfiguration manager in step 114 denies the upgrade, since it is known to be incompatible with
`
`20
`
`the current configuration of device X, and communicates this denial in its response to device X. If
`
`step 112 indicates that the set is not empty, a particular set of upgrade configuration is selected in
`
`step 116, and the upgrade is approved in step 118 as compatible with the current configuration of
`
`F:\WPDOCS\IH\A-SPECS\PHA23JC|6.doe
`
`9
`
`700405
`
`it“
`
`Page 17 of 85
`APPLE EXHIBIT 1002 - PAGE 0017
`
`
`
`device X. The selection in step 116 may be based at least in part on one or more established criteria,
`
`such as least expensive, maximum improvement in system operating speed, most recently modified,
`
`most energy eificient, or other suitable criteria. The reconfiguration manager or other server
`
`associated therewith then downloads the upgrade to device X in step 120.
`
`5
`
`If step 108 determines that the upgrade configuration as generated in step 104 does not
`
`correspond to a known bad configuration, the reconfiguration manager in step 122 searches the list
`
`of known good configurations to determine if the upgrade configuration determined in step 104 is
`
`a known good configuration. Ifit is determined in step 124 to be a known good configuration, the
`
`upgrade is approved in step 118, and the reconfiguration manager or other server associated
`
`therewith downloads the upgrade to device Xin step 120. If'the configuration is not a known good
`
`configuration, the reconfiguration manager in step 130 returns in its response to the device X an
`
`indication that the requested upgrade is “hazy" or unknown, cg, not known to be valid.
`
`Other types of responses that may be generated by the reconfiguration manager 10 include,
`
`eg, a response which includes a list of additional components that are prerequisites for the requested
`
`upgrade. This type of response may provide a user associated with device X with an option to
`
`
`
`download all of the components required to implement the desired upgrade.
`
`FIG. 3 shows an example of a system 200 in which a reconfiguration manager in accordance
`
`with the invention may be‘implemcnted. The system 200 includes reconfiguration manager 10 and
`electronic device 12 as previously described in conjunction with FIGS. 1 and ‘2. The reconfiguration
`
`20 manager 10 and electronic device 12 are connected with a number of server devices 210 and client
`
`devices 212 over a network 214. As previously noted, the reconfiguration manager 10 and electronic
`
`device 12 may be implemented as computers or other electronic data processing devices.
`
`In this
`
`F:\wroocs\naA-spaCS‘I’HAflJOédoc
`
`1 0
`
`rooms
`
`Page 18 of 85
`APPLE EXHIBIT 1002 - PAGE 0018
`
`
`
`example,
`
`the electronic device 12 includes a processor 220 and a memory 222, and the
`
`reconfiguration manager 10 includes a processor 230 and a memory 232.
`
`The processors 220 and 230 may represent, e.g., microprocessors, central processing units,
`
`computers, circuit cards, application-specific integrated circuits (ASICs), as well as portions or
`
`5
`
`combinations of these and other types of processing devices. The memories 222 and 232 may
`
`represent, e.g ., disk-based optical or magnetic storage units, electronic memories, as well as portions
`
`or combinations of these and other memory, devices.
`
`
`
`The functional operations associated with the reconfiguration manager 10 and electronic
`
`device 12, as described in detail in conjunction with FIGS. 1 and 2, may be implemented in whole or
`
`in part in one or more software programs stored in their respective memories 222, 232 and executed
`
`by their respective processors 220, 230. The network 214 may represent a global computer
`
`communications network such as the Internet, a Wide area network, a metropolitan area network, a
`
`local area network, a cable network, a satellite network or a telephone network, as well as portions
`
`or combinations of these and other types of networks. Reconfiguration manager 10 and device 12
`
`may themselves be respective server and client machines coupled to the network 214.
`
`It should be noted that the reconfiguration manager need not receive a reconfiguration request
`
`directly from the electronic device itself. For example, it is possible for the reconfiguration manager
`
`to receive requests from an intermediary, e.g., a server or other designated machine which collects
`
`reconfiguration requests from multiple devices or users and delivers the requests in an appropriate
`
`20 manner to the reconfiguration manager. As another example, a help desk operator or other human
`
`or machine interface can receive reconfiguration requests from users of electronic devices. In such
`
`applications, information identifying the electronic device, e.g., the device‘serial number, may be
`
`rswpnocsimssacnmm,706.ch
`
`1 1
`
`mass
`
`(a
`
`Page 19 of 85
`APPLE EXHIBIT 1002 - PAGE 0019
`
`
`
`supplied by the user.
`
`Information regarding the particular components in the device may be
`
`determined, e.g., by accessing a local database using the deviCe identifying information, may be
`
`supplied directly by the user, or may be determined using combinations ofthese and other techniques.
`
`5
`
`The above-described embodiments of the invention are intended to be illustrative only, For
`
`example, the invention can be used to implement upgrading or other reconfiguration of any desired
`
`type of software or hardware component, as Well as combinations of these and other components‘
`
`for any desired type of electronic device, and in many applications other than those described herein
`
`The invention can also be implemented at least in part in the form of one or more sofiware programs
`
`which are stored 'on an otherwise conventional electronic, magnetic or optical storage medium and
`
`executed by a processing device, e.g., by the processors 220 and 230 of system 200.
`
`These and
`
`numerous other embodiments within the scope of the following claims will be apparent to those
`
`skilled in the art.
`
`
`
`20
`
`F:\W?DOCS\nnA-5PEC§WPHA21made:
`
`1 2
`
`700405
`
`Page 20 of 85
`APPLE EXHIBIT 1002 - PAGE 0020
`
`
`
`What is claimed is:
`
`Claims
`
`1. A processor—implemented method for controlling the reconfiguration of an electronic
`
`device, the method comprising the steps of:
`
`5
`
`receiving information representative of a reconfiguration request relating to the
`
`electronic device;
`
`determining at least one device component required to implement the reconfiguration
`
`request;
`
`comparing the determined component and information specifying at least one
`
`additional component currently implemented in the electronic device with at least one of a list of
`
`known acceptable configurations for the electronic device and a list of known unacceptable
`
`configurations for the electronic device; and
`
`generating information indicative of an approval or a denial of the reconfiguration
`
`request based at least in part on the result of the comparing step.
`
`
`
`2, The method of claim 1 fiirther including the step of generating information indicative of
`
`an approval ofthe reconfiguration request if the determined component and the additional component
`
`are consistent with a given one of the known acceptable configurations
`
`20
`
`3‘ The method of claim 1 further including the step of downloading the determined
`
`component to the electronic device if the determined component and the additional component are
`
`consistent with a given one of the known acceptable configurations.
`
`F:\WPDOCS\TH\A-SPECS\PHA23.7DG.doc
`
`13
`
`700406
`
`.4/
`iiii
`
`Page 21 of 85
`APPLE EXHIBIT 1002 - PAGE 0021
`
`
`
`4. The method of claim 1 further including the steps of.
`
`comparing the determined component and information specifiring at least one
`
`additional component currently implemented in the electronic device with the list of known
`
`5
`
`unacceptable configurations for the electronic device; and
`
`
`
`F"\WPDOCSYI’E—“A—sPECSXPHAflflosflm
`
`14
`
`vows
`
`Page 22 of 85
`APPLE EXHIBIT 1002 - PAGE 0022
`
`
`
`generating information indicative of a denial of the reconfiguration request if the
`
`determined component and the additional component are consistent with a given one of the known
`
`unacceptable configurations.
`
`5
`
`S. The method of claim I fiirther including the steps of: