throbber
US006311058B1
`(10) Patent No:
`a2) United States Patent
`US 6,311,058 B1
`Weckeret al.
`(45) Date of Patent:
`Oct. 30, 2001
`
`
`(54) SYSTEM FOR DELIVERING DATA
`CONTENT OVER A LOW BIT RATE
`TRANSMISSION CHANNEL
`.
`Vi
`Inventors: Dave Wecker,Bothell; Vinay Deo,
`Bellevue; John Mark Miller, Kirkland;
`:
`.
`nat
`1,
`David Tuniman; Michael J. O’Leary,
`both of Redmond,all of WA (US)
`
`(75)
`
`(73) Assignee: Microsoft Corporation, Redmond, WA
`(US)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`USS.C. 154(b) by 0 days.
`
`(*) Notice:
`
`(21) Appl. No.: 09/107,666
`(22)
`Filed:
`Jun. 30, 1998
`
`(SL) Mts C0 cececeeeccccssesssessseeecceseessneeeseeeeesaee H04M 3/00
`
`(52) US. Ch. wee . 455/418; 455/419; 455/412
`
`’
`(58) Field of Search 0... 455/412, 437,
`455/422, 403, 418, 419, 186; 370/486,
`85.13; 379/93.25; 395/500, 200.34; 700/10;
`600/300
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`5,559,800 *
`9/1996 Mousseau et al.ssc 370/85.13
`5,799,151 *
`_ 305/200.34
`8/1998 Hoffer sees
`
`5,905,856 *
`5/1999 Ottensooser
`.. 395/183.14
`
`8/1999 Cardillo, IV et al.
`we 379/93.25
`5,923,738 *
`8/1999 Tiff cece eeceeseeeeeeeseee 600/300
`5,935,060 *
`
`8/1999 Liet al. wees 395/685
`5,943,496 *
`
`8/1999 Rinne.......
`.. 370/486
`5,946,326 *
`
`.. 707/10
`5,963,944 * 10/1999 Adams .
`5,974,085 * 10/1999 Smith wees 375/222
`
`5,974,238 * 10/1999 Chase,Jk......
`ve, 395/200.78
`6,005,490 * 12/1999 Higashihara....
`ve 340/825.72
`
`6041183 *
`3
`/2000 Hayafune et al.
`oe 395/712
`,041,
`6,151,610 * 11/2000 Senn etal. w..scccceccssseessseees 707/516
`OTHER PUBLICATIONS
`
`“Dynamic Documents: Mobile Wireless Access to the
`WWW”, by M. Frans Kaashoeket al., JEEE, Dec. 8, 1994,
`PP- 179-184.
`.
`a
`oo
`.
`Extending HTML in a principled way with displets”, by
`Fabio Vitali, Chao—Min Chiu, Michael Bieber, Computer
`Networks and ISDN Systems, vol. 29, No. 8-13, Sep. 1,
`1997, pp. 1115-1128.
`“Minstrel™ Plus” brochure, for Novatel Wireless,
`Inc.,
`copyright 1998.
`
`* cited by examiner
`
`Primary Examiner—Daniel Hunter
`Assistant Examiner—C. Chow
`(74) Attorney, Agent, or Firm—Joseph R. Kelly; Westman,
`Champlin & Kelly, RA.
`(57)
`ABSTRACT
`Lae
`.
`.
`.
`The present invention provides a system by which informa-
`tion content data is delivered to a mobile device. The web
` CoMlent
`is divided into data and script information. The
`script information isused to operate on the data to render the
`data in a predetermined format.
`
`34 Claims, 6 Drawing Sheets
`
`CONTENT
`PROVIDER
`12
`
`WIRELESS
`CARRIER 14
`
`COMPUTER 16
`
`DESKTOP
`
`SYNC.
`COMPONENT
`26
`
`SYNC.
`COMPONENT
`28
`
`MODEM| WIRELESS
`RECEIVER 22
`
`MOBILE DEVICE 78
`
`1
`
`SAMSUNG 1015
`
`SAMSUNG 1015
`
`1
`
`

`

