CA2441870A1 - Dynamically downloading and executing system services on a wireless device - Google Patents

Dynamically downloading and executing system services on a wireless device Download PDF

Info

Publication number
CA2441870A1
CA2441870A1 CA002441870A CA2441870A CA2441870A1 CA 2441870 A1 CA2441870 A1 CA 2441870A1 CA 002441870 A CA002441870 A CA 002441870A CA 2441870 A CA2441870 A CA 2441870A CA 2441870 A1 CA2441870 A1 CA 2441870A1
Authority
CA
Canada
Prior art keywords
wireless device
virtual machine
system service
application
receiving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CA002441870A
Other languages
French (fr)
Other versions
CA2441870C (en
Inventor
Stephen A. Sprigg
Brian Minear
Mahesh Moorthy
Paul Jacobs
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CA2441870A1 publication Critical patent/CA2441870A1/en
Application granted granted Critical
Publication of CA2441870C publication Critical patent/CA2441870C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

An applet requiring a virtual machine is downloaded to a wireless device. A software platform on the device determines that a virtual machine is used by the applet during execution. Without additional user interaction, the virtua l machine is downloaded to the wireless device. This allows those applets requiring a virtual machine to be used with devices that don't have the virtual machine already installed. Further embodiments include the dynamic loading of a system service when an application is being loaded that used th e system service. A unique identifier associated with the system service may b e used to determine if determine if the system sercice is loaded.

Claims (19)

1. A method for receiving a virtual machine at a wireless device comprising:
sending a request to download an application using the virtual machine on the wireless device;
receiving the application and an associated reference from a server, wherein a reference indicates that the application uses the virtual machine;
using the reference, determining whether the virtual machine is loaded onto the wireless device; and in the event the virtual machine is not loaded onto the wireless device, sending a request to the server and downloading the virtual machine onto the wireless device.
2. The method of claim 1 further comprising receiving a request for the application.
3. The method of claim 1, wherein the application is java code and the virtual machine is a java virtual machine.
4. The method of claim 1, wherein the application uses the virtual machine when executing.
5. A method of processing data having an associated system service, comprising:
determining which system service is associated with the data;
determining whether the system service is accessible by the wireless device;
and in the event the wireless device does not have access to the service, gaining access to the system service via a wireless network.
6. The method of claim 5, wherein the data is executable code.
7. The method of claim 6, wherein the system service is a java virtual machine and the executable code uses the java virtual machine when executing.
8. The method of claim 5, wherein a reference is associated with the data and further comprising determining which system service is associated with the data by checking the reference.
9 9. The method of claim 5 further comprising receiving the system service into the wireless device via the wireless network.
10. The method of claim 5 further comprising receiving the data into the wireless device via the wireless network.
11. A method of receiving a system service on a wireless device, comprising:
storing a data object onto the wireless device;
determining whether the data object has a system service associated with the data object;
determining whether the system service is located within the wireless device;
in the event the system service is not located within the wireless device, sending a request to a server for the system service; and receiving the system service from the server via a wireless network.
12. The method of claim 11, further comprising receiving a request for the data object at the wireless device.
13. The method of claim 11, wherein determining whether the data object has a system service includes analyzing a reference associated with the data object and containing an indication of the system service.
14. A method of processing an application in a wireless device, comprising:
receiving a request for an application;
checking the wireless device to determine whether the application is accessible by the wireless device;
in the event the application is not accessible, requesting access to the application from a server using a wireless network;
receiving the application and a reference associated with the application, wherein the reference indicates a system service for use with the application;
checking the reference and determining whether the system service is accessible by the wireless device; and in the event the system service is not accessible by the wireless device, requesting access to the system service from a server using a wireless network
15. The method of claim 14 further comprising receiving the application from a server via a wireless network.
16. The method of claim 14 further comprising receiving the system service from a server via a wireless network.
17. An apparatus for processing an application, comprising:
a wireless device having a storage and a processor;
the process configured to determine a system service associated with data, to determine whether the system service is accessible by the wireless device, and in the event the wireless device does not have access to the service, gains access to the system service via a wireless network.
18. A computer readable medium containing computer executable instructions that when executed, perform a method for receiving a virtual machine at a wireless device, comprising:
sending a request to download an application using the virtual machine on the wireless device;
receiving the application and an associated reference from a server, wherein a reference indicates that the application uses the virtual machine;
using the reference, determining whether the virtual machine is loaded onto the wireless device; and in the event the virtual machine is not loaded onto the wireless device, sending a request to the server and downloading the virtual machine onto the wireless device.
19. A system to receive a virtual machine at a wireless device, comprising:
means for sending a request to download an application using the virtual machine on the wireless device;
means for receiving the application and an associated reference from a server, wherein a reference indicates that the application uses the virtual machine;
means for using the reference, determining whether the virtual machine is loaded onto the wireless device; and means for in the event the virtual machine is not loaded onto the wireless device, sending a request to the server and downloading the virtual machine onto the wireless device.
CA2441870A 2001-03-19 2002-03-18 Dynamically downloading and executing system services on a wireless device Expired - Fee Related CA2441870C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US27760701P 2001-03-19 2001-03-19
US60/277,607 2001-03-19
PCT/US2002/008394 WO2002075527A2 (en) 2001-03-19 2002-03-18 Dynamically downloading and executing system services on a wireless device

Publications (2)

Publication Number Publication Date
CA2441870A1 true CA2441870A1 (en) 2002-09-26
CA2441870C CA2441870C (en) 2010-02-23

Family

ID=23061612

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2441870A Expired - Fee Related CA2441870C (en) 2001-03-19 2002-03-18 Dynamically downloading and executing system services on a wireless device

Country Status (15)

Country Link
EP (1) EP1421484A2 (en)
JP (1) JP2004537086A (en)
KR (1) KR100587749B1 (en)
CN (1) CN1256666C (en)
AR (1) AR035784A1 (en)
AU (1) AU2002254289B2 (en)
BR (1) BR0208206A (en)
CA (1) CA2441870C (en)
HK (1) HK1068981A1 (en)
IL (2) IL157959A0 (en)
MX (1) MXPA03008532A (en)
NZ (1) NZ528277A (en)
PE (1) PE20030003A1 (en)
TW (1) TWI246833B (en)
WO (1) WO2002075527A2 (en)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8737981B2 (en) * 2002-12-19 2014-05-27 Qualcomm Incorporated Downloadable configuring application for a wireless device
FR2849704A1 (en) * 2003-01-02 2004-07-09 Thomson Licensing Sa Conditional decision device for e.g. Internet decoder, has program obtaining module to start downloading if programs are not available, and decision obtaining module to allow or prevent downloading based on information
US20050060704A1 (en) * 2003-09-17 2005-03-17 International Business Machines Corporation Managing processing within computing environments including initiation of virtual machines
US7552433B2 (en) 2003-11-12 2009-06-23 Hewlett-Packard Development Company, L.P. Non-platform-specific unique indentifier generation
US8387039B2 (en) 2004-01-30 2013-02-26 Research In Motion Limited System and method for customized provisioning of application content
US7509658B2 (en) 2004-01-30 2009-03-24 Research In Motion Limited System and method for adaptable provisioning of generic application content
EP1560114A1 (en) * 2004-02-02 2005-08-03 Research In Motion Limited Computer system and method for customized provisioning of application content
EP2088505A1 (en) 2004-02-02 2009-08-12 Research In Motion Limited Computer system and method for adaptable provisioning of generic application content
US8549166B2 (en) 2004-03-01 2013-10-01 Qualcomm Incorporated Execution of unverified programs in a wireless, device operating environment
JPWO2006009287A1 (en) * 2004-07-20 2008-05-01 スター・ゲームズ株式会社 Automatic conversion program and program conversion server
US7979391B2 (en) * 2005-02-25 2011-07-12 Sharp Kabushiki Kaisha Data management system, data management method, server apparatus, receiving apparatus, control program, and computer-readable recording medium recording same
WO2006094117A2 (en) 2005-03-01 2006-09-08 Mfoundry Application program update deployment to a mobile device
JP2006260440A (en) * 2005-03-18 2006-09-28 Nomura Research Institute Ltd Application system for portable terminal
US8000680B2 (en) * 2006-01-11 2011-08-16 Samsung Electronics Co., Ltd Security management method and apparatus in multimedia middleware, and storage medium therefor
EP2053504A1 (en) * 2007-08-09 2009-04-29 France Telecom System and method for managing processing resources
US8811968B2 (en) 2007-11-21 2014-08-19 Mfoundry, Inc. Systems and methods for executing an application on a mobile device
KR20090132374A (en) * 2008-06-20 2009-12-30 삼성전자주식회사 Display apparatus, server, and method for updating system control program of display apparatus
KR200453971Y1 (en) * 2009-07-10 2011-06-09 (주)아모레퍼시픽 Ball feeding appratus for producing cosmetics
CN102487380B (en) * 2010-12-01 2016-09-07 中兴通讯股份有限公司 Desktop virtual terminal entrusting method and system
US9275162B2 (en) 2011-03-22 2016-03-01 Blackberry Limited Pre-caching web content for a mobile device
US9401917B2 (en) 2011-06-03 2016-07-26 Blackberry Limited Pre-caching resources based on a cache manifest
US9317689B2 (en) * 2012-06-15 2016-04-19 Visa International Service Association Method and apparatus for secure application execution
JP5814889B2 (en) * 2012-08-27 2015-11-17 株式会社コナミデジタルエンタテインメント GAME SELECTION CONTROL METHOD, GAME SOFTWARE DISTRIBUTION CONTROL METHOD, AND GAME SOFTWARE DISTRIBUTION SERVER
CN104714890A (en) * 2015-04-13 2015-06-17 东信和平科技股份有限公司 Method and system for detecting intelligent card in cross-platform way
US10255092B2 (en) * 2016-02-09 2019-04-09 Airwatch Llc Managed virtual machine deployment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5630066A (en) * 1994-12-20 1997-05-13 Sun Microsystems, Inc. System and method for locating object view and platform independent object
US6349408B1 (en) * 1998-03-23 2002-02-19 Sun Microsystems, Inc. Techniques for implementing a framework for extensible applications
US6571389B1 (en) * 1999-04-27 2003-05-27 International Business Machines Corporation System and method for improving the manageability and usability of a Java environment

Also Published As

Publication number Publication date
TWI246833B (en) 2006-01-01
CN1256666C (en) 2006-05-17
HK1068981A1 (en) 2005-05-06
KR100587749B1 (en) 2006-06-09
MXPA03008532A (en) 2004-06-30
AU2002254289B2 (en) 2006-12-07
IL157959A (en) 2008-07-08
NZ528277A (en) 2007-06-29
IL157959A0 (en) 2004-03-28
CA2441870C (en) 2010-02-23
EP1421484A2 (en) 2004-05-26
BR0208206A (en) 2006-02-21
WO2002075527A9 (en) 2004-06-17
AR035784A1 (en) 2004-07-14
WO2002075527A3 (en) 2004-04-01
CN1526096A (en) 2004-09-01
KR20030084886A (en) 2003-11-01
JP2004537086A (en) 2004-12-09
PE20030003A1 (en) 2003-01-21
WO2002075527A2 (en) 2002-09-26

Similar Documents

Publication Publication Date Title
CA2441870A1 (en) Dynamically downloading and executing system services on a wireless device
US20040203690A1 (en) Dynamically downloading and executing system services on a wireless device
US6742050B1 (en) Inter-object messaging
US8347108B2 (en) System and method for automated safe reprogramming of software radios
JP3730563B2 (en) Session management apparatus, session management method, program, and recording medium
AU2002254289A1 (en) Dynamically downloading and executing system services on a wireless device
CA2509091A1 (en) System and method for handshaking between wireless devices and servers
TW368635B (en) Method and apparatus for controlling software access to system resources
KR100883699B1 (en) Execution of unverified programs in a wireless device operating environment
KR20050089072A (en) Method and apparatus for shared libraries on mobile devices
US20100106977A1 (en) Method and Apparatus for Secure Software Platform Access
US8145571B2 (en) Content transfer control for wireless devices
CN106598662B (en) Android-based application loading method and device
US20030163506A1 (en) Speeding up application downloading from a remote server
CN107797843B (en) Method and device for enhancing function of container
GB2346983B (en) Client/server computing for transaction processing with superior coordinator o ptimization
US7747755B2 (en) Method and apparatus for session management in an enterprise java bean session bean
US7958496B2 (en) Method of and system for application service exchange across different execution environments
EP1936526A1 (en) Software license management in a mobile device
KR101016649B1 (en) Method and system for re-downloading mobile platform based application
JP4045805B2 (en) Television receiver and television application control method
CN117707647A (en) Service processing method and device, storage medium and electronic equipment
CN112631692A (en) Application program operation control method and device and storage medium
CN111353154A (en) Application program shelling method and device, terminal equipment and medium
CN112507254A (en) Application program authorization method and device

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed