throbber

`
`PATENT NUMBER
`
`._
`
`PATENTDATE
`
`APR 10 ZIIIII
`
`§ é a 3 g 3
`
`2
`
`(“$830
`
`SUBCLASS I/7
`
`EXAMINER
`
`4’
`Hit!
`FILED WITH: [:l DISK (can I] FICHE
`(An-chad In 90cm on mum II”)
`
`‘PREPARED AND APPROVED FOR ISSUE
`
`
`
`_RIGINAL—-
`
`ISSUING CLASSIFICATION
`
`cnoss nereneucas)
`
`
`
`
` .T RMINAL
`D CLAIMER
`
`DRAWINGS
`
`CLAIMS ALLOWED
`
`
`.: IIIII-_lr‘——__—
`
`
`
` . 'l'.'-—l- D Continued on Issue SIIp Inslde File Jackal
`I
`'
`,
`V
`
`
`
`are) The term of Ibis patent
`quehl to _____._(daIe)
`
`boon‘dlsmalmed
`
`
`
`
`,.
`/ 02%
`
`
`I DIc) The IeImInaI
`months 0!
`
`INS patent have bun dlsdalmod.
`
`
`WARNING:
`
`
`, ThIIInIomtIon disclosed Main may be mm Unmthorlm measure may be pmhbled by he 0mm swan Code TllIe 35. Sodium 1a. 181 and 3687
`' Poueulon oumdo Ina us. PM I Tmn: OM09 III resumed to unbound why”: and contractors any.
`
`Sheets70Mg
`
`Figs Drwg.
`
`Print/.FI9
`
`_
`
`(land mm Enmlnlr)
`
`Print (/Elaim forO.G
`Total Claims
`NOTICE_F_LLOWANCEMAILED
`‘
`
`ISSUE BATCH NUMBER
`
`
`
`
`
`.
`
`
`
`-....__...._-b_._..-..«.m.-.
`
`.
`
`
`
`37H NI 513:: :1! I33:
`W‘MSEIIIIEII meet...
`
`fl,—
`
`IFACP)
`
`LGE Exhibit—1002/Page 1 of 176
`LGE v. Uniloc
`
`

`