`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 1 of 6
`
`US 6,311,058 B1
`
`CONTENT
`PRE
`
`WIRELESS
`CARRIER 14
`
`COMPUTER 16
`
`MODEM] WIRELESS
`RECEIVER 22
`
`DESKTOP
`
`SYNC.
`COMPONENT
`26
`
`SYNC.
`COMPONENT]
`28
`
`MOBILE DEVICE 18
`
`FIG._1
`
`2
`
`

`

`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 2 of 6
`
`US 6,311,058 B1
`
`PROCESSOR
`
`LINK
`
`COMMUNICATION
`
`
`
`43
`
`LI LD LOO OO) CO LI “LO LO OO f-
`
`LO OD OF OF OD OD LO OO OD
`
`
`LD OO ODO ALI Oo
`
`
`FIG._3 eee
`
`3
`
`

`

`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 3 of 6
`
`US 6,311,058 B1
`
`
`
`FIG._4
`
`BYTES
`
`RADIO
`TRANSPORT
`HEADER
`
`GROUP AND
`TOPIC
`FILTERING
`
`ROUTING
`HEADER
`
`|__——PACKET HEADER+—— PACKET DATA>
`
`FIG._7
`
`4
`
`

`

`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 4 of 6
`
`US 6,311,058 B1
`
`: .
`
`= a
`Removable
`"
`Storage
`Optical Drive —
`
` COMPUTER
`
`61
`
`LJ os
`
`Monitor
`
`16
`
`48
`
`Optical
`Disk Drive
`
`Magnetic
`Disk Drive
`
`R
`25
`
`56
`
`Operating
`System 65
`
`Program Module
`67
`67
`
`Application
`Programs 66
`
`Program Data
`68
`
`Serial Port
`Interface
`
`Network
`Adapter
`
`70
`
`
`
`Keyboard
`
`72
`oY [ese
`
`8
`
`4
`
`Mouse
`
`81
`
`Remote
`Computer
`
`79
`
`80
`
`82
`
`FIG._5
`
`5
`
`

`

`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 5 of 6
`
`US 6,311,058 B1
`
`22 26
`
`RADIO
`RECEIVER
`AND DRIVER
`
`SYNC.
`COMPONENT
`
`MODEM 24
`
`
`SCRIPT
`
`
`TEMPLATES
`
`204
`
`DATA
`
`
`
`
`
`MESSAGE
`
`
`ROUTER 270
`
`220
`
`CACHE 206
`
`
`
`
`UNPACKER
`ROUTING
`CACHE
`
`TRANSLATORS
`AND JOINER
`COMPONENT
`MANAGER
`
`
`214
`
`
`212
`216
`208
`
`
`LOADABLE
`TRANSPORT
`
`
`
`CHANNEL
`BROWSER
`218
`
`FIG._6
`
`DISPLAY 45
`
`6
`
`

`

`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 6 of 6
`
`US 6,311,058 B1
`
`WEB
`
`CONTENT 250
`
`Se
`
`a
`
`18
`
`20
`
`x
`
`CACHE 208
`
`E-MAIL 272
`
`ROUTING
`
`COMPONENT
`
`216
`
`212
`
`COMPRESSOR
`260
`
`254
`
`209
`
`DECOMPRESSOR
`270
`
`ENCRYPTOR
`262
`
`ENCODER 264
`
`PACKAGER 256
`
`DECRYPTOR
`268
`
`MESSAGE
`
`ROUTER 210 DECODER 266
`
`UNPACKAGER
`
`
`
`RADIO DRIVER
`AND RECEIVER
`22
`
`RADIO
`TRANSMITTER
`298
`
`FIG._8
`
`7
`
`

`

`US 6,311,058 B1
`
`1
`SYSTEM FOR DELIVERING DATA
`CONTENT OVER A LOW BIT RATE
`TRANSMISSION CHANNEL
`
`CROSS-REFERENCE TO RELATED
`APPLICATION
`
`Reference is hereby made to co-pending U.S. patent
`applications Ser. No. 09/107,941, filed on date herewith,
`entitled CHANNEL DEFINITION ARCHITECTURE
`EXTENSION,Ser. No. 09/107,899, entitled SYSTEM FOR
`EFFICIENT ROUTING AND TRANSLATION OF DATA,
`filed on date herewith; and Ser. No. 09/059,540, entitled
`COMPRESSION INTO ARBITRARY CHARACTER
`
`SETS, filed on Apr. 13, 1998, all of which have been
`assigned to the same assignee as the present invention and
`are fully incorporated by reference herein.
`The present application is based on a provisional appli-
`cation Ser. No. 60/070,720 filed on Jan. 7, 1998 and provi-
`sional application Ser. No. 60/075,123 filed on Feb. 13,
`1998.
`
`BACKGROUND OF THE INVENTION
`
`The present invention relates to personal mobile comput-
`ing devices commonly known as mobile devices. More
`particularly, the present invention relates to a system and
`methodfor delivering and receiving information on a mobile
`device.
`
`Mobile devices are small electronic computing devices
`often referred to as personal digital assistants. Many such
`mobile devices are hand held devices, or palm-size devices,
`which comfortably fit within the hand. One commercially
`available mobile device is sold under the trade name Hand-
`Held PC (or H/PC) having software provided by Microsoft
`Corporation of Redmond, Wash.
`Generally, the mobile device includes a processor, ran-
`dom access memory (RAM), and an input device such as a
`keyboard and a display. The keyboard can be integrated with
`the display, such as where the keyboard is incorporated as a
`touch sensitive display. A communication interface is
`optionally provided and is commonly used to communicate
`with a desktop computer. A replaceable or rechargeable
`battery powers the mobile device. Optionally, the mobile
`device can receive power from an external power sourcethat
`overrides or recharges the built-in battery.
`In some prior applications, the mobile device is used in
`conjunction with a desktop computer. For example, the user
`of the mobile device may also have access to, and use, a
`desktop computer at work or at home, or both. The user
`typically rung the same types of applications on both the
`desktop computer and on the mobile device. Thus,it is quite
`advantageous for the mobile device to be designed to be
`coupled to the desktop computer to exchange information
`with, and share information with, the desktop computer.
`Another technique for providing information to such
`mobile devicesis through a wireless transmission link. Such
`information can include electronic mail or news, weather,
`sports, traffic and local event information. The information
`is typically obtained from a desktop computer connected to
`the Internet and delivered over a wired connection.
`
`However, it may be desirable to deliver such information
`over a wireless connection as well. A wireless receiver on
`the mobile device can act to receive information as it is
`being sent to the mobile device.
`There is presently no reasonable wayto deliver push style
`content (such as hypertext mark-up language (HTML)con-
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`tent provided on a global network such as the internet and
`world wide web) to such devices in a wireless manner and
`in an open and available architecture. The bit rate of con-
`ventional wireless channels is very low. Thus, the delivery
`of very large content (such as HDMLcontent) is highly
`impractical.
`One conventional type of approach to delivering such
`information is to rewrite the content into a device friendly
`format, such as HTML.Thecontentis then obtained over a
`pull-style model. Another approach currently being used to
`deliver information via a wireless medium is a closed model.
`In a closed model, a content provider Can only provide
`content which is written in a format suitable for receipt by
`a specific device implementing a specific type of software.
`This meansthat the vast majority of web content is unavail-
`able for viewing on such devices.
`
`SUMMARYOF THE INVENTION
`
`The present invention provides a system by which infor-
`mation content is delivered to a mobile device. The web
`content is divided into data and script information. The
`script information is used to operate on the data to render the
`data in a predetermined format.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a simplified block diagram illustrating one
`embodiment of a mobile device in a system in accordance
`with the present invention.
`FIG. 2 is a more detailed block diagram of one embodi-
`ment of a mobile device shown in FIG. 1.
`
`FIG. 3 is a simplified pictorial illustration of one emboid-
`ment of the mobile device shownin FIG. 2.
`
`FIG. 4 is a simplified pictorial illustration of another
`embodiment of the mobile device shown in FIG. 2.
`
`FIG. 5 is a block diagram of one embodimentof a desktop
`computer in accordance with one aspect of the present
`invention.
`
`FIG. 6 is a flow diagram illustrating the operation of a
`mobile device in accordance with one aspect of the present
`invention.
`
`FIG. 7 illustrates a general data structure of a packet
`transmitted to the mobile device in accordance with one
`
`aspect of the present invention.
`FIG. 8 is a more detailed flow diagram illustrating a
`routing and translator layer and the preparation of packets
`for transmission in accordance with one aspect of the present
`invention.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`
`FIG. 1 illustrates a system 10 in which the present
`invention isillustratively implemented. System 10 includes
`content provider 12, wireless carrier 14, desktop computer
`16 and mobile device 18. Content provider 12 provides any
`suitable type of data from a database or other data source.
`For example, content provider 12 is discussed hereinafter as
`a provider of internet world wide web content.
`In the
`preferred embodiment, the content is provided in a standard
`format, such as HTML, JPEG, GIF, WAV, etc. The web
`content is also preferably described in a channel definition
`format (CDF)file. A single portion of content (such as a web
`page or a website) is referred to herein as a mobile channel.
`A mobile channel
`is a self describing web site that
`containsall the information necessary for efficient download
`8
`
`8
`
`

