`
`lntellectuelle
`du Canada
`Un organisme
`d'lndustrie Canada
`
`Canadian
`Intellectual Property
`Office
`An agency of
`Industry Canada
`
`CA 2493196 C 2009/09/22
`
`(11)(21) 2 493 196
`(12i BREVET CANADIEN
`CANADIAN PATENT
`(13) C
`
`(86) Date de depot PCT/PCT Filing Date: 2003/07/23
`(87) Date publication PCT/PCT Publication Date: 2004/01/29
`(45) Date de delivrance/lssue Date: 2009/09/22
`(85) Entree phase nationale/National Entry: 2005/01/21
`(86) N° demande PCT/PCT Application No.: CA 2003/001104
`(87) N° publication PCT/PCT Publication No.: 2004/010306
`(30) Priorite/Priority: 2002/07/23 (US60/397,621)
`
`(51) Cl.Int.lint.Cl. GOBF 12/02(2006.01),
`GOBF 12/12(2006.01), HO4W 88/02(2009.01),
`GOBF 15/02(2006.01)
`(72) lnventeurs/lnventors:
`KLASSEN, GERHARD D., CA;
`MAURICE, ROBBIE J., CA
`
`(73) Proprietaire/Owner:
`RESEARCH IN MOTION LIMITED, CA
`
`(74) Agent: BORDEN LADNER GERVAIS LLP
`
`(54) Titre : SYSTEME DE GESTION DE MEMOIRE DE DON NEES ET PROCEDE DESTINE A DES APPAREi LS SANS
`FIL
`(54) Title: DATA STORE MANAGEMENT SYSTEM AND METHOD FOR WIRELESS DEVICES
`
`TO WI RE LESS NE OORK
`
`TO PC
`
`66
`
`WIRELESS
`TRANSCEIVER
`
`68
`
`SERIAL/USS
`PORT
`
`60
`
`MESSAGING
`SYSTEM
`
`62
`
`BROWSER
`
`64
`
`56
`
`OATA STORE
`MANAGEMENT
`SYSTEM
`
`I
`f-------+---l _____________ __j_~
`
`l
`
`TO OTHER
`DEVICE+---~
`SYSTEMS
`MOBILE OEVICE
`
`42
`
`50
`
`(57) Abrege/Abstract:
`In accordance with the teaching described herein, systems and methods are provided for managing memory space in a mobile
`device (50). A plurality of data storage locations (44, 46, 48, 52, 54) may be included. A plurality of software applications may be
`
`dl • I
`ana a http://opic.gc.ca · Ottawa-Hull KIA OC9 · http://cipo.gc.ca
`C
`
`OPIC · CIPO 191
`
`0 PI C
`
`CI P 0
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. i
`
`
`
`CA 2493196 C 2009/09/22
`(11)(21) 2 493 196
`(13) C
`
`(57) Abrege(suite)/Abstract(continued):
`included, with each software application being operable to store data to a different data storage location (44, 46, 48, 52, 54). A data
`store management system (56) may be operable to access and delete data stored in the plurality of data storage locations (44, 46,
`48, 52, 54 ). If insufficient memory space is available in one of the data storage locations, then the data store management system
`(56) may access the one data storage location and at least one other data storage location and delete data from at least one of the
`accessed data storage locations.
`
`-2-
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. ii
`
`
`
`
`
`(12)INTERNATIONAL APPLICATION PUBLISHED UNDER THE PATENT COOPERATION TREATY (PCT)
`
`
`
`
`
`
`
`CA 02493196 2005-01-21
`
`(19)World Intellectual Property
`
`Organization
`
`Tntenrnliorrnl Bure;iu
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`11111111111111111111111 1111111111111111 IIIIII IIIII 1111111111111111111111111111111111111111 lllll
`
`(43)International Publication Date
`
`
`29 January 2004 (29.01.2004)
`PCT
`
`
`
`
`
`(10)International Publication Number
`
`
`
`WO 2004/010306 Al
`
`7
`
`
`
`
`
`(25)Filing Language:
`
`
`
`(26)Publication Language:
`
`
`(51)International Patent Classification
`
`: G06.F 12/12,
`(72)lnYentors; and
`
`
`
`
`
`H04M 1/725, 1/2745, G06F 12/02. 12/08. 1/26, H04M
`
`(75)Tnvenlors/Applinrnts (for US only): KLASSEN, Ger
`1/73
`
`
`
`
`OnPlace, Waterloo, hard, D. [CA/CJ\[; 510 Ileatherhill
`
`tario N2T IH7 (CA). MAURICE, Rohhie, J. [CA/CA];
`
`
`
`597 Winterburg Walk, Waterloo, Ontmio N2V 2M8 (CA).
`
`(21)Tnlernalional Application Number:
`l'CT/CJ\2003/001104
`(74)Agents: ARMSTRONG, Craig, R. ct al.: Borden Ladner
`
`
`
`
`
`Gervais l J,P. 1100-100 Queen Street, Ottawa, Ontario KIP
`Dale: 2'.l Julv 2003 (21.07.2003)(22)Tnlernalional Filing
`119 (CA).
`ATI, AG, AL, Al'vL AT, AU,(81)Designated States (naliunul):
`
`
`English
`J\Z, HJ\. HH. HG. HR, HY, HZ. CJ\. CH. ( '.N, CO, CR, Cl I,
`CZ. DTI. DK, DM, DZ, TIC, TIE. TIS, TT, GB, GD, GTI, GIT,
`English
`GM. HR. HU, lD. lL. lN, lS. JP. KE, KG, KP. KR. KZ, LC,
`LK, LR. LS. LT, UT. LV, MA, MD. MG, MK. lvIN, MW,
`
`(30)Priority Data:
`MX.MZ. NO. NZ. OM, PH. PL, vr. RO. RU, SC, SD. SE,
`US
`60/397,621
`23 July 2002 (23.07.2002)
`SG. SK. SL, TT. TM. TN. TR. TT, TZ, UA, UG, US, UZ,
`VC, VN, YU, ZA, ZM. Z\V.
`(for all tfp.1·ignit1Pti SJa/Ps P.ffPf'' llS): (71)Applicant RE
`
`
`
`
`[Ci\/CA[: 295 Phillip
`,'\Rll'O patent (Gll. GM,(re;.:ional):
`SEARCH 1N MOTION LlMlTED
`
`(84)Designated States
`
`KE, LS, MW MZ, SD. SL. SZ. TZ, UG. ZM. ZWI,
`
`
`
`Street, \Vaterloo, Ontario N2L 1W8 (CA).
`
`
`
`[ContinuPtl on nPxl pagce]
`
`-- =
`
`
`
`=
`
`-
`
`
`_ (54) Title:
`
`DATA STORE l\it'\N,'\GEMENT SYSTEM J\ND METHOD FOR WIRELESS DEVICES
`
`ln accordance with the teaching described
`
`
`(57) Abstract:
`
`
`
`herein, systems and methods are provided [or rnanagi ng
`
`memory space in a mobile device (50). A plurality of data
`
`
`
`storage locations (44. 46, .. J.8. 52, 54) may he included. A
`
`
`
`plurality of softwmc applications may be included, with
`
`
`
`each sortware application heing operable to store data to
`
`
`
`a different data storage location (44. 46, 48, 52. 54). A
`
`
`data store management system (56) may he operable to
`
`
`
`
`access and delete data stored in the plurality of data storage
`
`
`locations (44. 46, 48, 52. 54). If insufficient memory space
`
`
`
`is available in one of the data storage locations, then the
`
`data store management system (56) may access the one
`
`
`data storage location and at least one other data storage
`
`
`location and delete data from at least one of the accessed
`
`data storage locations.
`
`
`
`TO WIRELESS NETWORK
`
`10 PC
`
`66
`
`WIRELESS
`TRANSCEIVER
`
`68
`
`60
`
`62
`
`64
`
`--
`
`-
`
`-
`
`-
`
`--
`
`-=
`
`
`=
`
`- =
`
`
`
`56
`
`DATA STORE
`MANAGEMENT
`SYSTEM
`
`·-·-·---·-······················_J�
`
`- --
`
`TO OTHER
`DEVICE .,_ ___ _,
`
`
`SYSTEMS MOBILE DEVICE
`
`42
`
`so
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. iii
`
`
`
`CA 02493196 2005-01-21
`
`
`
`
`
`
`WO 2004/010306 Al
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`1111111111111111 IIIIII IIIII 1111111111111111111111111111111111111111 lllll 11111111111111111111111
`
`Eurasian patent (AM. AZ. BY, KG, KZ, MD. RU, T.T, TM\
`
`(J\l. BE. BG. CH. CY. CZ, DE, DK. EE,
`
`European patent
`TIS. A, FR. GB, GR, HU. TTI. TT. LU, MC NL. PT, RO,
`(Bl', BJ. CF, CG, CL CM,
`SU. SI, SK. TR), OJ\l'l patent
`GA, GN, GQ. GW, ML, MR. NE. SN, TD, TG).
`
`JP, KfC, KG, KP, KR, K7, re, IX /,R, rs. rT, UJ, n: MA,
`MlJ, 1\IJC, MK, MN, 1vlH'. MX, ML, NO, NZ, OlVJ, PH, PL,
`PT, RO, Rf I, SC, SD, SfC, SG, SK, SL, T.f, TM. TN, TR. TT,
`
`'JZ, LIA, UC, UL, \IC, \IN, YU, Li. ZM, ZIV, ,1R//'0 patent
`(GH, GM, KfC, rs. MW, M7, SD, sr, S7, T7, f!G, 7J'vl, ZW),
`Eurasian patent (liM, 11Z. BY, KG, KZ. MD, RU, Tl, TM),
`Declarations under Rule 4.17:
`
`
`J-:uropPan patmr (.-H; BJ,;, BG, CH, CY, CZ, l)F, l)K, f,,F,
`
`
`as to applicant's entitlement to apply for and be irantcd
`ES, Fl. FR, GB, GR. JIU, IE, IT. LU, MC. NL. l'T. RO, SE,
`tlw J,,!loning
`
`
`
`"pa!Nll (Ruf,-4. /7/ii)jf,,r ,1,,-,,ignations AFC,
`BJ, Cr; CU, Cl, C,',;[, CiA, c;N,
`SI, SK, TR), OAPlpatf'nt(BJ-;
`11G, LiL. liM, Lil; ,1U, ,1Z, B,1, BB, BG, BR, BY, BZ, C1,
`GQ, CH-'. 1WL. 1WR, NE, SN. TD. TC!
`( 'H, CN, CO, CR, CU, CZ, /JI:', DK, DM. IJZ, hC, hi'., 1c·s,
`
`
`ofinvcntorship (Ruic 4.17(iv))for US only
`Fl. GB, GD, GE, GII. Gk!, IIR, IIU, ID, IL. IN, JS, JI', KE,
`K(i, KP. KR, KZ, IF, IX LR, rs, u; LU, IY iv/A, Jv//), M(i,
`Published:
`MK. MN. ivl\V. MX. MZ. NO, NZ. OM, !'II. l'L. l'T. RO. RU,
`with internalional ffan:h report
`
`'JN, 'JR, n; lZ, LIA UC,
`SC, SlJ, Sii, SC, SK. SL, Tl, li\11,
`before the expiration of the time limit for amending the
`
`
`l/7, VC, VN, Yll, 7A, 7M, 7\V, AR/PO palelll (Cl!, GJ'vl,
`
`
`
`claim.,· illld lo lw n1puhli.1h('{I in tlw nPnl of rPr:eipl of
`SL, SL. lZ, UC, Zi'vl,
`Kli. LS, MW 1\IJZ. SD,
`ZW). t:urasian
`amendments
`palent (AM, A7, RY, KG, K7, 1WD, Rl!, Tl, TM), fCuropean
`patent (,11; Bt:, BG, CH, CY, CZ, Dt:, DK, lit,, t,·s, Fl, FR,
`GR, GR, Hf!, lfC, IT. Ur, MC. NI,, PT, RO, SE, SI, SK, TR!,
`For nvo-lf'trrr codf's and orhrr abbrf'riations, rf'jcr to thf' "Guid
`
`
`
`Gil'! patent (BF, BJ, CF, CG, Cl, CM, C A GN, GQ, Gtt'.
`
`
`
`,mr:e Nole.,· on t(}{lP.1 ,md Ahh,n:ialiow·" appnuing al 1/ze /J,,-gin
`Mr, MR, NF, SN, J'I), l'U)
`
`ning of'cach rctular issue of'the PCT Ca;:,cttc.
`
`
`
`as lo the applicant's entitlemellt to claim the priarity of'tlze
`
`
`
`
`ParliPr applirarirm ( Rufp 4.17( iii)) for thP following dPsig
`
`nalians 1iE, ,iG, LiL. ,1M. ,1T. 1iU. ,1Z. B A BB, BG, BR. B1'.
`BL. CA, CH, CN, CO, CR, CU. CZ, Dt,; DK, DM. lJL, t,C,
`EfC, fCS, Fl, GR, GD, GfC, Gil, Gi'vl, IIR, II[!, m, //,, IN, IS,
`
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. iv
`
`
`
`WO 2004/010306
`
`PCT/CA2003/001104
`
`CA 02493196 2005-01-21
`
`DATA STORE MANAGEMENT SYSTEM AND
`
`METHOD FOR WIRELESS DEVICES
`
`
`
`TECHNICAL FIELD
`
`5
`
`
`
`The technology described in this patent document relates generally to the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`field of data stores. More particularly, the patent document describes a data store
`
`
`
`management system arid method that is particularly well-suited for use with a
`
`
`
`
`
`mobile communication device, such as a wireless two-way messaging device, a
`
`
`
`
`
`
`
`
`
`
`
`cellular telephone, a personal digital assistant (PDA), or other mobile
`
`
`
`
`
`
`
`
`
`
`
`
`
`10 communication device having limited memory space.
`
`
`
`BACKGROUND ART
`
`
`
`
`
`
`
`
`
`Known mobile communication devices typically have limited memory space
`
`relative to personal computers (PCs). PCs, including laptop and desktop
`
`
`
`or example, normally have at least tens of megabytes (Mb) of random
`
`
`
`
`
`
`
`15 computers, f
`
`
`
`
`
`access memory (RAM) in addition to gigabytes of other storage, such as one or
`
`more hard disk drives. However, due mainly to power supply and phy�ical space
`
`
`
`
`
`
`
`
`
`limitations, mobile communication devices are typically provided with much less
`
`
`
`
`
`
`
`
`
`memory than PCs. Due to the limited memory resources on a typical mobile
`
`
`
`20 communication device, enhanced device applications, such as electronic
`
`
`
`
`
`
`
`messaging, web browsing, calendar management, and the like, may quickly
`
`
`
`
`
`exhaust available memory space. Thus, typical mobile communication devices
`
`
`
`
`
`
`
`
`
`often employ memory management functions to make better use of available
`
`
`
`
`
`memory resources. For example, when additional memory space is require in a
`
`
`
`
`
`memory management system 25 typical mobile communication device, the device's
`
`
`
`
`
`may delete oldest or least-used data from memory to make room for new
`
`
`information.
`
`
`
`DISCLOSURE OF INVENTION
`
`30
`
`
`
`
`
`
`
`
`
`In accordance with the teaching described herein, systems and methods
`
`
`
`
`
`are provided for managing memory space in a mobile device. A plurality of data
`
`
`
`
`
`storage
`
`may be
`locations may be included. A plurality of software applications
`
`
`
`included, with each software application being operable to store data to a different
`
`1
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 1
`
`
`
`CA 02493196 2008-10-20
`
`
`
`
`
`data storage location. A data store management system may be operable to
`
`
`
`
`
`
`
`
`
`access and delete data stored in the plurality of data storage locations. If
`
`
`
`
`
`
`
`insufficient memory space is available in one of the data storage locations, then
`
`
`
`
`
`
`
`
`
`the data store management system may access the one data storage location and
`
`
`
`
`
`
`
`at least one other data storage location and delete data from at least one of the
`
`
`
`
`
`accessed data storage locations.
`
`
`
`
`
`In one aspect of the invention, there is provided a system for managing
`
`
`
`
`
`
`
`memory space in a mobile device, comprising: a plurality of data storage
`
`
`
`locations; a plurality of software applications, each software application being
`
`
`
`
`
`
`
`
`
`
`
`
`
`operable to store data files to a different storage location; and a data store
`
`
`
`management system configured to access and delete data files in the plurality of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`data storage locations, the data store management system providing a pluralit
`
`y of
`
`
`
`memory retention algorithms, wherein one of the plurality of memory retention
`
`
`
`
`
`
`
`
`
`algorithms is selected by a user to determine a criteria used to select data files for
`
`
`
`
`
`
`
`
`
`
`
`deletion from the plurality of data storage locations, the data store management
`
`
`
`
`
`
`
`
`
`system further providing a plurality of control levels, the plurality of control levels
`
`
`
`
`
`
`
`
`
`
`
`providing threshold levels for selecting data files for deletion according to the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`selected memory retention algorithm, wherein a control level is selected to set a
`
`
`
`
`
`
`
`threshold level for the selected memory retention algorithm so data files at or
`
`
`
`
`
`
`
`
`
`above the threshold level are deleted, wherein the data store management system
`
`
`
`
`
`is further configured to receive an initial control level and delete one or more data
`
`
`
`
`
`
`
`files according to the initial control level and the selected memory retention
`
`
`
`
`
`
`
`
`
`
`
`algorithm, and if sufficient memory space is not available after deleting data files
`
`
`
`
`
`
`
`according to the initial control level and the selected memory retention algorithm,
`
`
`
`
`
`
`
`
`
`then increment the initial control level and delete one or more additional data files
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`according to the incremented control level, wherein the threshold level associated
`
`
`
`
`
`
`
`with the control level becomes progressively lower as the selected control level is
`
`
`
`
`
`incremented.
`
`
`
`In another aspect, there is provided a computer implemented method for
`
`
`
`
`
`
`
`
`
`
`
`managing memory space in a mobile device, comprising: storing data flies in
`
`
`
`
`
`
`
`
`
`memory; selecting one of a plurality of memory retention algorithms for deleting
`
`
`
`
`
`2
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 2
`
`
`
`CA 02493196 2008-10-20
`
`
`
`sufficient data in memory to yield sufficient free memory space in the memory;
`
`
`
`
`
`and setting a control level to provide a threshold level used by the selected
`
`
`
`
`
`
`
`memory retention algorithm to select data files for deletion according to the
`
`
`
`
`
`
`
`
`
`
`
`selected memory retention algorithm, wherein the control level is selected to set
`
`
`
`
`
`
`
`
`
`
`
`the threshold level for the selected memory retention algorithm so data files at or
`
`
`
`
`
`above the threshold level are deleted; receiving an initial control level; deleting
`
`
`
`
`
`
`
`
`
`
`
`
`
`one or more data files according to the initial control level and the selected
`
`
`
`
`
`
`
`memory retention algorithm; determining if sufficient free memory space is
`
`
`
`
`
`
`
`
`
`available; and if sufficient free memory space is not available after deleting data
`
`
`
`
`
`
`
`files according to the initial control level and the selected memory retention
`
`
`
`
`
`
`
`
`
`algorithm, then incrementing the initial control level and deleting one or more
`
`
`
`
`
`
`
`
`
`
`
`
`
`additional data files according to the incremented control level and the selected
`
`
`
`
`
`
`
`
`
`
`
`
`
`memory retention algorithm, wherein the threshold level associated with the
`
`
`
`
`
`control level becomes progressively lower as the control level is incremented.
`
`
`
`
`
`
`
`BRIEF DESCRIPTION OF DRAWINGS
`
`
`
`Fig. 1 is a block diagram of a communication system in which a mobile
`
`
`
`
`
`communication device may be configured to operate;
`
`
`
`
`
`Fig. 2 is a block diagram illustrating
`
`a transfer of a data item to a mobile
`
`
`
`communication device;
`
`
`
`Fig. 3 is a block diagram of a mobile communication device with an
`
`
`
`example data store management system;
`
`
`
`
`
`Fig. 4 is a flow diagram illustrating an example method of managing data
`
`
`
`
`
`
`
`stores;
`
`
`
`Fig. 5 is a diagram illustrating an example operation of a data store
`
`
`
`
`
`
`
`management system;
`
`
`
`
`
`
`
`
`
`Fig. 6 is a flow diagram illustrating an example method of operation for a
`
`
`
`data store management system;
`
`
`
`Fig. 7 is a flow diagram illustrating an example method of managing data
`
`
`
`
`
`
`
`
`
`stores to provide a preferred minimum amount of available memory; and
`
`
`
`
`
`2a
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 2a
`
`
`
`CA 02493196 2008-10-20
`
`
`
`
`
`Fig. 8 is a block diagram of an example wireless mobile communication
`
`
`
`device in which systems and methods of data store management may be
`
`implemented.
`
`BEST MODE FOR CARRYING OUT THE INVENTION
`
`
`
`
`
`
`
`With reference now to the drawing figures, Fig. 1 is a block diagram of a
`
`
`
`
`
`
`communication system in which a mobile communication device ("mobile device")
`,':, ._'.
`The system 1'0 }n Fig. 1, includes
`may be configured to operate.
`
`a wide area
`
`
`network (WAN) 12, to which a computer system 14, an Internet server 15, a
`
`
`
`wireless network gateway 16 and a corporate local' area network (LAN) 18 are
`
`
`
`
`
`
`
`2b
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 2b
`
`
`
`WO 2004/010306
`
`PCT/CA2003/001104
`
`CA 02493196 2005-01-21
`
`connected. The wireless network gateway 16 is also connected to a wireless
`communication network 20 in which a mobile device 22 is configured to operate.
`
`The computer system 14 represents a desktop or laptop PC which is configured
`
`for connection to the WAN 12, which will typically be the Internet.
`The Internet server 15 may be any system from which content such as web
`pages may be downloaded. Access to content associated with an Internet server
`15 is normally accomplished using a browser through which content may be
`requested from the Internet server 15. Alternatively, the Internet server 15 may be
`configured to send or "push" content to a destination, such as the mobile device
`22 or computer system 14, without first receiving a request.
`
`5
`
`10
`
`The illustrated corporate LAN 18 is a network-based messaging system,
`
`although LANs may support other types of services. As shown, the corporate
`LAN 18 is located behind a security firewall 24. Within the corporate LAN 18 is a
`message server 26 that executes on a computer within the firewall 24, and
`
`15
`
`functions as an interface for the corporation to exchange messages both within
`
`the LAN 18. and with other external messaging clients via the WAN 20. The
`message server 26 may be used in conjunction with Internet mail routers to route
`and deliver mail. A message server 26 may also provide functionality in addition
`to standard message sending and receiving functions. For instance, the message
`
`20
`
`server 26 may also function as a dynamic database storage engine having
`predefined database formats for data, such as calendars, todo lists, task lists, e(cid:173)
`mail and documentation.
`The message server 26 provides messaging capabilities and possibly other
`
`services to network computer systems 28 in the LAN 18. A typical LAN includes
`25 multiple computer systems, shown generally at 28, each of which implements a
`messaging system.
`In the network 18, messages that are received by the
`
`message server 26 and addressed to users or user accounts associated with the
`message server 26 are distributed to appropriate user account mailboxes, and
`
`can then be accessed by a user through a messaging system on a computer
`
`30
`
`system 28. Messages may similarly be sent from a messaging system operating
`on a computer system 28 via the message server 26.
`
`The wireless gateway 16 provides an interface to a wireless network 20
`through which messages may be exchanged with a mobile device 22. Such
`3
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 3
`
`
`
`WO 2004/010306
`
`PCT/CA2003/001104
`
`CA 02493196 2005-01-21
`
`functions as addressing a mobile device 22, encoding or otherwise transforming
`messages for wireless transmission, and other interface functions may be
`
`performed by the wireless gateway 16. Where the wireless gateway is configured
`to operate with more than one wireless network 20, the wireless gateway 16 may
`also determine a most likely network for locating a given user and may track users
`
`5
`
`10
`
`15
`
`20
`
`roaming between countries or networks.
`
`Computer systems with access to the WAN 12 may exchange data, such
`as e-mail messages, with a mobile device 22 through the wireless network
`gateway 16. Private wireless network gateways, such as wireless virtual private
`
`network (VPN) routers, may also be implemented to provide a private interface to
`a wireless network 20. For example, a wireless VPN implemented in the LAN 18
`may provide a private interface from the LAN 18 to one or more wireless mobile
`devices 22 through the wireless network 20. Such a private interface to mobile
`devices via the wireless network gateway 16 and/or the wireless network 20 may
`also be extended to entities outside of the LAN 18 by providing a message or
`
`content forwarding system that operates with the LAN 18. For example, incoming
`
`messages received by the message server 26 and addressed to a mobile device
`22 may be redirected through the wireless network interface (e.g., a wireless VPN
`router, gateway 16 or other interface) to the wireless network 20 and to the mobile
`device 22.
`In wireless networks 20, messages are typically delivered to and from
`mobile devices 22 via RF transmissions between base stations (not shown) and
`
`mobile devices. It should be understood that the term "wireless network," as used
`
`herein, includes different types of networks, such as data-centric wireless
`
`25
`
`networks, voice-centric wireless networks and dual-mode networks that support
`
`30
`
`both voice and data communications over the same physical base stations.
`The mobile device 22 may be a data communication device, a voice
`communication device, or a multiple-mode device capable of voice, data and other
`
`types of communications. An exemplary mobile device 22 is described in further
`detail below with reference to Fig. 5.
`Fig. 2 is a block diagram illustrating the transfer of a data item 40 to a
`mobile device 38. Fig. 2 illustrates only those components of the messaging
`system that are involved in an example data transfer between a source 30 and the
`4
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 4
`
`
`
`WO 2004/010306
`
`PCT/CA2003/001104
`
`CA 02493196 2005-01-21
`
`mobile device 38.
`
`It should be understood, however, that other components may
`
`also be present in the overall communication system and may be involved in
`
`routing a message from a source 30 to a mobile device 38.
`The system in Fig. 2 includes a data source 30, configured for access to a
`5 WAN 32. Also shown is a wireless gateway 34 that provides an interface to a
`wireless network 36 in which the mobile device 38 is adapted to operate.
`The source 30 may, for example, be a PC 14, an Internet server 15, or a
`
`network-connected computer 28, as shown in Fig. 1. The source 30 may also be
`
`a mobile device on which data, such as an e-mail message, may be composed
`and sent. In general, the source 30 may be any device or system which may send
`
`10
`
`data to the mobile device 38, including secure systems behind a firewall 24 where
`the mobile device 38 or its user is authorized to access corporate or other
`protected information. It should be understood, therefore, that a data item 40 may
`
`also be sent to the mobile device 38 through communication paths other than that
`
`15
`
`illustrated in Fig. 2. For example, if the source 30 is another mobile device that
`
`operates within the same wireless network 36 as the mobile device 38, then a
`data item may be sent to the mobile device 38 through the wireless network 36
`without passing through the WAN 32 or the wireless gateway 34.
`
`20
`
`The data item 40 may include any of a plurality of different types of data,
`depending upon the types of data item that the mobile device 38 is configured to
`process. In most cases, a mobile device will be configured to receive and process
`
`types of data items associated with software applications operating on the mobile
`device. As described above, the data item 40 may be sent to the mobile device
`
`38 in response to a request or may be "pushed" to the mobile device 38 by the
`source 30 without first having received a request.
`
`25
`
`When the mobile device includes a messaging system, the data item 40
`may be an e-mail message sent from a messaging system at a computer system
`
`14 or forwarded to the mobile device 38 by a message server 26, as described
`
`30
`
`above. Where the messaging system also supports a calendar function, the data
`item may similarly be a new or updated appointment. If a browser is installed on
`the mobile device 38, then the data item 40 may be a Hypertext Transfer Protocol
`(HTTP) response to an HTTP request previously sent from the mobile device 38
`
`to the source 30.
`
`It should be understood, however, that the data item 40 could
`5
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 5
`
`
`
`WO 2004/010306
`
`PCT/CA2003/001104
`
`CA 02493196 2005-01-21
`
`include any type of data that the mobile device 38 or a mobile device software
`
`5
`
`10
`
`15
`
`application is configured to process.
`Fig. 3 is a block diagram of a mobile device 50 with an example data store
`management system 56. As shown in Fig. 3, a mobile device 50 incorporating a
`data store management system 56 may include a memory 42, a data store
`management system 56, a user interface (UI) 58, a messaging system 60, a
`browser 62, a calendar system 64, a wireless transceiver 66, and a serial or
`universal serial bus (USB) port 68. The memory 42 may include a plurality of
`different storage areas or data stores, shown in Fig. 3 as a message store 44, an
`address book store 46, a browser cache 48, a browser bookmarks store 52, and a
`calendar data store 54. It should be understood, however, that fewer or additional
`data stores may also be provided in the mobile device 50.
`In addition, the data
`stores shown in Fig. 3 may instead be provided, possibly in addition to other data
`stores, in separate memory components in the mobile device 50.
`The memory 42 may be a writeable store, such as a RAM, into which other
`device components may write data. The message store 44 may be a storage
`area for storing messages on the mobile device 50. Received, sent, and saved
`messages may all be stored in the message store 44. The address book 46 m·ay
`store contact information for entities with whom a user of the mobile device 50
`20 may exchange messages. The address book may also store physical addresses,
`mailing addresses and other contact information
`in addition
`to electronic
`messaging information. The browser cache 48 stores previously downloaded
`content associated with Internet web pages that have been accessed by the
`browser 62.
`In the browser bookmarks store, web page addresses or other
`identifiers of content sources may be stored and recalled when the content or
`source is to be accessed. The calendar data store 54 stores information such as
`appointments and reminders. The memory 42 may also be used by other device
`systems in addition to those shown in Fig. 3. Although the data stores 44-54 are
`shown as discrete blocks within the memory 42, it should be understood that each
`data store may not necessarily be of a fixed size. That is, where memory space is
`available in the memory 42, each data store may expand as new data is written to
`the data store, possibly until an upper data store size limit is reached.
`
`25
`
`30
`
`6
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 6
`
`
`
`WO 2004/010306
`
`PCT/CA2003/001104
`
`CA 02493196 2005-01-21
`
`The data store management system 56 manages the plurality of data
`stores 44-54 in the memory 42.
`Its operation will be described in further detail
`below.
`Input and output devices which accept inputs from or provide outputs to a
`user of the mobile device 50 are designated generally in Fig. 3 as the user
`interface (UI) 58. The UI 58 may include input components, such as a keypad, a
`keyboard, a microphone, a trackball, a thumbwheel, a rocker switch, and one or
`more function keys, and may also include output components, such as a display
`
`screen and a speaker.
`The messaging system 60, browser 62 and calendar system 64, which may
`be implemented as software modules, hardware modules, or a combination of
`both, are operable to store and retrieve data to and from the data stores 44-.54.
`The messaging system 60 may, for example, support e-mail communications
`between the mobile device 50 and other entities through the wireless transceiver
`66. The browser 62 may provide access to remote content and resources, and
`may be a wireless application protocol (WAP) browser, an HTTP browser, or
`some other type of browser. The calendar system 64 may support operations
`such as setting and viewing appointments and providing appointment reminders.
`
`In some mobile devices, a single software application may incorporate some or all
`of the functionality of a messaging system, browser, and calendar system. Mobile
`devices may also include more or fewer software applications than shown in Fig.
`
`5
`
`10
`
`15
`
`20
`
`3.
`
`The wireless transceiver 66 enables the messaging system 60, browser 62
`and calendar system 64 to receive and possibly send information through a
`25 wireless network. The serial or USB port 68 provides another communication link
`through which information may be received and possibly sent to a PC. A serial or
`USB port 68 is often used to transfer personal information management (PIM)
`data between a user's PC and mobile device. Although shown as connected to
`the calendar system 64 and the calendar data store 54, it should be understood
`that the port 68 may be connected to other device systems.
`In operation, the messaging system 60 is configured to receive messages
`via the wireless transceiver 66 and store the messages in the message store 44.
`The mobile device 50 may also retrieve stored messages from the message store
`7
`
`30
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 7
`
`
`
`WO 2004/010306
`
`PCT/CA2003/001104
`
`CA 02493196 2005-01-21
`
`44 for display on a UI 58, such as a display screen. The messaging system 60
`
`may also allow a user to forward, reply to, or otherwise process a stored
`
`message. When a new message is composed on the mobile device 50 using the
`messaging system 60, the new message may also be stored to the message store
`
`5
`
`44. Recipients for messages to be sent from the mobile device 50 may be
`
`selected from the address book 46. Commands may be input to the messaging
`
`system 60 via a UI 58 to execute functions, such as updating contacts in an
`
`address book 46. Most messaging systems also allow the addition of new
`contacts to the address book 46 based on contact information in received
`1 0 messages.
`Similarly, content accessed through the browser 62 may be stored in the
`browser cache 48 and presented to a user. Content may be "pushed" to the
`mobile device 50, or requested from an information source. For example, a user
`
`15
`
`may enter a Universal Resource Locator (URL), IP address or other identifier
`associated with an information source from which content is to be downloaded.
`Alternatively, such an identifier may be selected from the browser bookmarks
`
`store 52. Requests for content may also be stored to the browser cache 48, for
`example, until a corresponding response is received.
`
`By storing content in the browser cache 48, previously viewed content may
`be displayed more quickly on the mobile device 50. Latency in wireless networks
`
`20
`
`may result in delays between a request for content from a source, such as an
`Internet server, and the receipt of content from the source. When previously
`viewed content that is stored in the browser cache 44 is to be viewed again, such
`
`as by using a "back" operation of the browser 62, it may be retrieved from the
`browser cache 44 instead of being downloaded over the wireless network.
`
`25
`
`The browser bookmarks store 52 may also be maintained by a user through a UI
`58 and the browser 62. Bookmarks may be updated or deleted, and new
`
`bookmarks may be stored to the bookmarks store 52. New bookmarks may be
`entered manually using a UI 58. In addition, a URL, IP address or other identifier
`
`30
`
`associated with saved or currently displayed content may be selected and stored
`to the bookmarks store 52.
`
`Calendar data may also b.e received, sent, ~reated, manipulated, stored to
`
`the calendar data store 54 and retrieved from the data store 54 by the calendar
`8
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1012, p. 8
`
`
`
`WO 2004/010306
`
`PCT/CA2003/001104
`
`CA 02493196 2005-01-21
`
`system 64. When new or updated calendar data is received by the calendar
`
`system 64 from the wireless transceiver 66 or the serial/USS port 68, the calendar
`
`system 64 may store received calendar data to the calendar data store 54. As
`
`described above in the context of messages, calendar data may be pushed to a
`5 mobile device 50 or returned to the mo~ile device 50 in response to a request.
`Stored calendar data may be retrieved from the calendar data store 5