`
`CONTENTS
`
`-
`
`Date neceued
`
`’1 '
`
`18049937
`
`INITIALS ,
`
`Date received
`
`.
`
`(Incl. c. of M.)
`or
`Date Melted
`
`‘4"
`
`,
`
`
`
`
`(Incl. c. of M.)
`or
`Date Mailed
`
`
`170:.
`~ 192'?
`
`.
`
`
`
`4s.
`
`I:1. Ap ”cation m papers.
`I i11; S I
`III;
`‘
`I / '
`fg’ 1141413.: I
`
`{ti-“:1.A44"
`
`.
`
`_
`
`,.
`
`I
`
`I,
`
`
`
`82.
`
`*"
`
`(LEFT OUTSIDE)
`
`LGE Exhibit-IOOZ/Page 2 of 176
`
`

`

`‘
`
`ISSUE SLIP STAPLE AREA (for additional cross mafia?
`
`EEEEEEEEIIIIIIIIIIIIIIIIIIflIIIIIII
`
`
`
`
`
`0’
`
`................................. Rejected
`........... Allowed
`
`INDEX OF CLAIMS
`...................
`.................
`
`' N
`‘:
`I
`A ...................
`0 ...................
`
`.............. Non~elected
`.............. Interference
`.............. Appeal
`.............. Oblected
`
`........... Restricted
`
`
`EMIIIIIIIIIVY-IIIIEIIIIIIIIEEEEIIII
`
`
`EEEEEEEEIIlwflIIIIiMHEEIIIIIEHHFIIII
`
`
`
`-_fifi?€d§fifi$eml).. Canceled
`
`
`“GEMIIIIEIIIII
`
`
`EEIIIIIIIIII
`
`
`
`
`IEIIIIIIIIIII
`IE‘BIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIIII
`IEIIIIIIIIII
`IEEIIIIIIIIII
`IEflIIIIIIIIII
`IWIIIIIIIIII
`IBIIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIIII
`IEBIIIIIIIIII
`IE‘JIIIIIIIIII
`IEIIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIII
`IIIIIIIIIIII
`IEIIIIIIIIII
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`IIIIIIIII
`IEIIIIIII
`
`flIIE
`
`IIIIIII
`IIIIIII
`IIIIIII
`IEEIIIIII
`IEEIIIIII
`IEIIIIIIII
`IEEIIIIII
`
`
` IIIIBEBEIIIIIIIIIIIIIIIIIIIIIIIIIIII
`
`IIIIIIIIIII=
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`i‘;
`‘ SCHEME-III..-
`
`-' IlfllIIIIIIIIIIII
`
`
`mmflmfllflllill
`
`
`flmflfllIIlllll
`‘ Elilllll IIIIIIII
`
`
`'IITIIIIIIIIIIIIII “
`
`
`ImnnuIIIIIII
`mnIIIIIIIIIIIII
`
`
`III:IIIIIIIIIIIII
`umunnlIIIIII
`.mmnunlIII-II
`
`
`mmuunlllulll
`alwuflfllllllll
`:flmflflflllIIIII
`mwnnmIIIIIII
`
`
`gmwnumIIIIIII
`’Zgflflulllllll
`
`
`..a:=IIIIIII
`
`
`mwuuslllllll
`.HEMHEIIIIIII
`
`
`Immune-III..-
`maul-III...-
`
`
`IEIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIII
`
`.IEIIIIIIIIII
`
`IEIIIIIIIIII
`IEIIIIIIIIII
`lmllllllllll
`
`
`
`
`
`
`
`
`
`
`
`
`
`‘ IIIIIIII
`
`IE‘JIIIIIII
`
`IEIIIIIIII
`
`IEIIIIIIIIII
`
`
`IIIIIIIIIIIIII
`
`
`IIEIIIIIIIIII
`IEIIIIIIIIII
`IIIIIIIIIIIIII
`
`
`
`
`
`
`
`IIIIIII IIIII I
`
`
`
` EII IIIIIII I
`
`If more than .150 claims or to actions
`
`staple additional sheet here
`
`(LEE—T INSME)
`
`LGE Exhibit-IOOZ/Page 3 of 176
`
`
`
`
`
`
`IEIIIIIHMIIIII
`EIIIIIIIIIIII
`
`
`
`
`
`
`
`
`IEIIIIIIIIII
`IIIEIIIIIIIIII
`IIEIIIIIIIIII
`IBI-I-I-IIII
`
`IEIIIIIIIIII
`
`IIEEIIIIIIIIII
`
`IWIIIIIIIIII
`IIEIIIIIIIIIII
`
`IEIIIIIIIIII
`
`IIIEIIIIIIIIII
`
`IIIIIIIIIIII
`
`IEEIIIIIIIIII
`
`IIIEIIIIIIIIII '
`
`IEIIIIIIIIII
`
`IIIEIIIIIIIIII
`
`IIIEIIIIIIIIII
`
`IIIIIIIIIIII
`
`IIIE'IIIIIIIIII
`
`IIIEIIIIIIIIII
`
`IEIIIIIIIIII
`
`IIEJIIIIIIIIII
`IIIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIII
`IEIIIIIIIIII
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`IIIIIIII.fiflfiflfifififiIIIIIIII
`
`
`

`

`
`
`(mew OUTSIDE)
`
`LGE Exhibit-IOOZ/Page 4 of 176
`
`

`

`(13) United States Patent
`US 6,216,158 B1
`(10) Patent No.:
`Lun ct al.
`
`(45) Date of Patent: Apr. 10, 2001
`
`USUOOB t () 1 58m
`
`SYSTEM AND METHOD USING A PALM
`SIZED COMPUTER TO CONTROL
`NETWORK DEVICES
`
`(75)
`
`(73)
`
`lnwnturs: Wenjun Luo. Fremont; Elaine P.
`Lusher, Piuasztulon. bulb of CA (US)
`
`Assigncc: SCOM Corporation. Santa Clara. CA
`(US)
`
`Notice:
`
`Subject m any disclaimer, the term ol‘this
`pattnt is cxlendcd or adjusted under 35
`U.S.C. 154th) by 0 days.
`
`Appl. No.2 09/237,609
`
`Filed:
`
`Jan. 25, 1999
`
`tm. Cl.’ ................................... GOGF 13/00
`
`
`l. 709/217; 709/219; 709,235;
`v.5. CI.
`709/313; 709/329
`.
`Flt-Id of Search t.
`7095202. 203,
`.
`.
`709/217. 2
`_
`. -25‘ 230‘ 250. 313.
`319, 328. 329
`
`(56)
`
`References C lied
`
`US. l’A‘I‘EN'l‘ DOCUMENTS
`
`tltr'lwn \Nauld al.
`5,504.07“ "
`8.1008 Firkicl
`5.79“!)77 '
`5,832.5!th ' MENUS Kuztna
`5.9.“).545 " WWW l‘rese ll el .21,
`
`........ 4551‘5! W
`
`.l 702."! 22
`.. 707,100
`WHIZUS
`
`7:]‘100 Johnson ct ul.
`5.03.1885 ’
`5.004.830 ‘ 10:1‘1‘10 Row: el al.
`.....
`5.073.0'Jb ' 10/1091! Agranal ct al.
`OTHER PUBLICATIONS
`
`
`
`
`3‘J5’7’l.’
`709/23
`345857
`
`[tr/Emmllimr
`11151171118 for PE'I’Sullll/iit‘ll
`Mfr Dimming.
`Errtimnnwnt 1994 "'l'nwards Fumrc Personalised informa-
`tion Environmcnm" 7l’c/micnl Repnrl EPC—IU‘M—HM.
`Dec. 21. 1993.
`McCandlcss. Micliucl, “'lltc PulmPiolt and the l-ltmdltlcd
`Revolution”, IEEE prert. NovfiDcc. [997. pp. (1—34.
`
`‘ cited by examiner
`
`1 ’I‘immfit' Llrrlminur—Vict D. Vu
`(74) Allomqy. Agent. or I inn—Marl; A. Hayncs: Haynes 6‘;
`Belle] LLP
`
`(57)
`
`ABSTRACT
`
`Controlling network services using palm six/:d computers is
`described. A program on th: palm sized computcr is used to
`.iccus's. a registry of network scrvicus thul may be available
`The registry include-s descriptions for various scrvtces. [inch
`dowription includes at least a rclktrcncc to program code that
`can be downloaded to the palm sized computer. Executing
`this program causes the palm sized computer
`to issue
`commands directly to the specific llchUIk serviccs needed.
`In some cast-s. these nctwork services includ: application
`serviccs for running, desktop applications that the palm sized
`computer could not execute
`
`20 Claims. 7 Drawing Sheets
`
` mA3
`
`I
`
`. Download
`
`Applicafiun Service
`
`120
`
`
`
`140 Display Sewice
`
`LGE Exhibit-IOOZ/Page 5 of 176
`
`

`

`US. Patent
`
`Apr.10.2|l01
`
`Sheet 1 or 7
`
`US 6,216,158 B1
`
`Application Service
`
`m/
`
`\3. Download
`
`FoocPololCcrtrc' I
`
`
`
`140 Display Service
`
`FIG. 1
`
`LGE Exhibit-1002/Page 6 of 176
`
`

`

`US. Patent
`
`Apr. 10,2001
`
`Sheet 2 of 7
`
`US 6,216,158 Bl
`
`52%Egg8sta?”a
`
`
`
`5:232.2382mm8“
`
`222,.Es:Es8??8%”am
`
`32“:5%9252.283%
`
`sagasfi
`
`835m
`
`3830
`
`”BE3ages
`
`a
`
`$982223
`
`Esséméfi
`
`E._88_§=o_§§§__wH
`
`gnogéasa
`
`5%Egg8%358a“
`
`523%$8an
`
`5:52_§E3.55555%%
`
`
`
`32%ESE$3232a.
`
`egazmlm
`
`/_¢a.w\
`/as°§88§\
`32:3323:8
`
`i.,,
`
`8EcwSass
`
`
`
`EmmaEamz8N\E;5%?/
`
`.333.:ng
`
`/
`
`8st6:55am
`
`
`
`
`
`sea:messages8%:82%Na
`
`
`
`
`
`53.;2252358“.5562Na
`
`
`
`
`
`
`
`
`
`
`

`

`US. Patent
`
`Apr. 10, 2001
`
`Sheet 3 of 7
`
`US 6,216,158 81
`
`5%3.6%85385%E
`
`553252582%fl
`
`
`
`2%:_§§n_23Egg;am
`
`
`
`22%Bus;225%:8:.”ma
`
`ssam
`
`£8.30
`
`”8202920358”533555823%/385:562_=__,\
`/§§§§§\
`
`
`
`
`
`358E523
`
`33%;”me
`
`gmsogammcsscaemwgaS
`
`EsanmaES
`
`523583
`
`5352ESEsEgg;3
`
`22%ESE$535fl
`
`2:532as;922%
`
`83mE502SN
`
`83%.2353
`
`\Egsogegf
`
` .\_8§>235
`ELSE—=88%gm;:2
`
`
`
`5%.:2255358$58858H
`
`ESE€525E252NN
`
`md.”—
`
`
`
`
`
`
`
`
`
`

`

`US. Patent
`
`Apr. 10, 2001
`
`Sheet 4 0f 7
`
`US 6,216,158 B1
`
`
`
`
`11o Control A
`pplication
`
`
`
` Middleware Protocol layer
`lPowerPointControlProtocolManager
`
`
`
`PowerPoint Control
`CPowerPoint
`
`
`
`
`
`
`
`
`Middleware Protocol Layer I
`—
`
`
`
`
`
`
`
`
`m Projector Service
`
`
`
`
`
`Projector control front end
`
`m Storage Service
`I Middleware Protocol Layer
`
`_ L
`
`DAP front end
`
`Backend LDAP Database
`Cldapr
`
`Projector Control
`CProjector
`
`FIG. 4
`
`LGE Exhibit-1002/Page 9 of 176
`
`

`

`U.S. Patent
`
`Apr. 10, 2001
`
`Sheet 5 or 7
`
`US 6,216,158 B1
`
`Object Class Hierarchy
`
`
`
`CPowerPoint
`
`
`
`
`
`
`
`
`----------
`
`FIG. 5
`
`LGE Exhibit-IOOZ/Page 10 of 176
`
`

`

`US. Patent
`
`Apr. 10. 2001
`
`Sheet 6 of 7
`
`US 6,216,158 B1
`
`Object Class Hierarchy for Network Services
`
`Network Service
`
`Application
`Service
`
`Operating System
`Service
`
`Storage
`Service
`
`Projection
`Service
`
`Service Location
`Service
`
`Slide Presentation
`Service
`
`Speech Recognition
`Service
`
`Groupware
`Service
`
`Email
`Service
`
`Object Instance
`
`Object Class
`
`FIG. 6
`
`LGE Exhibit-1002/Page 11 of 176
`
`

`

`US. Patent
`
`Apr.10,2001
`
`Sheet 7 of 7
`
`US 6,216,158 B1
`
`Object Class Hierarchy for Application Services
`
`Application
`Service
`
`Slide Presentation
`Service
`
`Speech Recognition
`Service
`
`Groupware
`Service
`
`Email
`Service
`
`Naturally
`Speaking
`
`Altthsta
`Forum
`
`Lotus
`Notes
`
`Eudora
`Mail
`
`Microsoft
`Mail
`
`Netscape
`Mail
`
`Object Instance
`
`Object Class
`
`FIG. 7
`
`LGE Exhibit-1002/Page 12 of 176
`
`

`

`US 6,216,158 131
`
`1
`SYSTEM AND METHOD USING A PALM
`SIZED COMPUTER T0 CONTROL
`NETWORK DEVICES
`
`BACKGROUND OF THE. INVENTION
`I. Field of the Invention
`
`5
`
`.l I)
`
`15
`
`'lhis invention relates to the lield of networked computer.
`In particular. the invention relates to a system and method to
`control network devices using a palm sized. or otherwise
`reduced functionality. computer.
`2. Description of the Related Art
`Palm sized computers, also referred to as Personal Digital
`Assistants (PDAs), are portable devices which perfomt an
`array of personal management tasIS such as calendar man-
`agement and address book storage. The adoption of palm
`sized computers has been rapid. Some palm sized computers
`are able to interface with conventional computing devices.
`such as PCs, on an as-needed basis. For example, palm sized
`computers such as SC'orn’s Palm PlatformTM computers can .
`upload personal appointments to a PC-based calendar.
`Palm sized computers generally have the following char-
`acteristics. Relative to desktop and laptop computers. palm
`sized computers have limited processing, display and input
`capabilities. As a result of these limitations, palnt sired
`computers do not run the same applicatiom as desktop or
`laptop computers. Other limitations of palm sized computers
`include limited battery life and lower bandwidth communi-
`cations with other devices.
`
`3')
`
`35
`
`4“
`
`50
`
`One big advantage of palm sized computers is their
`portability. Therefore,
`it
`is desirable to be able to access
`desktop functionality from palm sized computers.
`
`SUMMARY OF THE INVENTION
`
`Controlling network services using palm si2ed computers
`is described. A program on the palm sized computer is used
`to access a registry of network services that may be avail-
`able. The registry includes descriptions for various services
`Each description includes at least a reference to program
`code that can be downloaded to the palm sized computer.
`Executing this program causes the palm sized computer to
`issue commands directly to the specific network services
`needed.
`In some cases.
`these network services include
`application serviaas for running desktop applications that the
`palm sized computer could not execute.
`In some embodiments. the device executing the network
`services and the palm sized computer are cchutng middle—
`ware applications for communicating with the registry. In
`some embodiments. this middleware includes Jini technol-
`ogy from Sun Microsystems. Additionally.
`the programs
`downloaded can include Java program code.
`BRIEF DESCRIPTION OF THE FIGURES
`
`J.u.
`FIG. 1 illustrates a system having a palm sized computer -
`controlling operations of various network devices.
`FIG. 2 illustrates a software architecture for use in the
`system of FIG. 1.
`FIG. 3 illustrates an example architecture for controlling
`a PowerPoint presentation.
`FIG. 4 illustrates a detailed software architecture for the
`example of FIG. 3.
`FIG. 5 illustrates a class hierarchy that am In: used in the
`example of FIG. 3.
`FIG. 6 illustrates an example class hierarchy for network
`services that can be provided in the system of FIG. I.
`
`60
`
`2
`FIG. 7 illustrates an example class hierarchy for applica»
`tion services that can be provided in the system of FIG. 1.
`
`DETAILED DESCRIPTION
`A. System (lverview
`A palm sized computer can serve as a network portal to
`usher in a new generation of mobile computing. Palm sized
`computers are the ideal nem generation computing device in
`that they are inherently mobile and have the lightweight
`form factor necessary for mobile computing. The fundamen»
`tal obstacle to palm sized computers as the next generation
`computing device can be removed by viewing the network
`as an extension of the palm sized computer’s resources.
`Functions can be downloaded into the device as needed. and
`overlaid after they have been used. This allows the palm
`sizod computer to adapt to a changing environment (as the
`mobile user '5 location changes) and to access exactly the set
`of services it needs. These services are stored on the network
`and can be used at will. Many of these services may never
`reside on the device and are more suitable for execution by
`a conventional computer. However, they an: accessible and
`can be controlled via a lightweight computing device. such
`as a palm sized computer.
`B. Building Blocks of Network-Enabled Palm Sized Com—
`puters
`'l'he building blocks for lightweight mobile computing
`include a palm sized computer, a computc/‘memory,-‘storage-
`intensive devicds). and a network.
`Middlewarc allows palm sized computers to discover
`network-based computing resources. Once discovered, this
`middleware provides a mechanism for the palm sized com
`puter to use these resources. This middlcwarc typically
`includes a directory of resources (or services). a protocol for
`storing and retrieving front the directory. and mechanisms to
`transfer software from the directory to a palm sized corn~
`putct'.
`Control applications reside on a lightweight computing
`device. such as a palm sized computer. but manipulate
`computing services on the network. Control applications
`assume the use of middleware. such as Sun Microsystems
`lini, for access to network-based resources. (Note in some
`embodiments, the control application is distributed betwuen
`the palm sized computer and a control proxy server.)
`Example Registry and Control Infrastructure: Jini
`Jim?“ is a technology developed by Sun Microsystems
`which addresses the problem of computing and network
`complexity. It eases the burden of accessing services by
`providing seamless access and automatic registration of
`network resources. Jini accomplishes this by adopting a
`model in which devices announce their presence and capa-
`bilities to the network. and access the same type of infor-
`mation in order to locate ServiCes they wish to use.
`The Jini approach relies on Java and a Jini “registry" (Le.
`database of services) as the underlying infrastructure. Each
`device is expected to run a Java Virtual Machine (JVM), or
`rely on a Jini proxy which runs a JVM on the device's
`behalf. Key to Java is the idea that software (as Well as data)
`can be dynamically downloaded to a device. The Java model
`assumes a distributed, network-centric model in which the
`behavior of a device can be dynamically altered to accom-
`modate changing conditions
`Jini eases network connectivity problems. Jlni acts as
`mrddlcwarc to access network resources. as it lets devices
`locate services and download software for those services.
`Other middleware could be substituted for Jim if it provides
`discovery and software download for network-based scr-
`VICCS.
`
`LGE Exhibit—1002/Page 13 of 176
`
`

`