`

`US 6,311,058 B1
`
`3
`of web content to mobile device 18. Three components are
`provided in a preferable mobile channel. The components
`include a channeldefinition format (CDF)file, a set of script
`files to render the channel, and a set of data files to be
`rendered. The CDFfiles are described in greater detail in
`co-pending U.S. patent application Ser. No. 09/107,941,
`entitled CHANNEL DEFINITION ARCHITECTURE
`
`EXTENSION,and hereby fully incorporated by reference.
`Briefly, the CDFis an inventory of content contained on the
`mobile channel.
`
`The script files contain script which defines templates
`which specify the appearance of the data on the screen of
`mobile device 18. Scripts are preferably written in visual
`basic script (VBS).
`The data files correspond to one or morescript files and
`include data whichis indicative of the substantive content of
`
`the channel to be rendered. The data is packaged in small
`and simple text files. All of this information is used to define
`web content.
`
`Wireless carrier 14 is described in greater detail later in
`the application. Briefly, however, wireless carrier 14 is
`configured to receive web content from the web content
`provider 12 via dial-up or direct internet connection, or a
`network connection. Wireless carrier 14 also includes a
`
`wireless push server 20. Server 20 splits the content received
`from content provider 12 into pieces which are compatible
`with the particular type of transport being used by wireless
`carrier 14. For instance, server 20 may split the data such
`that it conforms to maximum packet size constraints, char-
`acter set requirements, etc. for the channel type or transport
`type being used. Prior to transmission, the data is preferably
`translated to a different form. As is described in greater detail
`later in the application, such translation may include
`compression, encryption, encoding and then packaging.
`Once the data has been split appropriately such that
`it
`conforms to the transport constraints, the data is then con-
`figured for transmission over the air through a wireless
`network (such as through a paging channel) to be received
`directly on mobile device 18. The transmitted data is
`received by a wireless receiver and driver component 22 on
`mobile device 18 where the data is prepared for use by
`mobile device 18.
`
`Mobile device 18 also preferably includes a modem 24.
`Thus, rather than being transmitted through wireless carrier
`14, the web content can be transmitted directly from web
`content provider 12 through a direct dial-up modem con-
`nection to mobile device 18.
`
`Desktop computer 16 will also be described in greater
`detail later in the specification. Briefly, however, desktop
`computer 16 is preferably provided with a standard web
`browser, such as Internet Explorer 4.0 commercially avail-
`able from the Microsoft Corporation of Redmond, Wash.
`That being the case, the users of desktop 16 can preferably
`subscribe to channels in a standard fashion which provide
`the user with certain channel content which can be browsed
`
`off-line or on-line. Desktop computer 16 is preferably pro-
`vided with a loadable transport (in accordance with one
`aspect of the present invention) that accessesthe script files
`and acts on the corresponding data file (in accordance with
`the script) to render the content where desktop computer 16
`renders the data. Desktop computer 16,
`through the
`transport, can periodically retrieve or receive new and
`updated script, data and CDFfiles either for further trans-
`mission to mobile device 18 or simply for rendering the data.
`The script, data and CDF files can be transmitted either
`together or independently of one another. Since scripting
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`files typically need updating much less frequently than the
`data files, this provides the user with the ability to view the
`web content on the desktop (off-line) while requiring only
`small amounts of bandwidth for incremental updating of the
`datafiles.
`
`Desktop computer 16 also preferably includes synchro-
`nization component 26. Briefly, synchronization component
`26 is configured to interact with a similar synchronization
`component28 on mobile device 18 such thatfiles which are
`the subject of synchronization can be synchronized from
`desktop computer 16 to mobile device 18, or vice versa.
`Once synchronized, both files (those on computer 16 and
`mobile device 18) contain up to date information.
`More specifically, mobile device 18,
`in the preferred
`embodiment, can be synchronized with either desktop com-
`puter 16, or another mobile device 18, or both. In that
`instance, properties of objects stored in an object store on
`mobile device 18 are similar to properties of other instances
`of the same object stored in an object store on desktop
`computer 16 or another mobile device 18. Thus,
`for
`example, when a user changes one instance of an object
`stored in an object store on desktop computer 16, the second
`instance of that object in the object store of mobile device 18
`is updated the next time mobile device 18 is connected to
`desktop computer 16 so that both instances of the same
`object contain up-to-date data. This is referred to as syn-
`chronization.
`
`In order to accomplish synchronization, synchronization
`components 26 and 28 run on both mobile device 18 and
`desktop computer 16 (or another mobile device 18). The
`synchronization components communicate with one another
`through well defined interfaces to manage communication
`and synchronization.
`Mobile device 18 is also preferably provided with a script
`interpreter which, in one preferred embodiment, is the same
`as or similar to the loadable transport on desktop computer
`16. Such a transport may be, for example, a down-sized
`visual basic interpreter, which receives and interprets the
`formatting script. The script is associated with a certain data
`file (typically a text file) that holds the raw data for the web
`content. Thus,
`the script interpreter operates on the data
`associated with a given script to provide a rendering of the
`web content to the user of mobile device 18.
`
`Byseparating the script from the data in the web content,
`web content can be transmitted to mobile device 18 over
`
`very low bit rate channels. The script will only typically
`need to be transmitted very infrequently. Also, since an
`individualfile is typically much smaller than the scriptfiles,
`the data can be updated quite frequently, giving the user of
`mobile device 18 updated web content information, without
`transmitting new script. Thus, the separation of the script
`and data allows the transmission of web content information
`
`in a very efficient manner over low bit rate channels.
`It is worth noting that, in the preferred embodiment, while
`mobile device 18 can be coupled to desktop computer 16, it
`can be also coupled to another mobile device 18. This
`connection can be made using any suitable, and commer-
`cially available, communication link and using a suitable
`communications protocol. For instance,
`in one preferred
`embodiment, mobile device 18 communicates with either
`desktop computer 16 or another mobile device 18 with a
`physical cable which communicates using a serial commu-
`nications protocol. Other communication mechanisms are
`also contemplated by the present invention, such as infra-red
`CR) communication or other suitable communication
`mechanisms.
`
`9
`
`9
`
`

`

