`
`
`6407088
`TIC
`
`onte BCT 15 2y
`
`
`6467088
`
`
`aoO
`
`n 4o
`
`O ig!wi!
`5a
`®
`
`607aofp
`/34
`j J
`
`FUG—OLP.E. PATENT DATE
`
`
`SCANNED _{ y Ss
`
`SECTOR
`
`SUBCLASS —
`
`
`[_] FICHE
`FILED WITH: [_] DISK (CRF)
`{Atlached in pocket on right inside flap)
`
`|
`
`PREPARED AND APPROVEDFOR ISSUE
`
`|
`
`ISSUING CLASSIFICATION
`
`ORIGINAL|| CROSS REFERENCE(S)
`
`SUBCLASS
`.
`SUBCLASS (ONE SUBCLASSPER BLOCK)
`
`
`eeaepetSEE
`
`a : ThPp)OY [J Continued on Issue Slip Inside File Jacket
`
`TERMINAL
`DISCLAIMER
`
`CLAIMS ALLOWED
`
`C1 a) The term ofthis patent
`,
`c
`date)|Johar @. Chany—Dadd-v2
`
`sudsequent to
`has been disclaimed.
`._
`‘Assistant Examiner)
`(Date)
`
`( b)Theterm of this patent shall
`
`Possession outside the U.S. Patent & Trademark Office is restricted to authorized employees and contractors only. Form PTO-436A
`
`Notextendbeyond theexpirationdate|C7 7h:
`
`of U.S Patent. No.
`vb.
`SUPERVISORY PATENT EXAMINE:
`TECHNOLOGY CERT"
`lay1¥F
`
`. Amount Due
`
`(Primary Examiner)
`
`~
`
`(Date)
`
`
`
` he ; (1c) The termina! __months of
`u AeGe
`this patent have beendisclaimed.
`pets
`{Lagal Instruments Examiner)
`(Data)
`
`bi
`
`WARNING:
`The information disclosed herein may be restricted. Unauthorized disclosure may be prohibited by the United States Cade Title 35, Sections 122, 181 and 368.
`
`§
`
`(Rev, 6/96)
`
`EXHIBIT 1002 (LABEL AREA)
`
`
`(FACE)
`
`Page 1 of 85
`
`MICROSOFT CORP.
`MICROSOFT CORP.
`EXHIBIT 1002
`
`Page 1 of 85
`
`
`
`(cid:10)(cid:1)(cid:16)(cid:4)(cid:17)(cid:15)(cid:7)(cid:17)(cid:4)(cid:17) (cid:2)(cid:14)(cid:11)(cid:6)(cid:5)(cid:3)(cid:2)(cid:12)(cid:5)(cid:9)(cid:8)(cid:17)
`(cid:1)(cid:3)(cid:2)(cid:2)(cid:3)(cid:3)(cid:3)(cid:4)(cid:2)(cid:5)(cid:1)(cid:4)(cid:3)(cid:4)(cid:1)(cid:2)(cid:2)(cid:1)(cid:1)(cid:3)(cid:3)(cid:3)(cid:4)(cid:3)(cid:2)(cid:2)(cid:4)(cid:1)(cid:3)(cid:1)(cid:3)(cid:4)(cid:2)(cid:3)(cid:6)(cid:3)(cid:3)(cid:2)(cid:2)(cid:1)(cid:1)(cid:1)(cid:3)(cid:4)(cid:4)(cid:1)(cid:7)(cid:4)(cid:4)(cid:1)(cid:8)
`
`(cid:1)(cid:6)(cid:2)(cid:3)(cid:2)(cid:4)(cid:1)(cid:5)(cid:10)
`
`(cid:1)(cid:4)(cid:3)(cid:6)(cid:2)(cid:3)(cid:7)(cid:5)(cid:8)
`
`(cid:9)(cid:12)(cid:10)(cid:14)(cid:9)(cid:8)(cid:11)(cid:13)(cid:1)(cid:6)(cid:18) (cid:2)(cid:3)(cid:18)(cid:15)(cid:18)
`
`(cid:4)(cid:5)(cid:16)(cid:18)(cid:17)(cid:7)(cid:18)
`
`(cid:13)(cid:39)(cid:31)(cid:29)(cid:31)(cid:33)(cid:42)(cid:31)(cid:30)(cid:44)
`(cid:1)(cid:18)(cid:37)(cid:29)(cid:34)(cid:7)(cid:44)(cid:14)(cid:5)(cid:44)(cid:38)(cid:32)(cid:44)(cid:20)(cid:6)(cid:2)(cid:44)
`(cid:38)(cid:39)(cid:44)
`(cid:16)(cid:27)(cid:41)(cid:31)(cid:44)(cid:20)(cid:27)(cid:33)(cid:36)(cid:31)(cid:30)(cid:44)
`
`(cid:16)(cid:27)(cid:41)(cid:31)(cid:44)(cid:39)(cid:31)(cid:29)(cid:31)(cid:33)(cid:42)(cid:31)(cid:30)(cid:44)
`(cid:1)(cid:17)(cid:37)(cid:29)(cid:35)(cid:7)(cid:44)(cid:15)(cid:7)(cid:44)(cid:38)(cid:32)(cid:44)(cid:20)(cid:7)(cid:2)(cid:44)
`(cid:38)(cid:39)(cid:44)
`(cid:16)(cid:27)(cid:41)(cid:31)(cid:44)(cid:20)(cid:27)(cid:33)(cid:36)(cid:31)(cid:30)(cid:44)
`
`(cid:2) (cid:12)(cid:12)(cid:16)(cid:5)(cid:10)(cid:9)(cid:15)(cid:6)(cid:4)(cid:3)(cid:16)(cid:7)(cid:8)(cid:16)(cid:2) (cid:1)(cid:3)(cid:12)(cid:9)(cid:12)(cid:11)(cid:13)(cid:14)(cid:1)(cid:16)
`
`(cid:30)(cid:27)(cid:15)(cid:32)(cid:50)(cid:52)(cid:6)(cid:7)(cid:7)(cid:8)(cid:8)(cid:6)(cid:9) (cid:9)(cid:10)(cid:10)
`
`(cid:1)(cid:39)
`
`(cid:12)(cid:39) (cid:20)(cid:13)(cid:39) (cid:2)(cid:3)(cid:38)(cid:17)(cid:39)
`(cid:37)(cid:39)
`(cid:3)(cid:2)(cid:4)
`(cid:5)(cid:14)
`(cid:9)(cid:11)(cid:10)(cid:2)(cid:14)
`(cid:29)(cid:16)
`(cid:1)(cid:4)(cid:9)(cid:5)(cid:10)(cid:2)(cid:8)(cid:7)(cid:3)(cid:6)(cid:11) (cid:4)(cid:3)(cid:5) (cid:6)(cid:7)
`
`(cid:1) (cid:3)(cid:6)(cid:14) (cid:4)(cid:7)(cid:8)(cid:14)
`(cid:2)(cid:1)(cid:1)(cid:1)(cid:2)(cid:4)(cid:3)(cid:5) (cid:48)(cid:17)(cid:2)(cid:20)(cid:1)(cid:47)(cid:51)(cid:3)(cid:25)(cid:49)(cid:5)(cid:21)(cid:52)
`
`(cid:1)(cid:4) (cid:12)(cid:13)(cid:14) (cid:1)(cid:2)(cid:3)
`(cid:22)(cid:45)(cid:46)(cid:4)(cid:23)(cid:11) (cid:24)(cid:52)(cid:31)(cid:52)
`
`(cid:51)(cid:49)(cid:37) (cid:83)(cid:98)(cid:84)(cid:94)(cid:84)(cid:83)(cid:95)(cid:110) (cid:20)(cid:9)(cid:11)
`
`(cid:30)(cid:30)(cid:18) (cid:33)(cid:34)(cid:35)(cid:36)(cid:34)(cid:34)(cid:37)(cid:38)(cid:39)(cid:52)(cid:40)
`
`(cid:52)(cid:22)
`
`(cid:63)(cid:23)
`
`(cid:1)(cid:2)
`(cid:107)(cid:110) (cid:109)(cid:2)(cid:110) (cid:67)(cid:69)(cid:44)(cid:110)(cid:108)(cid:1)(cid:110)(cid:70)(cid:4)(cid:93)(cid:76)(cid:106)(cid:41)(cid:7)(cid:8)(cid:105)(cid:103)(cid:68)(cid:5)(cid:104)(cid:6)(cid:39)
`
`(cid:52)(cid:54)(cid:3)(cid:110)(cid:85)(cid:86)(cid:85)(cid:87)(cid:88)(cid:89)(cid:90)(cid:91)(cid:110)(cid:92)
`
`(cid:7)(cid:6)(cid:17)
`(cid:3)(cid:2)(cid:1)(cid:4)
`
`(cid:2)(cid:1)
`
`(cid:11)(cid:50) (cid:1)
`(cid:19) (cid:2)(cid:4)
`(cid:3)(cid:4)(cid:1)
`
`(cid:6)(cid:5)(cid:2)(cid:3)(cid:8)(cid:4)(cid:1)(cid:9)
`(cid:1)(cid:7)(cid:6)(cid:8)(cid:1)(cid:5)(cid:9)(cid:2)(cid:3)(cid:4)(cid:2)(cid:3)(cid:2)(cid:1)(cid:3)(cid:4)
`(cid:4)(cid:1)(cid:5)(cid:3)(cid:6)(cid:7)(cid:8)(cid:2)(cid:9) (cid:10)(cid:11)(cid:12)(cid:16)(cid:18)(cid:15)(cid:18)
`(cid:3)(cid:2)(cid:4)(cid:5)(cid:6)(cid:7)(cid:8)(cid:1)(cid:9)
`(cid:2)(cid:3)(cid:1)(cid:3)(cid:61)(cid:110)(cid:42)(cid:1)(cid:45)(cid:48)(cid:40)(cid:24)(cid:110)
`(cid:53)(cid:64)(cid:25)(cid:110)(cid:1)(cid:2)(cid:1)(cid:2)(cid:2)(cid:3)(cid:4)
`(cid:5)(cid:8)(cid:3)(cid:10)(cid:4)(cid:11)(cid:12)(cid:13)(cid:14)(cid:15)(cid:16)(cid:1)(cid:17) (cid:2)(cid:17)(cid:3)(cid:5)(cid:2)(cid:1)(cid:4)(cid:6)(cid:9)(cid:17) (cid:2)(cid:1)(cid:3)
`(cid:1)(cid:16)(cid:11)(cid:3)(cid:12)(cid:13)(cid:18)(cid:4)(cid:5)(cid:17)(cid:2)(cid:18)(cid:15)(cid:10)
`(cid:9)(cid:18) (cid:14)(cid:18)
`(cid:1)(cid:2) (cid:1) (cid:7)(cid:9) (cid:7)(cid:8)(cid:1)(cid:2)(cid:3)(cid:4)(cid:4)(cid:5)(cid:4)(cid:6) (cid:13)(cid:14)(cid:18)
`(cid:2)(cid:3)
`(cid:21)(cid:21)(cid:12) (cid:35)(cid:36)(cid:37)(cid:38)(cid:35)(cid:37)(cid:39)(cid:50) (cid:8)(cid:9)(cid:10)
`
`(cid:24)(cid:21)(cid:14) (cid:29)(cid:30)(cid:31)(cid:30)(cid:30)(cid:32)(cid:33)(cid:39) (cid:4)(cid:4)(cid:5)
`
`(cid:26)(cid:28)(cid:19) (cid:41)(cid:41)(cid:42)(cid:43)(cid:42)(cid:42)(cid:44)(cid:52) (cid:12)(cid:13)(cid:14)
`
`(cid:55)(cid:50)(cid:26) (cid:84)(cid:94)(cid:84)(cid:84)(cid:98)(cid:84)(cid:95)(cid:110) (cid:9)(cid:9)(cid:11)
`
`(cid:54)(cid:52)(cid:27) (cid:98)(cid:98)(cid:84)(cid:83)(cid:98)(cid:98)(cid:95)(cid:110) (cid:9)(cid:10)(cid:11)
`
`(cid:24)(cid:24)(cid:14) (cid:34)(cid:31)(cid:32)(cid:30)(cid:32)(cid:32)(cid:35)(cid:39) (cid:4)(cid:6)(cid:7)
`
`(cid:55)(cid:59)(cid:28) (cid:84)(cid:84)(cid:98)(cid:94)(cid:98)(cid:84)(cid:95)(cid:110) (cid:10)(cid:9)(cid:11)
`
`(cid:54)(cid:62)(cid:37) (cid:98)(cid:84)(cid:84)(cid:84)(cid:84)(cid:84)(cid:100)(cid:110) (cid:9)(cid:10)(cid:11)
`
`(cid:24)(cid:27)(cid:15)(cid:39)(cid:34)(cid:30)(cid:34)(cid:32)(cid:34)(cid:31)(cid:33)(cid:39) (cid:8)(cid:8)(cid:5)
`
`(cid:56)(cid:66)(cid:29) (cid:97)(cid:84)(cid:98)(cid:98)(cid:98)(cid:84)(cid:96)(cid:110) (cid:17)(cid:17)(cid:13)
`
`(cid:57)(cid:43)(cid:30) (cid:97)(cid:84)(cid:84)(cid:84)(cid:98)(cid:84)(cid:99)(cid:110) (cid:10)(cid:12)(cid:13)
`
`(cid:25)(cid:19)(cid:16) (cid:36)(cid:30)(cid:30)(cid:32)(cid:34)(cid:32)(cid:33)(cid:39) (cid:11)(cid:9)(cid:10)
`
`(cid:58)(cid:46)(cid:31) (cid:97)(cid:84)(cid:84)(cid:98)(cid:98)(cid:94)(cid:99)(cid:110) (cid:14)(cid:15)(cid:16)
`
`(cid:58)(cid:49)(cid:32) (cid:83)(cid:84)(cid:84)(cid:84)(cid:98)(cid:98)(cid:99)(cid:110) (cid:17)(cid:17)(cid:11)
`
`(cid:59)(cid:51)(cid:33) (cid:98)(cid:98)(cid:84)(cid:84)(cid:84)(cid:84)(cid:110)(cid:99)
`
`(cid:60)(cid:56)(cid:34) (cid:84)(cid:84)(cid:84)(cid:84)(cid:98)(cid:98)(cid:100)(cid:110) (cid:17)(cid:18)(cid:13)
`
`(cid:60)(cid:57)(cid:35) (cid:98)(cid:98)(cid:98)(cid:84)(cid:84)(cid:84)(cid:84)(cid:110) (cid:17)(cid:17)(cid:13)
`
`(cid:57)(cid:63)(cid:36) (cid:84)(cid:84)(cid:84)(cid:84)(cid:98)(cid:98)(cid:98)(cid:110) (cid:17)(cid:17)(cid:19)
`
`(cid:57)(cid:65)(cid:37) (cid:98)(cid:84)(cid:84)(cid:84)(cid:84)(cid:98)(cid:101)(cid:110) (cid:20)(cid:10)(cid:11)
`
`(cid:10)(cid:12)(cid:7) (cid:24)(cid:25)(cid:25)(cid:25)(cid:25)(cid:25)(cid:26)(cid:44) (cid:3)(cid:3)(cid:4)
`
`(cid:47)(cid:13)(cid:45)(cid:24)(cid:5)(cid:20)(cid:16)(cid:50)(cid:2)(cid:4)(cid:1)
`(cid:30)(cid:50)(cid:34)
`(cid:23)(cid:19)(cid:22)(cid:44)(cid:9)(cid:44)(cid:21)(cid:28)(cid:40)(cid:8)(cid:44)
`
`(cid:41)(cid:43)
`(cid:33)
`
`(cid:46)(cid:50)(cid:14)(cid:50)
`(cid:42)
`(cid:17)
`
`(cid:26)
`
`(cid:31)(cid:42)
`
`(cid:46)(cid:32)
`(cid:29)
`(cid:44)
`
`(cid:32)(cid:3)(cid:50)
`(cid:11)
`
`(cid:3)(cid:7)(cid:8)(cid:5)(cid:11)(cid:2)(cid:6)(cid:10)(cid:4)(cid:9)(cid:1)(cid:11) (cid:18)(cid:28)(cid:22)(cid:23)(cid:22)(cid:25)(cid:18)(cid:26)(cid:39)
`
`(cid:3)(cid:5)(cid:4)(cid:6)(cid:7)(cid:8)(cid:9)(cid:1)(cid:2)(cid:10)(cid:40)(cid:49)(cid:22)(cid:50)(cid:15)(cid:6)(cid:48)(cid:7) (cid:13)(cid:17)(cid:8)(cid:10)(cid:7)(cid:9)(cid:10)(cid:1)(cid:2)(cid:2)
`
`(cid:72)(cid:71)(cid:80)(cid:71)(cid:110)(cid:73)(cid:78)(cid:81)(cid:79)(cid:82)(cid:110) (cid:21) (cid:74)(cid:75)(cid:77)(cid:73)(cid:110)
`
`(cid:43)(cid:1)(cid:2)(cid:3)(cid:4)(cid:3)(cid:3)(cid:5) (cid:6)(cid:7)(cid:8) (cid:9)(cid:17)(cid:1)(cid:3)(cid:2)(cid:1)(cid:4)(cid:5)
`(cid:1)(cid:9)(cid:1)(cid:2)(cid:2)(cid:4)(cid:4)(cid:5)(cid:5)(cid:4)(cid:4)(cid:5)(cid:4)(cid:4)(cid:5)(cid:4)(cid:4)(cid:5)(cid:5)(cid:4)(cid:4)(cid:4)(cid:3)(cid:9)(cid:7)(cid:7)(cid:6)(cid:6)(cid:6)(cid:9)(cid:7)(cid:7)(cid:6)(cid:6)(cid:6)(cid:9)(cid:7)(cid:7)(cid:6)(cid:6)(cid:6)(cid:9)(cid:7)(cid:7)(cid:6)(cid:6)(cid:6)(cid:9)(cid:6)(cid:7)(cid:7)(cid:6)(cid:7)(cid:9)(cid:6)(cid:7)(cid:6)(cid:6)(cid:6)(cid:9)(cid:7)(cid:7)(cid:6)(cid:6)(cid:6)(cid:9)(cid:7)(cid:7)(cid:6)(cid:7)(cid:6)(cid:9)(cid:6)(cid:6)(cid:7)(cid:6)(cid:7)(cid:9)(cid:6)(cid:6)(cid:8)(cid:7)(cid:6)(cid:9)(cid:6)(cid:6)(cid:7)(cid:7)(cid:6)(cid:9)(cid:6)(cid:6)(cid:7)(cid:6)(cid:7)(cid:9)(cid:7)(cid:6)(cid:6)(cid:7)(cid:6)(cid:9)(cid:6)(cid:7)(cid:6)(cid:6)(cid:9)(cid:6)(cid:7)(cid:7)(cid:6)(cid:9)
`(cid:1) (cid:1)(cid:1)(cid:1)(cid:2)(cid:1)(cid:8)(cid:7)(cid:1)(cid:1)(cid:3)(cid:4)(cid:3)(cid:3)(cid:5)(cid:6)(cid:9) (cid:1)
`(cid:7)(cid:8)(cid:9)(cid:8)(cid:10)(cid:8)(cid:11)(cid:15) (cid:12)(cid:15)(cid:12)(cid:13)(cid:15)(cid:14)(cid:15)(cid:1)(cid:6)(cid:3)(cid:2)(cid:4)(cid:5)(cid:15) (cid:9)(cid:7)(cid:10)(cid:1)(cid:8)(cid:5)(cid:13)(cid:12)(cid:15)(cid:16)(cid:17)(cid:18)(cid:14)(cid:6)(cid:11)(cid:19)(cid:2)(cid:3)(cid:4)(cid:20)
`
`(cid:10)(cid:11) (cid:1)(cid:8)(cid:11)(cid:9)(cid:1)(cid:2)(cid:4)(cid:1)(cid:7)(cid:1)(cid:4)(cid:2)(cid:1)(cid:2)(cid:3)(cid:4)(cid:8)(cid:1)(cid:7)(cid:1)(cid:2)(cid:6)(cid:1)(cid:2)(cid:5)(cid:11) (cid:18)(cid:21)(cid:18)(cid:25)(cid:23)(cid:18)(cid:27)(cid:28)(cid:25)(cid:25)(cid:50)
`(cid:12)(cid:9)(cid:10)(cid:8)(cid:14)(cid:11)(cid:13)(cid:14)(cid:2)(cid:4)(cid:6)(cid:7)(cid:6)(cid:2)(cid:7)(cid:7)(cid:5)(cid:14)(cid:1) (cid:2)(cid:2)(cid:2)(cid:2)(cid:3)(cid:14)
`(cid:8)(cid:13)(cid:11)(cid:12)(cid:7)(cid:10)(cid:9)(cid:1)(cid:2)(cid:4)(cid:5)(cid:4)(cid:1)(cid:5)(cid:6)(cid:3)(cid:14)
`(cid:3)(cid:2)(cid:4)
`(cid:3)(cid:2)(cid:4)(cid:5)(cid:1)(cid:6)(cid:6)(cid:7)
`
`(cid:1)
`
`(cid:2)(cid:3)(cid:1)(cid:4)
`
`(cid:64)(cid:47)(cid:38) (cid:98)(cid:84)(cid:84)(cid:84)(cid:84)(cid:98)(cid:102)(cid:110) (cid:10)(cid:10)(cid:11)
`
`(cid:1)(cid:7)(cid:4)(cid:5)(cid:10)(cid:12)(cid:8)(cid:11)(cid:10)(cid:9)(cid:6)(cid:3)(cid:4)(cid:2)(cid:12)
`
`Page 2 of 85
`
`
`
`POSITION
`
`FEE DETERMINATION
`
`INDEX OF CLAIMS
`
`Cesta, RBfECted
`=
`.. Allowed
`(Through numeral)... Canceled
`cesseesteeessseneseensaneerianes Restricted
`
`TE
`
`No eceeseeertesteeeeseesnteteeee Non-élected
`|
`Interference
`Appeal
`
`
`he
`oh
`2 ES
`ee
`
`
`
`
`
`Date*. Te :
`[Claim
`Date
`Claim
`Date
`
`ee
`Pee
`G
`a
`ue
`=
`7
`—
`ote
`al5/o 77
`a5
`:
`it
`|6 ole
`zlS
`
`
`
`
`Ka Ist|ttpaps CC
`or a
`:
`CeCe
`
`(eTtTtty Et
`
`b a |
`co
`+
`
`
`
`O.1.P.E. CLASSIFIER
`
`
`
`
`
`
`
`
`
` HH
`
` He[fe
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ef ati
`
`stat
`rif
`
`:
`
`a7 {
`¥|
`8
`5
`9
`
`{0140
`tl Af
`
`|-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ifmore than 150 claimsor 10 actions
`staple additional sheet here
`
`(LEFT INSIDE)
`
`Page 3 of 85
`
`Page 3 of 85
`
`
`
`TEmMTOS JP0,
`Ero, PC Pubs )
`
`
`
`SEARCH NOTES
`(INCLUDING SEARCH STRATEGY)
`
`
`
`
`
`
`
`
` Teiass|Sub.|Date|Ex|
`|
`
`7/3
`
`.
`
`a
`(RIGHT OUTSIDE)
`Page 4 of 8
`
`
`Page 4 of 85
`
`
`
`
`
`SERIAL NUMBER
`09/343,607
`
`
`FILING DATE
`CLASS
`GROUP ART UNIT
`06/30/99
`Te
`, 2783
`i,
`WD)
`aw
`
`1:
`
`
`
`| ATTORNEY DOCKETNO.
`PHA-~23.706
`
`~
`
`[—
`z7ASSER ALSAFADI, YORKTOWN HEIGHTS, NY}+} DAVID J. SCHAFFER,
`OG WAPPINGERS FALLS, NY.
`za,
`<r
`
`**CONTINUING DOMESTIC DATARS #822 xe w RH KR RE
`VERIFIED
`
`i} ap
`
`**371 (NAT °L STAGE) DATA*** kx kek RHR RRR
`VERIFIED
`
`“~ mn
`
`Mike ay Z
`
`**FOREIGN APPLICATIONS # **# x xa KKK
`VERIFIED
`
`‘
`
`|
`
`
`
`
`
`IF REQUIRED, FOREIGN FILING LICENSE GRANTED 07/30/99
`
`
`
`
`
`)Eorelgn PriPriority claimed Dyes STATE OR SHEETS TOTAL
`
`
`
`
`19 [a “conditions met Eyes f@Ano OMetafter Allowance|COUNTRY DRAWING CLAIMS
`
`
`
`NY
`3
`2i
`Verified and Acknowledged.
`
`
`
`
` CORPORAY.i PATENT COUNSEL
`ADDRESS
`US PHILIPS CORPORATION
`
`580 WHITE PLAINS ROAD
`TARRYTOWN NY 10591
`
`
`
`
`
`ELECTRONIC DEVICES
`
`,
`
`RECONFIGURATION MANAGER FOR CONTROLLING UPGRADES OF
`
`
`
`FILING FEE
`
`
`RECEIVED
`FEES: Authority has been given in Paper
`16 Fees (Filing)
`
`
`
`No.
`to charge/credit DEPOSIT ACCOUNT
`47 Fees (Processing Ext. of time)
`
`
`
`NO.
`"48 Fees (Issue}
`$778
`for the following:
`
`
`
`
`
`
`
`Page 5 of 85
`
`Page 5 of 85
`
`
`
`PATENT APPLICATION SERIAL NO.
`
`U.S. DEPARTMENT OF COMMERCE
`PATENT AND TRADEMARK OFFICE
`FEE RECORD SHEET
`
`07/13/1999 DIWENAS 00000049 141270
`
`09943607
`
`OL FCs101
`62 FC3103
`
`760.00 Gi
`18.00 GH
`
`PTO-1556
`(3/87)
`*U.S. GPO: 1998-433-214/80404
`
`Page 6 of 85
`
`Page 6 of 85
`
`
`
`
` il
`
`Old "S'N
`
`Case Docket No. PHA 23,706
`
`THE COMMISSIONER OF PATENTS AND TRADEMARKS, Washington, D.C.
`Enclosed for filing is the patent application of Inventor(s):
`
`fr
`
`20231
`
`;
`
`CLAIMS AS FILED
`
`Total Claims
`
`xX $18
`
`=
`
`18.00
`
`oo: ==
`e =
`YASSER ALSAFADI, J. DAVID SCHAFFER
`Oe =,
`:
`o =
`e
`=n
`For: RECONFIGURATION MANAGER FOR CONTROLLING UPGRADES OF ELECTRON®E a
`DEVICES
`2S =o
`oSan =
`ENCLOSEDARE:
`a =
`{X] Associate Power of Attorney;
`[X]
`Information Disclosure Statement, Form PTO-1449 and copies of
`documents listed therein;
`Preliminary Amendment;
`Specification (15 Pages of Specification, Claims,
`& Abstract);
`Declaration and Power of Attorney:
`(S Pages of a (X]fully executed
`{
`junsigned Declaration) ;
`{
`Drawing (3 sheets of [Xjinformal
`]formal sheets) ;
`Certified copy of
`application Serial No.
`Other:
`.
`;
`Assignment to Philips Electronics North America Corporation
`
`FEE COMPUTATION
`—
` NUMBER FILED BASIC FEE
`- 760.00
`
`
`
`
`
`
`
`0.00
`
`
`
`xx x
`
`amrame
`
`
`
`Independent
`Claims
`
`Multiple Dependent Claims, if any
`$260 =
`
`|TOTAL FILING FEE . $778.00 . 2. 2. «© 6 © © © © ="
`
`
`
`
`
`
`
`
`
`X $78
`
`=
`
`0.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.
`[
`]Amend the specification by inserting before the first line the
`sentence:
`--This is a continuation-in-part of application Serial
`No.
`, filed
`.7-.
`
`CERTIFICATE OF EXPRESS MAILING
`
`Express Mail Mailing Label No. Ed 33 554 BSS/ (i S
`| hereby certify that this paper and/or fee is being
`Date of Deposit mYUNE 30 } JA99
`deposited with the United States Postal Service "Express
`Mail Post Office to Addressee” service under 37 C.F.R.
`1.10 on the date indicated above and is addressed to the
`Commissioner of Patents and Trademarks, Washington,
`D.c. 20231.
`:
`hy
`FAWPDOCS\TH\MJ25THAO.NCO.dac Printed Name
`Noemi Chapa —) Carre
`Signature
`
`Gregory L. Tharne} Reg. No. 39,398
`Attorney
`.
`(914) 333-9665
`U.S. Philips Corporation
`580 White Plains Road
`Tarrytown, New York 10591
`
`Page 7 of 85
`
`Page 7 of 85
`
`
`
`Abstract
`
`A reconfiguration manager implemented on a computer or other data processing device
`
`controls the reconfiguration of software or other components of an electronic device such as a
`
`computer, personal digital assistant (PDA), set-top box, television, etc. The reconfiguration manager
`
`5
`
`receives a reconfiguration request, e.g., a software upgrade request from theelectronic device, and
`determines one or more device components that are required to implement the sconfiguration
`
`request. The reconfiguration manager also determines, e.g., 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-storedlists ofknown acceptable and unacceptable configurations for theelectronic device.
`
` reconfiguration manager may indicate that the requested reconfiguration is unknown, or may take
`
`Ifthe needed and currently implemented components correspond to a configuration on thelist 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
`
`another action such as respondingto the electronic device with a list of other components that would
`
`be required to implement the request.
`
`FAWPDOCS\THM-SPECS\PHA23,706.doc
`
`20
`
`700406
`
`Page 8 of 85
`
`Page 8 of 85
`
`
`
`RECONFIGURATION MANAGER
`-FOR CONTROLLING UPGRADES OF ELECTRONIC DEVICES
`
`5
`
`Field of the Invention
`
`The present invention relates generally to the field of electronic devices, and moreparticularly
`
`to techniques for upgrading or otherwise reconfiguring software and/or hardware componentsin such
`
`
`
`devices.
`
`Background of the Invention
`
`For many different electronic devices, such as desktop, laptop and palmtop computers,
`
`personal digital assistants (PDAs),
`
`telephones,
`
`televisions, set-top boxes and other consumer
`
`electronic processing devices, it is commonfor ongoing developmentefforts to continue to produce
`
`improvements to existing device software or hardware components, as well as new componentsthat
`
`add to or otherwise improve device functionality. Users of such devices often prefer to upgrade their
`
`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 ofthe device, and ifnot, what other components would need
`
`simultaneous upgrading in order to provide the desired compatibility.
`
`This compatibility
`
`20
`
`determination can be particularly difficult if the range ofpossible device configurations is large and
`
`the interaction among device components is complex.
`
`FAWPDOCS\TH\A-SPECS\PHA23,706.dac
`
`1
`
`700406
`
`Page 9 of 85
`
`Page 9 of 85
`
`
`
`A numberof different techniques have been developed for updating components ofelectronic
`
`devices. For example, U.S. Patent No.- 5,155,847 discloses a technique for updating softwareat
`
`remote locations. A central computer system stores the original software, and keepstrack ofall the
`
`software configurations for a number of remote systems. The remote system software 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 systems. Furthermore, the techniqueis not directly applicable
`
`to electronic devices other than computers, and cannotefficiently handle reconfiguration of hardware
`
`components,
`or
`hardware
`and
`software
`interdependencies.
`Another convention technique, described in PCT Application No. WO 94/25923, manages
`
`the configuration of an enterprise-wide network whichincludes at least one centralized computer and
`
` computer are independent, and fails to adequately address situations in which the required resources
`
`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. Furthermore, this technique generally assumes that the information
`
`regarding componentinteractionsis 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 invoives adding, amending and
`
`deleting files in their entirety. A significant problem with this approachis that it apparently assumes
`
`either that the files are independentor that any potential conflicting requirements have already been
`
`FAWPDOCS\THV-SPECS\PHA23,706,doc
`
`2
`
`Fh}
`
`700406
`
`Page 10 of 85
`
`Page 10 of 85
`
`
`
`resolved using other techniques. It fails to provide generalized techniques for ensuring compatibility
`
`among requested components.
`
`A convention technique disclosed in PCT Application No. WO 96/32679 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 natchedoperating
`
`
`
`code. However,like the other conventional techniques described previously, this techniquealsofails
`
`to adequately ensure compatibility among software 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 software 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, e.g.,
`
`a software upgrade request from the electronic device, and determines one or more device
`
`20
`
`components that are required to implementthe reconfiguration request. The reconfiguration request
`
`can be received directly from the electronic deviceitself, or otherwise supplied to the reconfiguration
`
`manager.
`
`FAWPDOCS\TH\A-SPECS\PHA23,706.doc
`
`3
`
`700406
`
`Page 11 of 85
`
`Page 11 of 85
`
`
`
`The reconfiguration manager also determines, e.g., from information supplied by the
`
`electronic device as part of the request, identifiers of one or more additional components currently
`
`implementedin 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 thelist of acceptable configurations, the request is approved and
`the needed components are downloaded or otherwise suppliedto the electronicdevice. Ifthe needed
`
`and currently implemented components correspond to a configuration on the list of unacceptable
`configurations, the request is denied. Otherwise, the feconfiguration manager mayindicate 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
`
` the configuration of a given device before they are implemented in that device, thereby avoiding
`
`reconfiguration request.
`
`Advantageously, the invention providesefficient techniques for incrementally upgrading or
`
`otherwise reconfiguring electronic devices. The invention ensures that upgrades are compatible with
`
`problems associated with inconsistent upgrades. Although particularlywell suited for use with
`
`software upgrades delivered over a network, the invention is applicable to reconfiguration of other
`
`types of device components, e.g., hardware components or combinations ofhardware and software
`
`components, and to numerousother applications. These and other features and advantages of the
`
`20 present invention will become more apparent from the accompanying drawings and the following
`
`detailed description.
`
`FAWPDOCS\TH\A-SPECS\PHA23,706.doc
`
`4
`
`700406
`
`Page 12 of 85
`
`Page 12 of 85
`
`
`
`Brief Description of the Drawings
`
`FIG.
`
`1 illustrates the operation of a reconfiguration manager in accordance with a preferred
`
`embodimentof the invention.
`
`5
`
`FIG.2 is a flow diagram showing processing operations implemented in the reconfiguration
`
`manager ofFIG.1.
`
`FIG.3 is a block diagram of an exemplary network-based computer system which includes
`
`a reconfiguration manager in accordance withthe invention.
`
` number of software components 144, 14B and 14C, corresponding to version 1.1 of a software
`
`Detailed Description of the Invention
`
`FIG. 1 shows a preferred embodiment ofthe invention, in which a reconfiguration manager
`
`10 interacts with an electronic device 12 also referred to as “Device X.” The device 12 may represent
`
`a desktop, laptop or palmtop computer, a personaldigital assistant (PDA), a telephone,television,
`
`set-top box or any other type of consumer electronic processing device. The device 12 includes a
`
`component A, version 2.3 of a software componentB, and version 2.0 of a software componentC,
`
`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
`
`FAWPDOCS\TH\A-SPECS\PHA23,706.doe
`
`5
`
`700406
`
`(i
`
`Page 13 of 85
`
`Page 13 of 85
`
`
`
`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.
`
`
`
`FAWPDOCS\TH\A-SPECS\PHA23,706.doc
`
`6
`
`700406
`
`Page 14 of 85
`
`Page 14 of 85
`
`
`
`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
`software component C, and version 1.7 ofa software component Z. Each ofat least a mibset ofthese
`components ofthelist 16 may be stored in the software component repository 18. Additional
`components not shown mayalso be storedin the repository 18.
`|
`A solid line between a given pair ofcomponents 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.0 of component C is an example of a known bad configuration.
`
`1.5 of component B is an example of a known good configuration. A dashed line between a given
`
`pair of componentsin the list 16 indicates that the pair of components correspond to a known “bad”
`
`configuration, i.e., are not compatible. The pair including version 1.8 of component A and version
`
`It should be understood that the list 16, although shown in graphical form in FIG. 1, may be
`
`implemented, e.g., as a stored table, set of tables or other type of list
`
`in a memory of the
`
`reconstruction manager10, as a portion of a program executed by the reconfiguration manager 10,
`
`or in any other suitable format. Moreover, althoughillustrated in FIG. 1 as indicating pair-wise
`
`20
`
`compatibility among components, thelist in other embodiments could include information indicative
`of compatibility between groups of enniltiple components. The term “list” aguiked herein is therefore
`
`intended to include any stored representation of information indicative of component compatibility.
`
`FAWPDOCS\TH\A-SPECS\PHA23,706.doc
`
`7
`
`700406
`
`é,
`
`Page 15 of 85
`
`Page 15 of 85
`
`
`
`A givenstored 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 from 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 requestin theillustrative embodimentalso includesa list
`ofthe components currently in the device,i.e., version 1.1 ofcomponent A, version 2.0 ofcomponent
`
`C and version 2.3 of component B. The request may include additional information, such as any
`
`neededinformation regarding the interconnection ofthe 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 ofFIG. 2, and if appropriate delivers to device
`
` embodiment ofFIG. 1 makes this determination usingthelist 16. In this — list 16 indicates that
`
`X a response 22 which includes the requested version 2.0 of software component A.
`For example, the reconfiguration managerfirst 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
`
`version 2.0 of component A is compatible with version 2.3 of component B and version 2.0 of
`component C. Asaresult, the requested upgrade is delivered to device 12 as part ofthe response
`
`22.
`
`FIG, 2 showsa flow diagram illustrating the operation ofthe 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
`
`informationis generally included as part ofthe request 20 sent by the device 12 to the reconfiguration
`
`FAWPDOCS\TH\A-SPECS\PHA23,706.doo
`
`8
`
`700406
`
`Page 16 of 85
`
`Page 16 of 85
`
`
`
`manager 10.
`
`In other embodiments, this information may be obtained in another suitable manner,
`
`e.g., from a local database based on a serial numberor otheridentifier of the electronic device.
`
`In step 102, the reconfiguration manager 10 determines that the request 20 includes a request
`
`for a software upgrade, i.e., a request to upgrade to version 2.0 of component A. It should be noted
`
`5
`
`that, although described 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 changesin device configuration. In the FIG. 2 example, the request is for an upgrade to
`aparticular 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
`
` 104 is determined in step 108 to correspond to one of the known bad configurations,
`
`components.
`Tn step 104 of FIG. 2,
`
`the reconfiguration manager 10 generates a potential upgrade
`
`configuration that will satisfy the received request. The reconfiguration managerin step 106 then
`
`searches through a set of known bad configurations. Ifthe upgrade configuration as generated in step
`
`the
`
`reconfiguration managerin step 110 attempts to find a set or sets of potential upgrade configurations
`
`from a set of known good configurations.
`
`If the resulting set of potential upgrade configurations is determined in step 112 to be empty,
`
`the reconfiguration managerin step 114 denies the upgrade, since it is known to be incompatible with
`
`20
`
`‘the current configuration of device X, and communicates th