`US 6,216,158 B]
`
`3
`
`(7. Definitions
`Acontrot device is a device which runsJini (or some other
`discovery and software download technology) and is
`capable of accessing a wide range of network-centric
`services. including services which are incapable of running
`on the control device. The control device is the access device
`for a wide class of computing services otherwise inacces-
`sible to devices with restricted computing power. 3Com‘s
`palm sized computer. the Palm Computing platform, is an
`example of such a control device. Windows Cl: compatible
`devices may also be used,
`A control application is as an application that relies on
`resources located all" of the control device (cg. on a
`network), but uses a control device to initiate and control the
`application. The resources are accessed and controlled. but
`not
`resident, on the control device. Examples of such
`compute/'memory-inlensive services include PowerPoint
`slide presentations and speech recognition systems. These
`services can be both invoked and controlled vin a control
`device.
`Network-based services can be used by any control
`device. Services oflcr a discrete task to the control device.
`This contrasts with a traditional model
`in which devices,
`such as a PP, house the entirety of resources a control device
`might utilize. Services are tine-grained and represent
`a
`distributed set of capabilities residing on a network. Services
`may or may not be co-located with other services on the
`same physical device. Services are offered (via a network
`and a Directory of Services, such as the Jim Lookup) in as
`small a unit as is justifiable giVen the application tasks users
`will typically want to accomplish. Fine-grained services can
`be used by a variety of consumers who need precisely that
`function. The model that emerges is a network-based model
`that offers a wide range of narrowly-defined computing
`services of interest to a wide range of applications, Services
`will be physically distributed across devices but accessible
`via a central repository (cg. database) of services. This
`model of distn'buted computing is inherently scalable in that
`the set of services offered via the network grows seamlessly
`as devices “plug in" and announce their capabilities.
`D. An Example of the Control Application
`To help illustrate the use of a control device and a control
`application, a PowerPoint slide presentation control
`is
`discribed herein. (F10. 1 illustrates a generalized view of
`such an example.) In this example, a palm sized computer
`100 accesses network 110 resources (via a Directory of
`Services. such as the lookup service 120) to locate the
`elements it requires to remotely control a presentation
`located on the network. The ptdm sized computer 100 uses
`three services to function as a control device to display a
`PowerPoint presentation:
`an application service 130 (to run PowerPoint)
`a persistent storage service ISO (to store the presentation)
`a display service 140 (to display the presentation images)
`Each of these services will have registered with the
`lookup service 100. A service in this example. is tied to
`ditl'erent hardware devices. However, this is not required.
`Storage, processing, and/or display could be supported by
`one or more computer systems.
`None of these services are resident on tho; palm sized
`computer 100. Once the palm sized computer 100 has
`located the necessary services,
`it downloads the code
`required to control
`those services (using the lookup and
`download protocols). Middleware, such as Sun's Java/Jim
`technology, is used to move the code,
`The palm sized computer 100 is then capable ofdireclly
`controlling the services it requires.
`
`I."
`
`ll)
`
`15
`
`t".
`
`3')
`
`40
`
`50
`
`60
`
`4
`In this example. all the devices can communicate on the
`network 110. however. they need not all be connected to the
`network in the same way.
`Functionally. the devices play the following roles:
`palm sized computer 100: the remote control device
`application services: a set of resourws and services, such
`as compute power and applications
`network [10:
`the physical medium which connects
`devices and services
`
`lockup service 120'. a database of network services
`E. Architecture
`As noted above, the palm sized computer 100 functions as
`the remote control device for the PowerPoint presentation. It
`is a mum-function control device in that it can control a host
`of resources accessible via the network. The palm sized
`computer 100 accomplishes this via middle-ware (cg. .lini)
`and a generic control protocol capable ol
`issuing control
`commands to an otl'bonrd resource. The palm sized corn-
`puter 100 implements this control via the software compo-
`nents depicted in FIG. 2. These software components rcp-
`rcscnt a generic architecture (or control of any network—
`based resource using a reduced functionality computer such
`as at palm sized computer. The software architecture,
`middlewarc. and control protocol implement a new model
`for lightweight mobile computing. This model of light—
`weight mobile computing is particularly wellvservcd by
`devices such as a palm sized computer, as they possess the
`requisite size and portability.
`In FIG. 2, the control device 200 is able to control services
`on the netwurk 1l0. such as the mount: based service 250.
`The directory of services 220 provides the registry functions
`used to enable the system.
`The control device 200 includes a control device operat-
`ing system 201 which supports a network communications
`program 202 and a control application 210. The network
`communications program 202 allows the control device 200
`to communicate with other devices on the network. The
`control application 210 includes the following elements:
`a GUI 212 to display the available network-based services
`and accept user input
`an application control protocol manager 214 which inter—
`faces betweun the control device 200 and the network
`based computer service 250 by requesting tasks from
`that service (tag. slide manipulation). 1his module is
`responsible for generating the application control pro-
`tocol to command the selected service,
`a middleware protocol manager 216 to transfer data
`between the control device 200 and the directory of
`services 220 (mg. communication between Palm plat—
`form aud the Jinj Lookup). This module is responsible
`for generating the syntax necessary to communicate
`based on the type of middlcware being used.
`The service device operating system 25l
`includes a
`service device communications program 152 and a service
`control application 260. The service device communications
`program 252 is resptmsihle for communicating with the
`network 110. The service control application 260 includes
`the following components:
`a service application} control protocol manager 262 that
`interfaces between the network based computer service
`250 and the control device 200 and accepts control
`tasks (cg. slide manipulation) issued from the control
`device 200. This module is capable of sending back a
`response (cg. status) to the control device 200.
`a middlcware protocol manager 266 to transfer data
`between the network based computer service 250 and
`
`LGE Exhibit—1002/Page 14 of 176
`
`

`