`US 6,311,058 B1
`
`5
`FIG. 2 is a more detailed block diagram of mobile device
`18. Mobile device 18 preferably includes microprocessor 30,
`memory 32,
`input/output (I/O) components 34, desktop
`communication interface 36 wireless receiver 37 and
`antenna 39. In a preferred embodiment, these components of
`mobile 10 are coupled for communication with one another
`over a suitable bus 38.
`
`Memory 32 is preferably implemented as non-volatile
`electronic memory such as random access memory (RAM)
`with a battery back-up module (not shown) such that infor-
`mation stored in memory 32 is not lost when the general
`power to mobile device 18 is shut down. A portion of
`memory 32 is preferably allocated as addressable memory
`for program execution, while another portion of memory 32
`is preferably used for storage, such as to simulate storage on
`a disc drive.
`
`Memory32 includes operating system 40, an application
`program 42 (such as a personal information manager or
`PIM) as well as an object store 44. During operation,
`operating system 40 is preferably executed by processor 30
`from memory 32. Operating system 40, in one preferred
`embodiment,
`is a Windows CE brand operating system
`commercially available from Microsoft Corporation. The
`operating system 40 is preferably designed for mobile
`devices, and implements database features which can be
`utilized by PIM 42 through a set of exposed application
`programming interfaces and methods. The objects in object
`store 44 are preferably maintained by PIM 42 and operating
`system 40, at
`least partially in response to calls to the
`exposed application programming interfaces and methods.
`1/O components 34,
`in one preferred embodiment, are
`providedto facilitate input and output operations from a user
`of mobile device 18. I/O components 34 are described in
`greater detail with respect to FIGS. 3 and 4.
`Desktop communication interface 36 is optionally pro-
`vided as any suitable communication interface. Interface 36
`is preferably used to communicate with desktop computer
`16, content provider 12, wireless carrier 14 and optionally
`another mobile device 18, as described with respect to FIG.
`1. Thus, communication interface 36 preferably includes
`synchronization components 28 for communicating with
`desktop computer 16 and modem 24 for communicating
`with content provider 12. Wireless receiver and driver 22 are
`used for communicating with wireless carrier 14.
`FIG. 3 is a simplified pictorial illustration of one preferred
`embodiment of a mobile device 10 which can be used in
`
`accordance with the present invention. Mobile device 10, as
`illustrated in FIG. 3, can be a desktop assistant sold under
`the designation H/PC having software provided by the
`Microsoft Corporation.
`In one preferred embodiment,
`mobile device 18 includes a miniaturized keyboard 43,
`display 45 and stylus 46. In the embodiment shown in FIG.
`3, display 45 is a liquid crystal display (LCD) which uses a
`contact sensitive display screen in conjunction with stylus
`46. Stylus 46 is used to press or contact the display 45 at
`designated coordinates to accomplish certain user input
`functions. Miniaturized keyboard 43 is preferably imple-
`mented as a miniaturized alpha-numeric keyboard, with any
`suitable and desired function keys which are also provided
`for accomplishing certain user input functions.
`FIG. 4 is another simplified pictorial illustration of the
`mobile device 18 in accordance with another preferred
`embodiment of the present invention. Mobile device 18, as
`illustrated in FIG. 4, includes some items which are similar
`to those described with respect to FIG. 3, and are similarly
`numbered. For instance, mobile device 18, as shown in FIG.
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`4, also includes touch sensitive screen 45 which can be used,
`in conjunction with stylus 46, to accomplish certain user
`input functions. It should be noted that the display 45 for the
`mobile device as shown in FIGS. 3 and 4 can be the same
`size as one another, or different sizes from one another, but
`would typically be much smaller than a conventional display
`used with a desktop computer. For example, displays 45
`shown in FIGS. 3 and 4 may be defined by a matrix of only
`240x320 coordinates, or 160x160 coordinates, or any other
`suitable size.
`The mobile device 18 shown in FIG. 4 also includes a
`numberof user input keys or buttons (suchas scroll buttons
`47) which allow the user to scroll through menu options or
`other display options which are displayed on display 45, or
`which allow the user to change applications, without con-
`tacting display 45. In addition, the mobile device 18 also
`shownin FIG. 4 also preferably includes a power button 49
`which can be used to turn on andoff the general power to the
`mobile device 18.
`
`It should also be noted that, in the embodimentillustrated
`in FIG. 4, mobile device 18 includes a hand writing area 51.
`Hand writing area 51 can be used in conjunction with stylus
`46 such that the user can write messages whichare stored in
`memory 42 for later use by the mobile device 18. In one
`illustrative embodiment,
`the hand written messages are
`simply stored in hand written form and can be recalled by
`the user and displayed on the display screen 45 such that the
`user can review the hand written messages entered into the
`mobile device 18. In another preferred embodiment, mobile
`device 18 is provided with a character recognition module
`such that the user can enter alpha-numeric information into
`mobile device 18 by writing that alpha-numeric information
`on area 51 with stylus 46. In that instance, character recog-
`nition module in the mobile device 18 recognizes the
`alpha-numeric characters and converts the characters into
`computer recognizable alpha-numeric characters which can
`be used by the application programs 42 in mobile device 18.
`FIG. 5 and the related discussion are intended to provide
`a brief, general description of a suitable desktop computer
`16 in which portions of the invention may be implemented.
`Although not required, the invention will be described, at
`least in part, in the general context of computer-executable
`instructions, such as program modules, being executed by a
`personal computer 16 or mobile device 18. Generally, pro-
`gram modules include routine programs, objects,
`components, data structures, etc.
`that perform particular
`tasks or implementparticular abstract data types. Moreover,
`those skilled in the art will appreciate that desktop computer
`16 may be implemented with other computer system
`configurations,
`including multiprocessor systems,
`microprocessor-based or programmable consumer
`electronics, network PCs, minicomputers, mainframe
`computers,and the like. The invention mayalso be practiced
`in distributed computing environments where tasks are
`performed by remote processing devices that are linked
`through a communications network. In a distributed com-
`puting environment, program modules may be located in
`both local and remote memory storage devices.
`With reference to FIG. 5, an exemplary system for imple-
`menting desktop computer 16 includes a general purpose
`computing device in the form of a conventional personal
`computer 16,
`including processing unit 48, a system
`memory 50, and a system bus 52 that couples various system
`components including the system memory 50 to the pro-
`cessing unit 48. The system bus 52 may be any of several
`types of bus structures including a memory bus or memory
`controller, a peripheral bus, and a local bus using any of a
`10
`
`10
`
`

`

`US 6,311,058 B1
`
`7
`variety of bus architectures. The system memory 50 includes
`read only memory (ROM) 54 a random access memory
`(RAM)55. A basic input/output system (BIOS) 56, contain-
`ing the basic routine that helps to transfer information
`between elements within the desktop computer 16, such as
`during start-up, is stored in ROM 54. The desktop computer
`16 further includes a hard disk drive 57 for reading from and
`writing to a hard disk (not shown) a magnetic disk drive 58
`for reading from or writing to removable magnetic disk 59,
`and an optical disk drive 60 for reading from or writing to
`a removable optical disk 61 such as a CD ROM orother
`optical media. The hard disk drive 57, magnetic disk drive
`58, and optical disk drive 60 are connected to the system bus
`52 by a hard disk drive interface 62, magnetic disk drive
`interface 63, and an optical drive interface 64, respectively.
`The drives and the associated computer-readable media
`provide non-volatile storage of computer
`readable
`instructions, data structures, program modules and other
`data for the desktop computer 16.
`Although the exemplary environment described herein
`employs a hard disk, a removable magnetic disk 59 and a
`removable optical disk 61, it should be appreciated by those
`skilled in the art that other types of computer readable media
`which can store data that is accessible by a computer, such
`as magnetic cassettes, flash memory cards, digital video
`disks (DVDs), Bernoulli cartridges, random access memo-
`ries (RAMs), read only memory (ROM),and the like, may
`also be used in the exemplary operating environment.
`Anumberof program modules may be stored on the hard
`disk, magnetic disk 59, optical disk 61, ROM 54 or RAM 55,
`including an operating system 65, one or more application
`programs 66 (which may include PIMs), other program
`modules 67 (which may include synchronization component
`26), and program data 68. A user may enter commands and
`information into the desktop computer 16 through input
`devices such as a keyboard 70, pointing device 72 and
`microphone 74. Other input devices (not shown) may
`include a joystick, game pad,satellite dish, scanner, or the
`like. These and other input devices are often connectedto the
`processing unit 48 through a serial port interface 76 that is
`coupled to the system bus 52, but may be connected by other
`interfaces, such as a sound card, a parallel port, game port
`or a universal serial bus (USB). A monitor 77 or other type
`of display device is also connected to the system bus 52 via
`an interface, such as a video adapter 78. In addition to the
`monitor 77, desktop computers may typically include other
`peripheral output devices such as speaker 75 andprinters.
`The desktop computer 16 may operate in a networked
`environment using logic connections to one or more remote
`computers (other than mobile device 18), such as a remote
`computer 79. The remote computer 79 may be another
`personal computer, a server, a router, a network PC, a peer
`device or other network node, and typically includes many
`or all of the elements described above relative to desktop
`computer 16, although only a memory storage device 80 has
`been illustrated in FIG 4. The logic connections depicted in
`FIG. 4 include a local area network (LAN) 81 and a wide
`area network (WAN) 82. Such networking environments are
`commonplacein offices, enterprise-wide computer network
`intranets and the Internet.
`
`When used in a LAN networking environment, the desk-
`top computer 16 is connected to the local area network 81
`through a network interface or adapter 83. When used in a
`WAN networking environment,
`the desktop computer 16
`typically includes a modem 84 or other meansfor establish-
`ing communications over the wide area network 82, such as
`the Internet. The modem 84, which may be internal or
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`external, is connected to the system bus 52 viathe serial port
`interface 76. In a network environment, program modules
`depicted relative to desktop computer 16, or portions
`thereof, may be stored in the remote memory storage
`devices. It will be appreciated that the network connections
`shown are exemplary and other means of establishing a
`communications link between the computers may be used.
`Desktop computer 16 runs operating system 65 that is
`typically stored in non-volatile memory 54 and executes on
`the processor 48. One suitable operating system is a Win-
`dows brand operating system sold by Microsoft
`Corporation, such as Windows 95 or WindowsNT, operat-
`ing systems, other derivative versions of Windows brand
`operating systems, or another suitable operating system.
`Other suitable operating systems include systems suchas the
`Macintosh OSsold from Apple Corporation, and the OS/2
`Presentation Manager sold by International Business
`Machines (IBM) of Armonk, N.Y. Application programsare
`preferably stored in program module 67, in volatile memory
`or non-volatile memory, or can be loaded into any of the
`components shown in FIG. 5 from a floppy diskette 59,
`CDROMdrive 61, downloaded from a network via network
`adapter 83, or loaded using another suitable mechanism.
`A dynamically linked library (DLL), comprising a plu-
`rality of executable functions is associated with PIMsin the
`memory for execution by processor 48. Interprocessor and
`intercomponent calls are facilitated using the component
`object model (COM)as is commonin programs written for
`Microsoft Windowsbrand operating systems. Briefly, when
`using COM,a software component such as a DLL has a
`numberof interfaces. Each interface exposes a plurality of
`methods, which can be called individually to utilize different
`services offered by the software component. In addition,
`interfaces are provided such that methods or functions can
`be called from other software components whichoptionally
`receive and return one or more parameter arguments.
`In general, the DLL associated with the particular PIM is
`designed specifically to work in conjunction with that PIM
`and to expose desktop synchronization interfaces that func-
`tion as described in more detail above according to a
`synchronization protocol. The DLL, in turn,calls interfaces
`exposed by the PIM in order to access data representing
`individual properties of objects maintained in an object
`store. The object store 6, of course, can reside in any one of
`the suitable memory components described with respect to
`FIG. 4.
`
`ARCHITECTURE BLOCK DIAGRAM
`
`FIG. 6 is a block diagram illustrating the functional
`architecture of mobile device 18. FIG. 6 showssimilar items
`to those previously shownin the specification. Similar items
`are similarly numbered. FIG. 6 illustrates that mobile device
`18 receives web content information either via synchroni-
`zation component 26, wireless receiver (radio receiver and
`driver) 22 or modem 24. In any of those cases, the CDFfiles
`as well as the script templates and data files, indicated by
`blocks 202 and 204 are eventually provided to cache
`memory 206. Where the web content information is received
`through synchronization component 26, the script templates
`and data files may are not be encrypted or encoded or
`otherwise formatted in the same fashion as they are for
`transmission over a wireless or

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