`US 6,216,158 B]
`
`m
`
`10
`
`15
`
`If)
`
`5
`the directory service (eg. communication between the
`application sentice 130 and the Jim lockup), 1111s
`module is responsible for generating the syntax used to
`communicate based on the type of middlcwarc being
`used.
`an applimtion 268 to perfomt functions on the network.
`The application 268 can be a desktop application that
`would not execute on a palm sized computer.
`Returning to the specific example of the PowerPoint
`presentation. FIG. 3 illustrates the architecture that could be
`used to implement such a system. In FIG. 3. the control
`device 200 has been replaced with a palm sited computer
`100 executing the Palm ()S 301. 'lhe GUI 212 is specifically
`for PowerPoint control (see FIG. 1 for no example 01‘ such
`a GUI). The Java Virtual Machine 318 is executing on the
`palm sized computer 100 and replaces the middleware 218.
`The middleware protocol manager 216 supports .lini
`discovery, lookup and download protocols. PowerPoint con-
`trol commands are isued to the network based computer
`service 250. The PowerPoint control protocol manager 364
`provides the interface for these commands and controls the
`PowerPoint application 368.
`1-. Control How
`The process for accessing and controlling network-based
`services is described below. The specific implementation
`control of a PowerPoint Service via a 3Com Palm Comput-
`ing platform is used as an example. Refer to FIG. 1.
`t. (.‘ontigure a computer hosting the directory of services
`220 and connect it to the network 110, For instance, :1 Jim
`lockup service is configured to listen at a preset TCP, or
`UDP, port {or service registration or service lockup
`requests.
`2. Establish in network connection front the network based
`computer servrce 250 to the network 110.
`3. Register the computing service with a directory of ser—
`vices 220. For example. in the Jim" model, the computing
`service initially sends out a multicast packet announcing
`its presence on the network. Once the directory service
`20 receives the packet, it sends a urticast packet back to
`the announcer. The packet includes an interface (e.g. Java
`utde) for uploading code hack to the directory service 220
`as well as for searching and downloading code from the
`directory service 220.
`4. Upload service description to the directory service 220. If
`Jim is adopted as the middlcware. the application service
`130 receives the response from the directory service 220
`and uses the included interface to upload its service
`interface to the directory service 220. When the service
`interface is called, it contacts the directory service 220
`which in turn creates an entry (represented by an object)
`for this new service and sets the proper fields such as
`service name, attributes and optionally the corresponding
`service interface. ()thcr middlewure may choose to use
`protocol-based approaches web as FTP or TFTP for the
`uploading process.
`5. Register the storage service 150 and display service 140 .
`via the same process
`0. Establish it network connection front the control device
`200 to the network 110. For Palm computers, there are
`multiple options [or network connectivity. Possible solu-
`tions include using the infrared (LR) port
`to talk to a
`lR—LAN bridge or router, using the serial port to tall; to a
`serial-to-LAN bridge or router, using either the [R or the
`serial port to talk to a digital cell phone and dial up 11
`modem Server, and/or using wireless data communica—
`tions.
`7. launch the service control graphical user interface (GUI)
`212 on the control device 200.
`
`6
`8. Via the service control (tUl 212. accept user input, such
`as the selection of an application (for example. a Power-
`Point appliCation) to be controlled.
`9. Optionally register the control device 200 with the direc-
`tory service via a registration protocol. such as the Jini
`Discovery Protocol. This step is the same as the above one
`for the other services. 1t is executed only it" the control
`device 200 has resources to offer.
`10. Search the directory service 220 and download the
`desired service descriptor.
`III
`the case of Jini, after the
`control device 200 receives the response from the direc-
`tory service 220, it uses the included interface to search
`the directory service 220 for an application service using
`the object type representing the service (such as an object
`type of PowerPoint presentation service) and the desired
`service attributes (such as the name and the physical
`location of the service). Once the directory service 220
`tinds such a service entry,
`the control device MO is
`notified, which itt turn uses the downloading interface to
`download the application service descriptor. One example
`of these services is the GUI code for controlling tt
`PowerPoint presentation.
`11. Send requests from the control device 200 to the network
`based computer service 250 to control the desired apph-
`cation. For example, a "next slide" request could he sent
`from u palm sized computer 100 to an application Service
`130 running PowerPoint. The communication can be
`based on a protocol such as the following one:
`
`Control Type
`
`Appiicution
`
`File Name
`
`tonuol Function
`
`Where:
`
`Control Type-{RequesL Reply}
`Application- (PowerPoint, FAX, Print, Email.
`Phonebook. .
`.
`.
`}
`File Nante-{3ComPalmVllSpeciticxttion}
`Control function-{ File Load. Slide Forward, Slide
`Backward, File Close, .
`.
`.
`}
`Allematively, techniques such as Java's Remote Method
`Invocation (RM1)can be used to achieve the same goal. In
`this case, the control device makes it local function call such
`as doForwardSlide( ). '11): RM] mechanism will transfer the
`call to a remote machine which implements and carries out
`the function call. The PowerPoint presentation service may
`in tttrn use other services such as the storage service 150 and
`the display service 140. The procedure to employ these
`services is similar to steps 10—” above.
`12. Accept any response to requests sent from the control
`device 200 to the network based computer server 250 and
`process any errors.
`G. Control Device GUI
`An important element of the control application 210 is a
`GUI front-end which accepts user input for controlling the
`PowerPoint presentation (or other application) and a control
`protocol manager backend which takes user input and trans
`tales it ittto commands to the CPU service. An example GUI
`is depicted in FIG. 1. The example. 6111 allows the user to
`click on "forward“, “backward", “go-to—lirst-page" or ”go-
`to-lttst-pngc“ buttons to control the slide show. The user can
`also click a “get-list" button to get a full list of the slide titles
`in the current presentation and choose to go to a particular
`slide. By clicking the “scribble" button,
`the Window
`switches to graphics mode. In this mode, the user can draw
`at random on the panel. and the result of the drawing, will he
`sent
`to the CPU service and eventually displayed on the
`projection service.
`
`3')
`
`4f)
`
`45
`
`5t)
`
`60
`
`(I5
`
`LGE Exhibit—1002/Page 15 of 176
`
`

`

`US 6,216.58 B]
`
`7
`there are
`As explained in the software flow section.
`multiple ways to implement the application control protocol
`manager 214. the following illustrates one approach. The
`protocol takes the following l‘onn:
`
`
`
`
`
`
`Propertt‘chtht-d Name
`Type
`Description
`PowerPoint
`
`5
`
`Presentation»
`
`Collection list of open presentations
`Presentation
`
`Collection Army at slides in presentation
`Storage
`location whet: presentation lmrlcll
`from
`Proieuor
`Proiector when: presentation i‘~
`viewed
`
`Slide
`
`String
`Method
`
`Method
`
`Title for the slide
`Add git rn comments to slide at
`given uwtditt‘nlur
`Add given graphitz to slide ut
`given coordinates
`Stomge
`
`Strmg
`String
`
`LDAP Server host when: the
`presentation stored
`File name and other dermis for
`presentation
`Projector
`
`Slider:
`to Lmatiort
`
`View
`
`15 Till:
`Addt 'ontntertts
`
`AddScrihole
`
`1 ‘
`
`0 Host
`I’iteNamc
`
`35 Host
`String
`Projecwr host where slides shown
`
` ShowSlIde Method Show slide image on projector
`
`
`
`3,,
`
`LDAP Database Control
`
`The LDAP database control provides tile system services
`to store and retrieve presentations. This control gets com-
`mands from the PowerPoint control
`through the LDAP
`protocol.
`to search for presentations and return preseotn
`lions.
`
`35
`
`An object class hierarchy for CLdapDB could include
`4., ('Ltlrme having to a specillc storage system reference.
`
`
`
`Stomp:
`
`
`45 Pi'opettyiMeLhud Name
`'I‘ype
`Descrithon
`FiteFittei
`Stung
`File filter used to get file list
`l’rlclist
`Collection
`List ot‘ files found on
`storage
`
`
`50
`
`55
`
`60
`
`(-5
`
`Projector Control
`
`The projector Control provides image viewing services
`and has a simple image viewer that shows the image on it
`projection screen, monitor, display device or canvas. The
`control gets commands from the PowerPoint control.
`Specifically. to display images. the projector control could
`cause frames generated by the PowerPoint control
`to be
`displayed at the device controlled by the projector control.
`Other embodiments use more sophisticated techniques for
`displaying the PowerPoint information (e.g., support wrn-
`dowing system API calls that an application may make).
`
`An object class hierarchy for CProjecIor could include
`CProjcctor having to a specific image view reference.
`
`LGE Exhibit—IOOZ/Page 16 of 176
`
`
`
`File NameAppfimtionControl Type Control function
`
`
`
`
`
`Where:
`
`('ontml ’l‘ype-{Rcormsh Reply}
`Application-{PrmerPoint, FAX, Print. Emuil.
`Phonebook, .
`.
`.
`}
`File Nunie-{3(‘omPnlmVllSpecilicntion}
`Control function --[File- Load. Slide Forward. Slide
`Backward, File Closc..
`.
`.
`. }
`When the user clicks arty button or draws something on
`the GUI,
`the application control protocol manager 214
`generates the corresponding field in the protocol and sends
`a command to the notwurk based computer service 250 via
`a 'I‘CP/IP channel.
`
`ll. Service Control Application Design
`FIG. 3 illustrates a detailed software architecture [or the
`service control application of FIG. 3. The architecture
`includes three main elements:
`a CPU service 410
`
`(corresponding to the application service 130), a storage
`service 420 (corresponding to the storage service 150) and
`a projector service 430 (corresponding to the display service
`140). Each of the elements include middleware protocol
`layer management modules. Each module has :1 correspond-
`ing service application control module (e.g., PowerPoint
`Control Protocol Manager). To control specific network
`services, instances of those

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