ES2387482T3 - Sistema para procesar automáticamente componentes en un dispositivo - Google Patents
Sistema para procesar automáticamente componentes en un dispositivo Download PDFInfo
- Publication number
- ES2387482T3 ES2387482T3 ES03800088T ES03800088T ES2387482T3 ES 2387482 T3 ES2387482 T3 ES 2387482T3 ES 03800088 T ES03800088 T ES 03800088T ES 03800088 T ES03800088 T ES 03800088T ES 2387482 T3 ES2387482 T3 ES 2387482T3
- Authority
- ES
- Spain
- Prior art keywords
- component
- version
- identifier
- list
- action
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Tourism & Hospitality (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
- Exchange Systems With Centralized Control (AREA)
Abstract
Un procedimiento para procesar automáticamente componentes (112, 116, 222) en un dispositivo (106), comprendiendo el procedimiento: recibir (302, 404) un identificador de versión (108, 202, 502) de una lista de acciones (110, 210, 500), en donde la lista de acciones (110, 210, 500) comprende pares componente/acción (504, 506) que describen una acción que el dispositivo (106) debe realizar con respecto a cada componente identificado (112, 116, 222); comparar (304) el identificador de versión recibido (108, 202, 502) con un identificador de versión almacenado (114) que representa la versión de la última lista de acciones procesada por el dispositivo (106); determinar (304) que el identificador de versión recibido (108, 202, 502) no es equivalente al identificador de versión almacenado (114); recibir (306, 408) la lista de acciones (110, 210, 500) sólo cuando el identificador de versión recibido (108, 202, 502) no es equivalente al identificador de versión almacenada (114); procesar (308) cada par componente/acción (504, 506) en la lista de acciones recibidas (110, 210, 500) 15 para obtener un identificador de componente y una acción asociada, en donde el identificador de componente obtenido incluye información acerca de la versión del componente identificado (112, 116, 222); comparar (310) una versión del componente almacenado (118) con la versión del componente identificado (112, 116, 222); descargar (412) el componente (112, 116, 222) identificado por el identificador de componente obtenido sólo cuando la versión del componente almacenada (118) y la versión del componente identificado (112, 116, 222) son diferentes; realizar (312) una acción de la lista de acciones recibida (110, 210, 500) en el componente asociado, descargado (112, 116, 222) identificado por el identificador de componente obtenido;actualizar la versión del componente almacenada (118) con la versión del componente descargado (112, 116, 222), y actualizar (320) el identificador almacenado (114) para que sea equivalente al identificador de versión (108, 202, 502) de la lista de acciones recibida (110, 210, 500).
Description
Sistema para procesar automáticamente componentes en un dispositivo.
Esta solicitud reivindica el beneficio de prioridad de una solicitud pendiente de patente provisional de EE.UU. 5 titulada "AUTO-INSTALL" con número de solicitud 60/435,486 y presentada el 20 de Diciembre de 2002, cuya descripción se incorpora aquí como referencia en su totalidad a todos los efectos.
Esta solicitud también reivindica el beneficio de prioridad de una solicitud pendiente de patente provisional de EE.UU. titulada "REGISTRY-BASED AUTO INSTALL COMPONENT HANDLING” con número de solicitud 60/435,828 presentada el 20 de Diciembre de 2002, cuya descripción se incorpora aquí como referencia en su
10 totalidad a todos los efectos.
ANTECEDENTES
La presente invención se refiere en general al procesado de componentes en un dispositivo, y más particularmente, a un sistema para la instalación, actualización o eliminación automática de componentes en un dispositivo.
Las redes de datos proporcionan una forma de comunicarse entre sí para un gran número de usuarios utilizando una variedad de dispositivos habilitados para la red. Por ejemplo, en una red de comunicación inalámbrica, una variedad de teléfonos portátiles habilitados para la red permiten a los usuarios comunicarse entre sí a grandes distancias. La dispositivos habilitados para la red suelen configurarse con una variedad de componentes instalados
20 que controlan cómo funciona el dispositivo, y en última instancia, lo bien que funciona la red en general.
En ciertas circunstancias, a un operador de red le gustaría actualizar, instalar, eliminar o cambiar la configuración de los dispositivos habilitados en la red. Por ejemplo, al mejorar el software del sistema, al operador de red le gustaría instalar nuevos componentes en todos los dispositivos en la red para que la red funcione más eficientemente. Por ejemplo, el operador de red puede querer instalar software de aplicación, un archivo ejecutable 25 binario u otra información sobre los dispositivos para proporcionar mejoras en el servicio o actualizaciones. En otra situación, el operador de red puede querer instalar aplicaciones empresariales u otras aplicaciones de actualización de dispositivos en función de las necesidades de un tipo específico de dispositivo. Además, si se determina que existe un problema con un componente del sistema instalado actualmente, el operador de red desearía instalar un componente actualizado para reparar el problema, independientemente de si el usuario del dispositivo es incluso
30 consciente de que existe el problema. Por ejemplo, si existe un problema con un componente del dispositivo actual que permite a un usuario visualizar contenido multimedia, el operador de red desearía actualizar todos los dispositivos en la red para reemplazar este componente por un nuevo componente que no tenga el problema.
Una técnica utilizada para instalar, actualizar, eliminar o cambiar los componentes en un dispositivo es esperar a que el usuario del dispositivo devuelva el dispositivo a un centro de reparación. Una vez en el centro de reparación, 35 personal de mantenimiento puede reprogramar el dispositivo de forma que el dispositivo tenga las versiones más recientes de los componentes. Desafortunadamente, este proceso es muy ineficiente porque los usuarios de dispositivos pueden no devolver el equipo si no son conscientes del problema, o si el problema no está afectando actualmente a la forma en que utilizan el dispositivo. Debido a que no todos los dispositivos serán actualizados, algunos dispositivos no funcionarán proporcionando el mejor rendimiento y el funcionamiento global de la red puede
40 degradarse.
Por lo tanto, lo que se necesita es un sistema para procesar automáticamente componentes en un dispositivo para permitir que se instalen y activen versiones seleccionadas de componentes. El sistema debe ser lo suficientemente flexible como para procesar los componentes en un gran número de dispositivos en un tiempo relativamente corto, lo que proporciona actualizaciones rápidas a todos los dispositivos que operan en una red, lo que resultará en un
45 mejor rendimiento del dispositivo y una mayor eficiencia de la red.
WO 00/77614 está dirigida a un paquete de software y un sistema de distribución. WO 99/45465 se refiere a un procedimiento, sistema, aparato y producto de programa para la distribución y creación de actualizaciones de software.
WO 01/93030 está dirigida a un procedimiento para resolver conflictos de dependencia entre las entidades operativas dentro de un entorno de computación.
RESUMEN
La necesidad antes mencionada es satisfecha por el contenido de las reivindicaciones independientes. Las realizaciones ventajosas están contenidas en las reivindicaciones dependientes.
En una o más realizaciones, se proporciona un sistema para procesar automáticamente componentes en un dispositivo. Por ejemplo, en una realización, el sistema permite a un dispositivo instalar, actualizar, eliminar, activar, desactivar, llamar o de otra forma cambiar el estado de un componente en un dispositivo utilizando una versión de lista de acciones disponible en un servidor de descarga. Los componentes que pueden ser procesados pueden ser de cualquier tipo, por ejemplo, una aplicación, ejecutable, información de configuración, configuración de interfaz de usuario, datos aleatorios, o cualquier otro tipo de información.
Durante el funcionamiento del sistema, el dispositivo comprueba la versión de la lista de acciones en el servidor de descarga respecto a una versión almacenada asociada con la última lista de acciones procesada por el dispositivo. Si las dos versiones son diferentes, el dispositivo descarga la nueva lista de acciones del servidor y procesa cada elemento de la lista de acciones para procesar componentes en el dispositivo. En una realización, cada elemento de la lista de acciones comprende un par componente/acción que asocia un identificador de componente con un identificador de acción. El identificador de componente identifica un tipo de componente y su versión actual. El identificador de acción identifica una acción a realizar por el dispositivo con respecto al componente identificado.
En una realización, el dispositivo procesa cada par componente/acción en la lista de acciones para determinar si debe realizarse una acción para el componente identificado. El dispositivo compara la versión del componente en la lista de acciones con una versión del componente almacenada en el dispositivo. Si las dos versiones de los componentes son la misma, el dispositivo no realiza ninguna acción con relación a un par componente/acción. Si las versiones son diferentes, el dispositivo realiza la acción asociada con el componente en la lista de acciones. Por ejemplo, si la acción es instalar el componente identificado, el dispositivo descarga el componente, y cualquier otra información necesaria desde el servidor de descarga e instala el componente en el dispositivo. De este modo, el dispositivo se desplaza a través de la lista de acciones llevando a cabo las acciones designadas sólo en las nuevas versiones de componentes.
Después de procesar un determinado par componente/acción, la versión del componente almacenada en el dispositivo se actualiza con la nueva versión del componente proporcionada en la lista de acciones. Una vez que se ha procesado toda la lista acciones, el dispositivo graba el identificador de versión de la lista de acciones, de modo que se evita re-procesar la lista de acciones actual en el futuro. De este modo, el dispositivo no procesará otra lista acciones hasta que la versión de la lista de acciones disponible en el servidor de descarga sea diferente de la versión almacenada en el dispositivo.
En una realización, el dispositivo comprueba la versión de la lista de acciones cada vez que el dispositivo se comunica con el servidor de descarga. Por ejemplo, el dispositivo puede comunicarse con el servidor de descarga después de que el dispositivo se encienda o en intervalos periódicos. El sistema proporciona un mecanismo para permitir a los componentes ser procesados en el dispositivo sin intervención del usuario o con interacción del usuario limitada. Por ejemplo, en una realización, los componentes pueden ser entregados a un dispositivo en el encendido para proporcionar de forma efectiva una "instalación silenciosa". En otra realización, se proporciona un interfaz de usuario para que el procesado de los componentes pueda ser una opción del usuario. De este modo, el sistema permite que el procesadode componentes sea forzado, solicitado, obligatorio u opcional.
El sistema puede utilizarse para procesar componentes en un solo dispositivo o en un gran número de dispositivos. Por ejemplo, en una red de datos en la que un gran número de dispositivos pueden acceder a un servidor de lista de acciones, se puede enviar una lista única de acciones a todos los dispositivos y cada dispositivo puede determinar qué componentes procesar para ese dispositivo. En otra realización, el servidor puede proporcionar varias listas de acciones que pueden ser utilizadas para diferentes tipos de dispositivos. Por ejemplo, diferentes tipos de dispositivos pueden acceder a una lista de acciones diferente para procesar componentes para ese tipo de dispositivo. De este modo, es posible para el sistema proporcionar actualizaciones globales para un gran número de dispositivos, en donde las actualizaciones se llevan a cabo durante un período de horas o días al ir contactando cada dispositivo al servidor de lista de acciones. Además, la comunicación entre el servidor y un dispositivo puede llevarse a cabo utilizando cualquier tipo de técnica de comunicación segura, tal como cifrado o cualquier tipo de codificación, de manera que los dispositivos pueden ser autentificados y cualquier transmisión de información se realice de forma segura.
En una realización, se proporciona un procedimiento para procesar automáticamente componentes en un dispositivo. El procedimiento comprende recibir un identificador de versión asociado con una lista de acciones, determinar que el identificador de versión no es equivalente a un identificador de versión almacenada, recibir la lista de acciones, procesar la lista de acciones para obtener un identificador de componente y una acción asociada, y llevar a cabo la acción en un componente identificado por el identificador de componente.
En una realización, se proporciona un aparato para procesar automáticamente componentes en un dispositivo. El aparato comprende lógica para recibir un identificador de versión asociado con una lista de acciones, y lógica para comparar el identificador de versión con un identificador de versión almacenada. El aparato comprende también lógica para recibir la lista de acciones si el identificador de versión no es equivalente al identificador de versión almacenada, y lógica para procesar la lista de medidas para obtener un identificador de componente y una acción asociada. El aparato también comprende lógica para llevar a cabo la acción de un componente identificado por el identificador de componente.
En una realización, se proporciona un aparato para procesar automáticamente componentes en un dispositivo. El aparato comprende medios para recibir un identificador de versión asociado con una lista de acciones, y medios para determinar que el identificador de versión no es equivalente a un identificador de versión almacenada. El aparato también comprende medios para recibir la lista de acciones, y medios para procesar la lista de acciones para obtener un identificador de componente y una acción asociada. El aparato también comprende medios para llevar a cabo la acción de un componente identificado por el identificador de componente.
En una realización, se proporcionan medios legibles por ordenador que comprenden instrucciones, que cuando se ejecutan mediante la lógica de procesado de en un dispositivo, operan para procesar automáticamente los componentes del dispositivo. Los medios legibles por ordenador incluyen instrucciones para recibir un identificador de versión asociado con una lista de acciones e instrucciones para determinar que el identificador de versión no es equivalente a un identificador de versión almacenada. Los medios legibles por ordenador comprenden también instrucciones para recibir la lista de acciones e instrucciones para procesar la lista de acciones para obtener un identificador de componente y una acción asociada. Los medios legibles por ordenador comprenden también instrucciones para realizar la acción de un componente identificado por el identificador de componente.
Otros aspectos, ventajas y características de la presente invención se volverán evidentes después de revisar la Breve Descripción de los Dibujos, Descripción detallada de la invención y las reivindicaciones expuestas de aquí en adelante.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
Los aspectos anteriores y las ventajas que conllevan las realizaciones descritas en este documento se volverán evidentes en referencia a la siguiente descripción detallada tomada en conjunto con los dibujos que se adjunta, en los que:
La Figura 1 muestra una realización de un sistema para procesar automáticamente componentes en un dispositivo;
La Figura 2 muestra un diagrama funcional de un dispositivo que incluye una realización de un sistema para procesar automáticamente componentes;
La Figura 3 muestra una realización de un procedimiento para hacer funcionar un dispositivo para proporcionar un sistema para procesar automáticamente componentes en el dispositivo;
La Figura 4 muestra transacciones que se producen entre un servidor de descarga y un dispositivo durante el funcionamiento de una realización de un sistema para procesar automáticamente componentes en el dispositivo, y
La Figura 5 muestra una realización de una lista de acciones para su uso en un sistema para procesar automáticamente componentes en un dispositivo.
DESCRIPCIÓN DETALLADA
La siguiente descripción detallada describe realizaciones de un sistema para procesar automáticamente componentes en un dispositivo. El sistema es adecuado para su uso en cualquier tipo de red cableada o inalámbrica, incluyendo pero no limitado a, redes de comunicación, redes públicas, como Internet, redes privadas, tales como redes privadas virtuales (VPN), redes de área local, redes de área extensa, red de retorno, o cualquier otro tipo de red de datos. El sistema también es adecuado para su uso con cualquier tipo de dispositivo que es capaz de descargar e instalar los componentes. Por ejemplo, el sistema es adecuado para su uso con equipos de oficina, ordenadores portátiles, y dispositivos portátiles, como teléfonos móviles, PDA, o cualquier otro tipo de dispositivo capaz de recibir e instalar los componentes.
En una o más realizaciones, el sistema interactúa con un entorno de ejecución que se está ejecutando en el dispositivo que se utiliza para simplificar el funcionamiento del dispositivo, tal como proporcionando llamadas generalizadas para recursos específicos de dispositivos. Un entorno de ejecución de este tipo es el Binary Runtime Environment for Wireless™(BREW™) plataforma de software desarrollada por Qualcomm, Inc., de San Diego, California. En la siguiente descripción, se supondrá que el dispositivo está ejecutando un entorno de ejecución, tal como la plataforma de software BREW. Sin embargo, una o más realizaciones del sistema son adecuadas para su uso con otros tipos de entornos de ejecución para procesar automáticamente componentes en una variedad de dispositivos alámbricos e inalámbricos.
La Figura 1 muestra una forma de realización de un sistema 100 para procesar automáticamente componentes en un dispositivo. El sistema 100 comprende un servidor 102, una red de datos 104 y un dispositivo 106. La red de datos 104 puede ser cualquier tipo de red cableada o inalámbrica que permite que se comunique información entre el servidor 102 y el dispositivo 106. Por ejemplo, la red 104puede ser una red de comunicación, red de área extensa, red privada virtual, o una red pública, como Internet.
En una o más realizaciones, el sistema opera para procesar componentes en el dispositivo 106. Por ejemplo, el servidor 102 incluye componentes 112, una lista de acciones 110 y un identificador de versión de lista de acciones
108. El identificador de versión 108 identifica la versión actual de la lista de acciones 110. La lista de acciones 110 comprende pares componente/acción en donde cada par comprende un identificador de componente y un identificador de acción. El identificador de componente es un elemento identificador único que identifica un componente en particular. Una parte del identificador componente se utiliza para identificar una versión del componente. Por ejemplo, el identificador de componente es una serie de bits en la que se utiliza una parte de los bits para identificar la versión del componente. El identificador de acción identifica una acción en particular, tal como instalar, actualizar, eliminar, recuperar, deshabilitar, o cualquier otra acción que el dispositivo 106 llevará a cabo con respecto a la componente identificada.
Durante el funcionamiento, el servidor 102 transmite el identificador de versión de lista de acciones 108 para el dispositivo 106 a través de la red 104. Por ejemplo, el dispositivo 106 puede ponerse en contacto con el servidor 102 durante una secuencia de encendido y el servidor 102 responde mediante la transmisión del identificador de versión de lista de acciones 108 para el dispositivo 106. El dispositivo 106 compara el identificador de versión 108 con un identificador de versión almacenada 114 que representa la versión de la última lista de acciones a procesar por el dispositivo 106. Si la versión descargada 108 y la versión almacenada 114 son equivalentes, entonces el dispositivo no necesita llevar a cabo ninguna instalación o cambios en los componentes existentes 116 en el dispositivo. Sin embargo, si la versión descargada 108 es diferente de la versión almacenada 114, entonces el dispositivo 106 sabe que se requiere un procesado adicional de componente. Por ejemplo, puede haber nuevos componentes situados en el servidor 102 que necesitan ser instalados en el dispositivo 106.
Una vez que el dispositivo 106 detecta que existe una nueva versión de la lista de acciones, transmite una solicitud al servidor 102 para obtener la nueva lista de acciones 110. El servidor 102 responde mediante transmitiendo la lista de acciones 110 para el dispositivo 106.El dispositivo 106 procesa entonces la lista de acciones 110 para instalar, actualizar, eliminar o procesar componentes identificados en la lista de acciones 110.
El dispositivo 106 opera para procesar la lista de acciones 110 yendo paso a paso por cada par componente/acción y determinando si debe o no tomar medidas con respecto a cada componente. Por ejemplo, si la lista de acciones especifica que un elemento debe ser instalado o actualizado, el dispositivo 106 descarga el componente 112 y todos los demás archivos necesarios desde el servidor 102 y lo instala en el dispositivo 106. Por ejemplo, información del servidor 102 transmitida al dispositivo 106 se muestra de forma general en 120. Si la lista de acciones 110 especifica que un componente tiene que ser eliminado, el dispositivo 106 elimina el componente. Por lo tanto, cada par componente /acción en la lista de acciones 110 es procesado por el dispositivo 106 para instalar, actualizar, eliminar, etc., automáticamente el componente identificado. La lista de acciones pueden tener cualquier longitud y después de procesar la lista de acciones, el dispositivo 106 actualiza el identificador almacenado de versión de lista de acciones 114 para almacenar la versión de la lista de acciones procesada más recientemente (es decir, la versión 108).
En una realización, el dispositivo 106 procesa los pares componente/acción en la lista de acciones 110 para determinar si tiene que tomarse o no una acción relacionada con un componente particular. Por ejemplo, el dispositivo 106 puede tener ya instalada la versión más reciente de un componente, y por lo tanto no es necesario que el dispositivo vuelva a instalar ese componente. En una realización, el identificador de componente en la lista de acciones 110 incluye información para determinar la versión del componente. Por ejemplo, la información de la versión puede ser añadida al final del identificador de componente. El dispositivo 106 compara una versión del componente almacenado 118 con la versión del componente descargado en la lista de acciones 110. Si las versiones de los componentes almacenado y descargado son la misma, entonces el dispositivo no necesita llevar a cabo ninguna acción con respecto a dicho componente. Sin embargo, si las versiones de los componentes almacenada y descargada son diferentes, entonces el dispositivo 106 lleva a cabo la acción asociada a ese componente en la lista de acciones. De este modo, el sistema es muy eficiente, ya que el dispositivo 106 sólo procesa las nuevas versiones de los componentes.
La Figura 2 muestra un diagrama funcional de un dispositivo 200 que incluye una realización de un sistema para procesar automáticamente componentes en el dispositivo 200. El dispositivo comprende lógica de procesado 208, lógica de comparación 206, lógica funcional 214, lógica de actualización de versión 224, un identificador almacenado de versión de lista de acciones 204, identificadores de de versión de componente 212 y componentes instalados 226. La lógica descrita y las funciones proporcionadas por el dispositivo 200 pueden implementarse en hardware, software, o en una combinación de hardware y software. Por ejemplo, en una o más realizaciones, la lógica de procesado 208 aomprende una CPU, procesador, matriz de puertas, lógica hardware, elementos de memoria, máquina virtual, software y/o cualquier combinación de hardware y software. De este modo, la lógica de procesado 208 generalmente comprende lógica para ejecutar instrucciones legibles por máquina para realizar las funciones descritas en este documento. Debe señalarse que el dispositivo 200 ilustra una realización y que se pueden hacer cambios, adiciones, o reordenamientos de los elementos del dispositivo sin alejarse del alcance de la invención.
La Figura 3 muestra una realización de un procedimiento 300 para hacer funcionar un dispositivo, tal como el dispositivo 200, para proporcionar un sistema para procesar automáticamente componentes en el dispositivo 200. Por claridad, el procedimiento 300 se describirá en referencia al dispositivo 200 mostrado en la Figura 2. Además, se supone que el dispositivo 200 está en comunicación segura con un servidor de descarga a través de una red de datos, como se ilustra en la Figura 1.
En el bloque 302, el dispositivo obtiene un identificador de versión de lista de acciones del servidor de descarga. Por ejemplo, el dispositivo se comunica con el servidor de descarga a través de una red de datos y el servidor de descarga transmite el identificador de versión de lista de acciones para el dispositivo, como se muestra en 202.
En el bloque 304, se realiza una prueba para determinar si el identificador descargado de versión de lista de acciones es diferente de un identificador de versión almacenado que está asociado con la última lista de acciones a procesar por el dispositivo. Por ejemplo, la identificador de versión descargado 202 y el identificador de versión almacenado 204 son entrada para la lógica de comparación 206 que compara los dos identificadores para determinar si son equivalentes. Si los dos identificadores de versión son equivalentes, el procedimiento vuelve al bloque 302 para obtener una nueva versión de la lista de acciones en otro momento. Si los dos identificadores de versión son diferentes (Diff), el procedimiento continúa con el bloque 306.
En el bloque 306, el dispositivo recupera la lista de acciones del servidor de descarga. Por ejemplo, la lista de acciones 210 se descarga desde el servidor a la lógica de procesado 208 a través de la red de datos.
En el bloque 308, el dispositivo comienza a procesar la lista de acciones mediante el análisis del primer par componente/acción en la lista de acciones. Por ejemplo, la lógica de procesado 208 opera para procesar la lista de acciones descargada 210 para procesar los pares componente/acción.
En el bloque 310, se realiza una prueba para determinar qué acción, si alguna, es requerida para el par componente/acción que se está procesando. En una realización, el dispositivo funciona para realizar automáticamente la acción procediendo a bloquear 312. Sin embargo, esto puede resultar en que se re-instalen componentes ya existentes en el dispositivo. En otra realización, la versión del componente se comprueba para determinar si la acción es necesaria. Por ejemplo, si la acción es "instalar" el componente, la versión del componente se comprueba para ver si el dispositivo tiene la versión del componente actualmente instalada. Por lo tanto, el procedimiento funciona para evitar volver a instalar los componentes que ya están instalados en el dispositivo. Por ejemplo, la lógica de procesado 208 recupera un identificador alamacenado de versión del componente 212 y lo compara con la versión del componente identificada en la lista de acciones. En una realización, la versión del componente se incluye en el identificador de componente proporcionado en la lista de acciones. Si las dos versiones de los componentes son la misma, no se necesitan otras medidas con respecto a dicho componente y el procedimiento continúa con el bloque 416. Si las dos versiones de los componentes son diferentes, entonces la lógica de procesado 208 opera para realizar la acción asociada con el componente y el procedimiento continúa con el bloque 312.
En el bloque 312, la acción asociada con el componente en el par actual componente/acción se realiza para cambiar el estado del componente identificado. Por ejemplo, la lógica de procesado 208 opera para controlar la lógica de acción 214 para realizar la acción de la instalar, actualizar, eliminar, activar, desactivar, rellamar o de otra forma cambiar el estado del componente identificado. Por ejemplo, se puede realizar una rellamada suave cuando el componente se elimina del dispositivo, pero los datos asociados y/o información sobre licencia no se eliminan. Por ejemplo, si la acción es instalar o actualizar el componente, la lógica de procesado 208 opera para descargar el componente 222 (o actualización) del servidor de descarga a través de la red de datos. El componente descargado se instala como un componente instalado 226. La lógica de procesado 208 puede llevar a cabo cualquier tipo de procedimiento de instalación o actualización para instalar o actualizar el componente descargado 222 como un componente instalado 226. Si la acción es eliminar un componente, la lógica de procesado 208 controla la lógica de eliminación 220 para eliminar el componente identificado de los componentes instalados 226. Aunque no se muestra en Las Figuras 2 y 3, puede llevarse a cabo prácticamente cualquier tipo de acción en lo que respecta al componente, como instalar, actualizar, eliminar, rellamar, activar y desactivar, etc.
En el bloque 314, se actualiza una lista de versiones de componentes para reflejar que una nueva versión del componente ha sido instalada o actualizada, o que el componente se ha eliminado. Por ejemplo, la lógica de procesado 208 controla la lógica de actualización de versión 224 para actualizar los identificadores almacenados de versión de componente 212 con la nueva información sobre el componente actualmente procesado.
En el bloque 316, se realiza una prueba para determinar si todos los pares componente/acción en la lista de acciones han sido procesados. Si todos los pares han sido procesados, el procedimiento continúa con el bloque
320. Si no todos los pares han sido procesados, el procedimiento continúa con el bloque 318 donde se accede al par siguiente para su procesado en el bloque 310. La lista de acciones 210 puede ser de cualquier longitud, por lo que puede existir cualquier número de pares componente/acción para procesar.
En el bloque 320, se actualiza el identificador almacenado de versión de lista de acciones en el dispositivo. Por ejemplo, la lógica de procesado 208 controla la lógica de actualización de versión 224 para actualizar el identificador almacenado de versión de lista de acciones 204 con el identificador asociado con la lista de acciones procesado más recientemente. Así, el sistema no procesará otra lista de acciones hasta que se encuentre disponible una nueva versión de la lista de acciones.
En una realización, el sistema para procesar automáticamente componentes en el dispositivo comprende instrucciones de programa almacenadas en un medio legible por ordenador, que cuando son ejecutadas por la lógica de procesado 208, proporcionan las funciones descritas en este documento. Por ejemplo, las instrucciones pueden cargarse en el dispositivo 200 desde un medio legible por ordenador, tal como un disquete, CD-ROM, tarjeta de memoria, dispositivo de memoria flash, RAM, ROM o cualquier otro tipo de dispositivo de memoria o medio legible por ordenador que se conecta al dispositivo 200. En otra realización, las instrucciones pueden descargarse en el dispositivo 200 desde un recurso de red que interconecta al dispositivo 200 a través de una red de datos. Las instrucciones, cuando son ejecutadas por la lógica de procesado 208, proporcionan una o más realizaciones de un sistema para procesar automáticamente componentes en el dispositivo como se describe en este documento.
Debe destacarse que el procedimiento 300 ilustra una realización y que se pueden hacer, cambios, adiciones o reordenamientos de los elementos del procedimiento sin alejarse del alcance de la invención.
La Figura 4 muestra transacciones 400 que se producen entre un servidor de descarga y un dispositivo durante el funcionamiento de una realización de un sistema para procesar automáticamente componentes del dispositivo. Por ejemplo, la transacción 400 puede producirse entre el dispositivo 106 y el servidor 102 mostrado en la Figura 1.
Al comienzo del proceso automático, el dispositivo 106 solicita el identificador de versión más reciente de lista de acciones al servidor 102, como se muestra en 402. La lista de acciones comprende pares componente/acción que describen una acción que el dispositivo debe llevar a cabo respecto a cada componente identificado. La lista de acciones puede ser cambiada o actualizada periódicamente y el identificador de versión de lista de acciones identifica la versión actual de la lista de acciones.
El servidor 102 responde a la solicitud desde el dispositivo 102 transmitiendo el identificador de versión de la lista de acciones actual, como se muestra en 404. Después de recibir identificador de versión de lista de acciones, el dispositivo compara el identificador con un identificador almacenado de versión de lista de acciones. Si los dos identificadores de versión son equivalentes, entonces el dispositivo no realiza ninguna acción adicional. Si los dos identificadores de versión son diferentes, entonces el dispositivo 102 solicita una nueva lista de acciones al servidor 102, como se muestra en 406.
El servidor 102 responde a la solicitud desde el dispositivo 106 mediante la transmisión de la nueva lista de acciones, como se muestra en 408. El dispositivo 106 procesa cada par componente/acción en la lista de acciones para determinar si debe o no instalar, actualizar o eliminar un determinado componente. Si el dispositivo 106 determina que un componente en particular necesita ser instalado o actualizado, el dispositivo 106 pide el componente (o actualización) al servidor 102 como se muestra en 410.
El servidor 102 responde a la solicitud transmitiendo el componente solicitado al dispositivo 106. El dispositivo 106 recibe el componente y realiza la instalación o actualización según sea necesario. El componente puede tener un identificador de versión del componente que el dispositivo almacena localmente. Después de que el dispositivo 106 analice toda la lista de acciones y recupere todos los elementos necesarios desde el servidor 102 tal y como es necesario, el dispositivo 106 actualiza un identificador de versión de lista de acciones almacenado localmente con la versión de la lista de acciones que se acaba de procesar. Así, el dispositivo 106 no procesará otra lista de acciones del servidor 102 hasta que el identificador de versión de lista de descargado desde el servidor es diferente del identificador almacenado.
La Figura 5 muestra una forma de realización de una lista de acciones 500 para su uso en un sistema para procesar automáticamente componentes en un dispositivo. La lista de acciones 500 comprende un identificador de versión de lista de acciones 502 seguido por pares componente/acción (504, 506). Por ejemplo, el par componente/acción 504 comprende un identificador de componente y una acción correspondiente. En una
5 realización, el identificador de componente también incluye un identificador de versión del componente, de modo que la versión del componente se puede utilizar para determinar si el componente actualmente existe o no en el dispositivo. La acción puede ser una de "instalar", "actualizar" o "eliminar" sin embargo, cualquier otro tipo de acción puede ser especificada. La información en la lista de acciones puede ser codificada utilizando cualquier formato adecuado y los identificadores de componente y acción pueden ser de cualquier tipo.
10 En consecuencia, mientras que se han ilustrado y descrito aquí una o más realizaciones de un sistema para procesar automáticamente componentes en un dispositivo, se apreciará que se pueden hacer diferentes cambios a las realizaciones sin alejarse de sus características esenciales. Por lo tanto, las divulgaciones y descripciones en este documento pretenden ser ilustrativas, pero no limitar el alcance de la invención, que se expone en las siguientes reivindicaciones.
Claims (7)
- REIVINDICACIONES1. Un procedimiento para procesar automáticamente componentes (112, 116, 222) en un dispositivo (106), comprendiendo el procedimiento:recibir (302, 404) un identificador de versión (108, 202, 502) de una lista de acciones (110, 210, 500), en donde la lista de acciones (110, 210, 500) comprende pares componente/acción (504, 506) que describen una acción que el dispositivo (106) debe realizar con respecto a cada componente identificado (112, 116, 222);comparar (304) el identificador de versión recibido (108, 202, 502) con un identificador de versión almacenado (114) que representa la versión de la última lista de acciones procesada por el dispositivo (106);determinar (304) que el identificador de versión recibido (108, 202, 502) no es equivalente al identificador de versión almacenado (114);recibir (306, 408) la lista de acciones (110, 210, 500) sólo cuando el identificador de versión recibido (108, 202, 502) no es equivalente al identificador de versión almacenada (114);procesar (308) cada par componente/acción (504, 506) en la lista de acciones recibidas (110, 210, 500) para obtener un identificador de componente y una acción asociada, en donde el identificador de componente obtenido incluye información acerca de la versión del componente identificado (112, 116, 222);comparar (310) una versión del componente almacenado (118) con la versión del componente identificado (112, 116, 222);descargar (412) el componente (112, 116, 222) identificado por el identificador de componente obtenido sólo cuando la versión del componente almacenada (118) y la versión del componente identificado (112, 116, 222) son diferentes;realizar (312) una acción de la lista de acciones recibida (110, 210, 500) en el componente asociado, descargado (112, 116, 222) identificado por el identificador de componente obtenido;actualizar la versión del componente almacenada (118) con la versión del componente descargado (112, 116, 222), yactualizar (320) el identificador almacenado (114) para que sea equivalente al identificador de versión (108, 202, 502) de la lista de acciones recibida (110, 210, 500).
-
- 2.
- El procedimiento según la reivindicación 1, caracterizado porque la acción de la lista de acciones recibida (110, 210, 500) es instalar y la etapa de realizar (312) comprende instalar el componente asociado descargado (112, 116, 222) en el dispositivo (106).
-
- 3.
- El procedimiento según la reivindicación 1, en el que el identificador de versión (108, 202, 502), la lista de acciones (110, 210, 500), y el componente (112, 116, 222) se reciben reciben de un servidor (102).
-
- 4.
- El procedimiento según la reivindicación 1, caracterizado porque el dispositivo (106) es un dispositivo inalámbrico.
-
- 5.
- Aparato para procesar automáticamente componentes (112, 116, 222) en un dispositivo (106), el aparato comprendiendo:
medios para recibir un identificador de versión (108, 202, 502) de una lista de acciones (110, 210, 500), en donde la lista de acciones (110, 210, 500) comprende los pares componente/acción (504, 506) que describen una acción que el dispositivo (106) debe realizar con respecto a cada componente identificado (112, 116, 222);medios para comparar el identificador de versión recibido (108, 202, 502) con un identificador de versión almacenado (114) que representa la versión de la última lista de acciones procesada por el dispositivo (106);medios para determinar que el identificador de versión recibido (108, 202, 502) no es equivalente al identificador de versión almacenado (114);medios para recibir la lista de acciones (110, 210, 500) sólo cuando el identificador de versión recibido (108, 202, 502) no es equivalente al identificador de versión almacenado (114);medios para procesar cada par componente/acción (504, 506) en la lista de acciones recibida (110, 210, 500) para obtener un identificador de componente y una acción asociada, en donde el identificador de componente obtenido incluye información acerca de la versión del componente identificado ( 112, 116, 222);medios para comparar una versión del componente almacenada (118) con la versión del componente identificado (112, 116, 222);medios para descargar el componente (112, 116, 222) identificado por el identificador de componente obtenido sólo cuando la versión del componente almacenada (118) y la versión del componente identificado (112, 116, 222) son diferentes;medios para realizar una acción de la lista de acciones recibida (110, 210, 500) en el componente asociado descargado (112, 116, 222) identificado por el identificador de componente obtenido;medios para la actualizar la versión del componente almacenada (118) con la versión del componente descargado (112, 116, 222), ymedios para actualizar (320) el identificador almacenado (114) para que sea equivalente al identificador de versión (108, 202, 502) de la lista de acciones recibida (110, 210, 500). -
- 6.
- El aparato según la reivindicación 5, en el que los medios para realizar comprenden medios para instalar el componente asociado, descargado (112, 116, 222) en el dispositivo (106).
-
- 7.
- Un medio legible por ordenador que comprende instrucciones, que al ser ejecutadas por la lógica de procesado en un dispositivo (106), funcionan para procesar automáticamente los componentes en el dispositivo (106) para realizar un procedimiento según cualquiera de las reivindicaciones 1 a 4.
Applications Claiming Priority (7)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US43582802P | 2002-12-20 | 2002-12-20 | |
| US43548602P | 2002-12-20 | 2002-12-20 | |
| US435828P | 2002-12-20 | ||
| US435486P | 2002-12-20 | ||
| US740355 | 2003-12-18 | ||
| US10/740,355 US9092286B2 (en) | 2002-12-20 | 2003-12-18 | System to automatically process components on a device |
| PCT/US2003/040926 WO2004059438A2 (en) | 2002-12-20 | 2003-12-19 | System to automatically process components on a device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2387482T3 true ES2387482T3 (es) | 2012-09-24 |
Family
ID=32686085
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES03800088T Expired - Lifetime ES2387482T3 (es) | 2002-12-20 | 2003-12-19 | Sistema para procesar automáticamente componentes en un dispositivo |
Country Status (11)
| Country | Link |
|---|---|
| US (2) | US9092286B2 (es) |
| EP (1) | EP1584007B1 (es) |
| JP (2) | JP2006517694A (es) |
| KR (2) | KR20110082585A (es) |
| AT (1) | ATE556371T1 (es) |
| AU (1) | AU2003299814A1 (es) |
| BR (1) | BR0317522A (es) |
| CA (1) | CA2511049A1 (es) |
| ES (1) | ES2387482T3 (es) |
| MX (1) | MXPA05006753A (es) |
| WO (1) | WO2004059438A2 (es) |
Families Citing this family (35)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9134989B2 (en) | 2002-01-31 | 2015-09-15 | Qualcomm Incorporated | System and method for updating dataset versions resident on a wireless device |
| US20040068724A1 (en) * | 2002-08-30 | 2004-04-08 | Gardner Richard Wayne | Server processing for updating dataset versions resident on a wireless device |
| US9092286B2 (en) * | 2002-12-20 | 2015-07-28 | Qualcomm Incorporated | System to automatically process components on a device |
| US8626146B2 (en) | 2003-10-29 | 2014-01-07 | Qualcomm Incorporated | Method, software and apparatus for performing actions on a wireless device using action lists and versioning |
| US20060230183A1 (en) * | 2005-04-07 | 2006-10-12 | Samsung Electronics Co., Ltd. | Method and apparatus for synchronizing content with a collection of home devices |
| US20070082664A1 (en) * | 2005-10-07 | 2007-04-12 | Agere Systems, Inc. | Device and method to enhance call center support for mobile communications devices |
| KR100871840B1 (ko) * | 2006-08-17 | 2008-12-03 | 한국전자통신연구원 | Smmd 기반 유비쿼터스 홈 미디어 서비스 장치 및 방법과, 그를 이용한 홈 미디어 서비스 시스템 및 그 방법 |
| US7530079B2 (en) * | 2006-09-07 | 2009-05-05 | Microsoft Corporation | Managing application customization |
| US20080127055A1 (en) * | 2006-09-07 | 2008-05-29 | Microsoft Corporation | Application proxy |
| US8850388B2 (en) * | 2006-09-07 | 2014-09-30 | Microsoft Corporation | Controlling application features |
| US7908580B2 (en) * | 2006-09-07 | 2011-03-15 | Microsoft Corporation | Connecting an integrated development environment with an application instance |
| KR101134214B1 (ko) | 2007-06-19 | 2012-04-09 | 콸콤 인코포레이티드 | 무선 환경에서 데이터세트 동기화를 위한 방법들 및 장치 |
| KR100881723B1 (ko) * | 2007-09-21 | 2009-02-06 | 한국전자통신연구원 | 미디어 실감 재현을 위한 디바이스 연동/제어 정보 생성장치 및 방법 |
| KR100974908B1 (ko) * | 2007-12-15 | 2010-08-09 | 한국전자통신연구원 | Smmd 기반 사용자 맞춤형 미디어 서비스 시스템 및방법 |
| KR101667416B1 (ko) * | 2008-07-16 | 2016-10-19 | 한국전자통신연구원 | 실감 효과 표현 방법 및 그 장치 및 실감 기기 성능 메타데이터가 기록된 컴퓨터로 읽을 수 있는 기록 매체 |
| WO2010008233A2 (ko) * | 2008-07-16 | 2010-01-21 | 한국전자통신연구원 | 실감 효과 표현 방법 및 그 장치 및 사용자 환경 정보 메타데이터가 기록된 컴퓨터로 읽을 수 있는 기록 매체 |
| KR20100008774A (ko) * | 2008-07-16 | 2010-01-26 | 한국전자통신연구원 | 실감 효과 표현 방법 및 그 장치 및 실감 효과 메타데이터가 기록된 컴퓨터로 읽을 수 있는 기록 매체 |
| KR20100008777A (ko) * | 2008-07-16 | 2010-01-26 | 한국전자통신연구원 | 실감 효과 표현 방법 및 그 장치 및 실감 기기 제어 메타데이터가 기록된 컴퓨터로 읽을 수 있는 기록 매체 |
| US8489210B2 (en) | 2009-03-24 | 2013-07-16 | Rockwell Automation Technologies, Inc. | Electronic operator interface based controller and device automatic downloads |
| JP5392203B2 (ja) * | 2010-08-19 | 2014-01-22 | 株式会社リコー | 情報処理装置、情報処理システム、インストール支援方法、及びインストール支援プログラム |
| US20120131570A1 (en) * | 2010-11-18 | 2012-05-24 | Nokia Corporation | Method and apparatus for customizing device content |
| CN102012826A (zh) * | 2010-11-19 | 2011-04-13 | 奇智软件(北京)有限公司 | 一种软件智能安装/升级的方法及系统 |
| CN102694674A (zh) * | 2011-03-25 | 2012-09-26 | 华为技术有限公司 | 接入网络中的升级方法、装置和接入网络 |
| US9256484B2 (en) * | 2013-06-09 | 2016-02-09 | Apple Inc. | Dynamic adjustment of mobile device based on user activity |
| US10223156B2 (en) | 2013-06-09 | 2019-03-05 | Apple Inc. | Initiating background updates based on user activity |
| US9432796B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Dynamic adjustment of mobile device based on peer event data |
| US9323518B1 (en) * | 2014-07-29 | 2016-04-26 | Symantec Corporation | Systems and methods for modifying applications without user input |
| US10447812B2 (en) | 2015-06-05 | 2019-10-15 | Apple Inc. | On demand resources |
| US10491708B2 (en) | 2015-06-05 | 2019-11-26 | Apple Inc. | Context notifications |
| CN113110849A (zh) * | 2015-06-05 | 2021-07-13 | 苹果公司 | 按需加载资源 |
| CN109981522A (zh) * | 2017-12-27 | 2019-07-05 | 深圳市优必选科技有限公司 | 通信协议的兼容方法及装置 |
| JP7484096B2 (ja) * | 2018-08-10 | 2024-05-16 | 株式会社デンソー | 電子制御装置、書換えの実行制御方法及び書換えの実行制御プログラム |
| CN113535221B (zh) * | 2020-04-16 | 2024-10-18 | 北京沃东天骏信息技术有限公司 | 应用版本管理的方法和装置 |
| US11888956B2 (en) * | 2021-06-11 | 2024-01-30 | Microsoft Technology Licensing, Llc | Paginated data transfer techniques |
| US12073209B2 (en) | 2022-03-29 | 2024-08-27 | Bank Of America Corporation | System for enhanced component-level detection in software applications within a computing environment |
Family Cites Families (212)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5210507A (en) | 1975-07-15 | 1977-01-26 | Seiko Instr & Electronics Ltd | Step motor for watch |
| US5155847A (en) | 1988-08-03 | 1992-10-13 | Minicom Data Corporation | Method and apparatus for updating software at remote locations |
| WO1991002313A1 (en) | 1989-08-03 | 1991-02-21 | International Business Machines Corporation | Data processing network |
| US5473772A (en) | 1991-04-02 | 1995-12-05 | International Business Machines Corporation | Automatic update of static and dynamic files at a remote network node in response to calls issued by or for application programs |
| JP3271284B2 (ja) | 1992-01-31 | 2002-04-02 | 富士通株式会社 | マルチホストシステムにおけるリモートメンテナンスシステム |
| JPH08106393A (ja) | 1994-10-06 | 1996-04-23 | Matsushita Electric Ind Co Ltd | 携帯端末システム |
| US5761618A (en) | 1994-12-22 | 1998-06-02 | Bell Atlantic Mobile Systems, Inc. | Updating technique for downloading new system identification (SID) list into a handset |
| US5612682A (en) | 1995-05-30 | 1997-03-18 | Motorola, Inc. | Method and apparatus for controlling utilization of a process added to a portable communication device |
| US6003030A (en) * | 1995-06-07 | 1999-12-14 | Intervu, Inc. | System and method for optimized storage and retrieval of data on a distributed computer network |
| US6748209B2 (en) | 1995-10-30 | 2004-06-08 | At&T Wireless Services, Inc. | Method and apparatus for storing activation data in a cellular telephone |
| FI955188A7 (fi) | 1995-10-30 | 1997-06-24 | Nokia Corp | Matkaviestimen ohjelmiston ylläpito |
| DE19543843C2 (de) | 1995-11-24 | 2001-02-08 | Acer Peripherals Inc | Verfahren zur Aktualisierung der Software in einem mikrocomputergestützten Telefon |
| US5845077A (en) | 1995-11-27 | 1998-12-01 | Microsoft Corporation | Method and system for identifying and obtaining computer software from a remote computer |
| US5920821A (en) | 1995-12-04 | 1999-07-06 | Bell Atlantic Network Services, Inc. | Use of cellular digital packet data (CDPD) communications to convey system identification list data to roaming cellular subscriber stations |
| WO1997029606A1 (en) | 1996-02-12 | 1997-08-14 | British Telecommunications Public Limited Company | Telephone system |
| JPH09292980A (ja) | 1996-04-25 | 1997-11-11 | N T T Data Tsushin Kk | ファイル配布システム |
| US6074434A (en) | 1996-06-07 | 2000-06-13 | International Business Machines Corporation | Selection of code updates, data updates or new data for client |
| US6151643A (en) * | 1996-06-07 | 2000-11-21 | Networks Associates, Inc. | Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer |
| JPH1021061A (ja) | 1996-07-05 | 1998-01-23 | Nec Corp | クライアントソフトウェア自動バージョンアップシステム |
| JPH1049354A (ja) | 1996-08-05 | 1998-02-20 | Fuji Xerox Co Ltd | 情報処理システム |
| US6643506B1 (en) * | 1996-08-07 | 2003-11-04 | Telxon Corporation | Wireless software upgrades with version control |
| US6308061B1 (en) | 1996-08-07 | 2001-10-23 | Telxon Corporation | Wireless software upgrades with version control |
| US5848064A (en) | 1996-08-07 | 1998-12-08 | Telxon Corporation | Wireless software upgrades with version control |
| US6006034A (en) * | 1996-09-05 | 1999-12-21 | Open Software Associates, Ltd. | Systems and methods for automatic application version upgrading and maintenance |
| US5926624A (en) | 1996-09-12 | 1999-07-20 | Audible, Inc. | Digital information library and delivery system with logic for generating files targeted to the playback device |
| GB9623298D0 (en) | 1996-11-08 | 1997-01-08 | Int Computers Ltd | Updating mechanism for software |
| KR19980039102A (ko) | 1996-11-27 | 1998-08-17 | 배순훈 | 표면실장 부품용 장착 좌표 입력장치 및 방법 |
| US6799037B1 (en) | 1996-12-12 | 2004-09-28 | Verizon Airfone Inc. | Method and apparatus for communication with a mobile unit |
| US6009274A (en) * | 1996-12-13 | 1999-12-28 | 3Com Corporation | Method and apparatus for automatically updating software components on end systems over a network |
| US6564048B1 (en) | 1996-12-18 | 2003-05-13 | Sony Corporation | Radio communication system and method and mobile communication terminal device |
| US5995756A (en) | 1997-02-14 | 1999-11-30 | Inprise Corporation | System for internet-based delivery of computer applications |
| US6023620A (en) | 1997-02-26 | 2000-02-08 | Telefonaktiebolaget Lm Ecrisson | Method for downloading control software to a cellular telephone |
| DE19708021C1 (de) | 1997-02-27 | 1998-08-13 | Siemens Ag | Verfahren zur Regelung eines Zugriffs von Rechnern auf Daten eines zentralen Rechners |
| US6314565B1 (en) * | 1997-05-19 | 2001-11-06 | Intervu, Inc. | System and method for automated identification, retrieval, and installation of multimedia software components |
| US5913213A (en) | 1997-06-16 | 1999-06-15 | Telefonaktiebolaget L M Ericsson | Lingering locks for replicated data objects |
| TW503368B (en) | 1997-06-30 | 2002-09-21 | Inst Information Industry | Automatic software version updating method |
| JP3567696B2 (ja) | 1997-09-24 | 2004-09-22 | 松下電器産業株式会社 | ソフトウェアダウンロードシステム |
| EP0907285A1 (en) | 1997-10-03 | 1999-04-07 | CANAL+ Société Anonyme | Downloading data |
| JPH11110197A (ja) | 1997-10-06 | 1999-04-23 | Sanyo Electric Co Ltd | ソフトウェア管理装置 |
| KR100258969B1 (ko) | 1997-11-20 | 2000-06-15 | 윤종용 | 무선 통신기기의 펌웨어 업그레이드 방법 및 기지국에서의펌웨어 업그레이드 지원방법 |
| US6151708A (en) | 1997-12-19 | 2000-11-21 | Microsoft Corporation | Determining program update availability via set intersection over a sub-optical pathway |
| KR19990057991A (ko) | 1997-12-30 | 1999-07-15 | 윤종용 | 무선통신단말기의 프로그램 무선 업그레이드 시스템 및 방법 |
| US6035423A (en) * | 1997-12-31 | 2000-03-07 | Network Associates, Inc. | Method and system for providing automated updating and upgrading of antivirus applications using a computer network |
| GB2333864B (en) | 1998-01-28 | 2003-05-07 | Ibm | Distribution of software updates via a computer network |
| WO1999045465A1 (en) | 1998-03-03 | 1999-09-10 | Siebel Systems, Inc. | Method, system, apparatus and program product for distribution and instantiation of software upgrades |
| US7080371B1 (en) * | 1998-03-03 | 2006-07-18 | Siebel Systems, Inc. | Method, system, apparatus and program product for distribution and instantiation of software upgrades |
| JPH11331937A (ja) | 1998-03-09 | 1999-11-30 | Sony Corp | 情報システム |
| US6167567A (en) * | 1998-05-05 | 2000-12-26 | 3Com Corporation | Technique for automatically updating software stored on a client computer in a networked client-server environment |
| EP0959635A1 (en) | 1998-05-20 | 1999-11-24 | Alcatel | Connectionless downloading of software to wireless terminals |
| EP0961462B1 (en) | 1998-05-27 | 2006-06-07 | Nec Corporation | Radio communication apparatus capable of updating a menu of services with dial information |
| US6735625B1 (en) * | 1998-05-29 | 2004-05-11 | Cisco Technology, Inc. | System and method for automatically determining whether a product is compatible with a physical device in a network |
| US6272333B1 (en) | 1998-06-12 | 2001-08-07 | Motorola, Inc. | Method and apparatus in a wireless communication system for controlling a delivery of data |
| US6381742B2 (en) * | 1998-06-19 | 2002-04-30 | Microsoft Corporation | Software package management |
| US6272677B1 (en) | 1998-08-28 | 2001-08-07 | International Business Machines Corporation | Method and system for automatic detection and distribution of code version updates |
| US6418554B1 (en) | 1998-09-21 | 2002-07-09 | Microsoft Corporation | Software implementation installer mechanism |
| JP2000132397A (ja) | 1998-10-22 | 2000-05-12 | Hitachi Ltd | クライアントとサーバおよびそれらを用いたソフトウェア配布システム |
| JP2000132355A (ja) | 1998-10-28 | 2000-05-12 | Fujitsu Ltd | 情報処理装置及び情報処理方法並びにコンピュータ読み取り可能な記録媒体 |
| US6590881B1 (en) | 1998-12-04 | 2003-07-08 | Qualcomm, Incorporated | Method and apparatus for providing wireless communication system synchronization |
| AU763524B2 (en) | 1999-03-02 | 2003-07-24 | Flexera Software Llc | Data file synchronisation |
| US6735766B1 (en) * | 1999-03-03 | 2004-05-11 | Microsoft Corporation | Method and computer-readable medium for installing an upgrade to an application program |
| JP2000276335A (ja) | 1999-03-29 | 2000-10-06 | Nec Soft Ltd | プログラム自動更新システム |
| JP3254434B2 (ja) | 1999-04-13 | 2002-02-04 | 三菱電機株式会社 | データ通信装置 |
| JP4159750B2 (ja) | 1999-05-14 | 2008-10-01 | 富士通株式会社 | 分散計算機システム及びメンテナンスデータ適用方法 |
| US6675382B1 (en) | 1999-06-14 | 2004-01-06 | Sun Microsystems, Inc. | Software packaging and distribution system |
| US6381618B1 (en) | 1999-06-17 | 2002-04-30 | International Business Machines Corporation | Method and apparatus for autosynchronizing distributed versions of documents |
| US6966060B1 (en) * | 1999-07-02 | 2005-11-15 | Microsoft Corporation | Method and system for remote client installation |
| JP2001043073A (ja) | 1999-08-02 | 2001-02-16 | Nippon Telegr & Teleph Corp <Ntt> | 通信装置のソフトウェア変更方法及び通信装置 |
| JP3562393B2 (ja) | 1999-08-11 | 2004-09-08 | 日本電気株式会社 | 移動通信システム及びそれに用いるプログラムダウンロード方法 |
| JP3669619B2 (ja) * | 1999-09-06 | 2005-07-13 | 富士通株式会社 | 無線端末装置のソフトウェア更新方法及びその装置 |
| JP2001075785A (ja) | 1999-09-09 | 2001-03-23 | Nec Corp | データ更新システム |
| US6493871B1 (en) * | 1999-09-16 | 2002-12-10 | Microsoft Corporation | Method and system for downloading updates for software installation |
| US6742025B2 (en) | 1999-09-30 | 2004-05-25 | International Business Machines Corp. | System and method for server managed modification of operating system data stored within a network device |
| JP4501185B2 (ja) | 1999-09-30 | 2010-07-14 | セイコーエプソン株式会社 | サーバシステムおよび端末 |
| TW448404B (en) | 1999-10-28 | 2001-08-01 | Inventec Corp | Intellectualized method for installing hardware |
| US6754894B1 (en) * | 1999-12-03 | 2004-06-22 | Command Audio Corporation | Wireless software and configuration parameter modification for mobile electronic devices |
| US6816944B2 (en) * | 2000-02-02 | 2004-11-09 | Innopath Software | Apparatus and methods for providing coordinated and personalized application and data management for resource-limited mobile devices |
| US20010042099A1 (en) | 2000-02-02 | 2001-11-15 | Doongo Technologies, Inc. | Apparatus and methods for optimizing traffic volume in wireless email communications |
| JP2001223799A (ja) | 2000-02-10 | 2001-08-17 | Nec Corp | 移動体通信システムおよびプログラム伝送方法 |
| JP4479040B2 (ja) | 2000-03-07 | 2010-06-09 | ソニー株式会社 | 通信装置及び通信方法 |
| JP2001256053A (ja) | 2000-03-09 | 2001-09-21 | Toshiba Corp | ソフトウェアモジュール転送方法、クライアントコンピュータ、及びクライアントサーバコンピュータシステム |
| US6560604B1 (en) | 2000-03-10 | 2003-05-06 | Aether Systems, Inc. | System, method, and apparatus for automatically and dynamically updating options, features, and/or services available to a client device |
| JP2001268026A (ja) | 2000-03-17 | 2001-09-28 | Hitachi Ltd | 情報送受信方法及びその装置 |
| US6820088B1 (en) | 2000-04-10 | 2004-11-16 | Research In Motion Limited | System and method for synchronizing data records between multiple databases |
| JP3833045B2 (ja) | 2000-04-14 | 2006-10-11 | シャープ株式会社 | プログラムダウンロードシステム及びプログラムダウンロード方法 |
| US7310801B2 (en) * | 2000-04-27 | 2007-12-18 | Microsoft Corporation | Servicing a component-based software product throughout the software product lifecycle |
| US6751794B1 (en) * | 2000-05-25 | 2004-06-15 | Everdream Corporation | Intelligent patch checker |
| JP2001337832A (ja) | 2000-05-26 | 2001-12-07 | Nec Corp | 端末装置 |
| US6725452B1 (en) | 2000-06-01 | 2004-04-20 | Aduoa, Inc. | Method for resolving dependency conflicts among multiple operative entities within a computing environment |
| US7140013B2 (en) | 2000-06-01 | 2006-11-21 | Aduva, Inc. | Component upgrading with dependency conflict resolution, knowledge based and rules |
| JP2003536292A (ja) | 2000-06-09 | 2003-12-02 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 移動体通信ユニットへの支援を提供する方法及びシステム |
| JP2001356912A (ja) | 2000-06-12 | 2001-12-26 | Fujitsu Ltd | ソフトウェアのインストール/アップデート/アンインストールシステム |
| GB2348721A (en) | 2000-07-15 | 2000-10-11 | Ideagen Software Limited | Automated software or data updating in distributed computing system |
| KR20020009741A (ko) | 2000-07-26 | 2002-02-02 | 황보영철 | 휴대전화단말기의 오퍼레이팅 기반환경 구축장치 및 이를이용한 응용프로그램의 무선 업그레이드 방법 |
| US20040003266A1 (en) * | 2000-09-22 | 2004-01-01 | Patchlink Corporation | Non-invasive automatic offsite patch fingerprinting and updating system and method |
| US6832373B2 (en) * | 2000-11-17 | 2004-12-14 | Bitfone Corporation | System and method for updating and distributing information |
| JP2004514214A (ja) * | 2000-11-17 | 2004-05-13 | ビットフォン コーポレイション | 情報をアップデートおよび配布するシステムおよび方法 |
| US7149792B1 (en) * | 2000-11-20 | 2006-12-12 | Axeda Corporation | Device registration mechanism |
| US20020131404A1 (en) * | 2000-11-28 | 2002-09-19 | 4Thpass Inc. | Method and system for maintaining and distributing wireless applications |
| WO2002046914A2 (en) | 2000-12-07 | 2002-06-13 | Aduva Inc. | Improved method for resolving dependency conflicts among multiple operative entities within a computing environment |
| US6959436B2 (en) | 2000-12-15 | 2005-10-25 | Innopath Software, Inc. | Apparatus and methods for intelligently providing applications and data on a mobile device system |
| DE60124955D1 (de) * | 2000-12-20 | 2007-01-11 | Quiet Storm Llc | Vorrichtung zur verbesserten lärmdämpfung in einem absorptionsdämpfer einer brennkraftmaschine |
| US7143406B2 (en) * | 2001-01-23 | 2006-11-28 | Wildtangent, Inc. | Asynchronous software update |
| JP2002215692A (ja) | 2001-01-24 | 2002-08-02 | Canon Inc | 情報処理装置及び方法 |
| US7127712B1 (en) * | 2001-02-14 | 2006-10-24 | Oracle International Corporation | System and method for providing a java code release infrastructure with granular code patching |
| DE10110949A1 (de) * | 2001-03-07 | 2002-09-26 | Siemens Ag | Automatisierte Versions-Analyse von zu einer Softwareapplikation gehörenden Softwarekomponenten |
| JP2002278754A (ja) * | 2001-03-15 | 2002-09-27 | Toshiba Corp | ソフトウェア部品ライブラリ管理システム、その方法およびソフトウェア部品ライブラリ管理プログラム |
| JP2002278767A (ja) | 2001-03-16 | 2002-09-27 | Kenwood Corp | ネットワーク通信システム、サーバ装置、携帯端末、通信方法及びプログラム |
| US20040015953A1 (en) * | 2001-03-19 | 2004-01-22 | Vincent Jonathan M. | Automatically updating software components across network as needed |
| US8201162B2 (en) | 2001-03-19 | 2012-06-12 | Sony Corporation | Software updating system, software updating method, and software updating program |
| JP4827310B2 (ja) * | 2001-03-30 | 2011-11-30 | パナソニック株式会社 | リモートプログラムダウンロードシステム |
| US20020157090A1 (en) * | 2001-04-20 | 2002-10-24 | Anton, Jr. Francis M. | Automated updating of access points in a distributed network |
| US6957212B2 (en) | 2001-04-24 | 2005-10-18 | Innopath Software, Inc. | Apparatus and methods for intelligently caching applications and data on a gateway |
| US20030023516A1 (en) | 2001-05-17 | 2003-01-30 | Sharrow Sherry L. | Inventory management database |
| US20020177437A1 (en) * | 2001-05-23 | 2002-11-28 | David Chesavage | System and method for maintaining a distributed object system |
| JP2004536405A (ja) * | 2001-07-16 | 2004-12-02 | ユキング レン | 組み込みソフトウェア更新システム |
| US7178141B2 (en) * | 2001-07-30 | 2007-02-13 | International Business Machines Corporation | Method and system for identifying compatibility between firmware images |
| US7962622B2 (en) | 2001-08-07 | 2011-06-14 | Motorola Mobility, Inc. | System and method for providing provisioning and upgrade services for a wireless device |
| US7243163B1 (en) | 2001-08-07 | 2007-07-10 | Good Technology, Inc. | System and method for full wireless synchronization of a data processing apparatus with a messaging system |
| US7003767B2 (en) * | 2001-10-02 | 2006-02-21 | International Business Machines Corp. | System and method for remotely updating software applications |
| KR100557022B1 (ko) | 2001-10-06 | 2006-03-03 | 주식회사 비즈모델라인 | 무선 바이러스 차단 방법 및 시스템 |
| US20030078036A1 (en) | 2001-10-19 | 2003-04-24 | Yuan-Jung Chang | Device and method for automatically installing software by wireless identification |
| KR20030033396A (ko) | 2001-10-22 | 2003-05-01 | 주식회사 지트랜코리아 | 무선 단말기의 업그레이드 방법 |
| US20030100297A1 (en) | 2001-11-27 | 2003-05-29 | Riordan Kenneth B. | Method of software configuration assurance in programmable terminal devices |
| US20030110484A1 (en) * | 2001-12-10 | 2003-06-12 | David Famolari | Method and apparatus utilizing bluetooth transmission protocols to update software resident on a network of computing devices |
| US20030145315A1 (en) * | 2002-01-23 | 2003-07-31 | Tuomo Aro | Exchange of data between components of distributed software having different versions of software |
| US9134989B2 (en) * | 2002-01-31 | 2015-09-15 | Qualcomm Incorporated | System and method for updating dataset versions resident on a wireless device |
| WO2003083667A1 (en) | 2002-03-29 | 2003-10-09 | Good Technology, Inc. | System and method for full wireless synchronization of a data processing apparatus with a data service |
| US7440902B2 (en) * | 2002-04-12 | 2008-10-21 | International Business Machines Corporation | Service development tool and capabilities for facilitating management of service elements |
| US20070169073A1 (en) * | 2002-04-12 | 2007-07-19 | O'neill Patrick | Update package generation and distribution network |
| US7100158B2 (en) * | 2002-04-30 | 2006-08-29 | Toshiba Tec Kabushiki Kaisha | Program management apparatus, program management system, and program management method |
| US7281245B2 (en) * | 2002-06-05 | 2007-10-09 | Microsoft Corporation | Mechanism for downloading software components from a remote source for use by a local software application |
| US20040002943A1 (en) * | 2002-06-28 | 2004-01-01 | Merrill John Wickens Lamb | Systems and methods for application delivery and configuration management of mobile devices |
| US20040031029A1 (en) * | 2002-08-06 | 2004-02-12 | Kyu-Woong Lee | Methods and systems for automatically updating software components in a network |
| US8233893B2 (en) | 2002-08-22 | 2012-07-31 | Hewlett-Packard Development Company, L.P. | Mobile handset update package generator that employs nodes technique |
| US20040068724A1 (en) * | 2002-08-30 | 2004-04-08 | Gardner Richard Wayne | Server processing for updating dataset versions resident on a wireless device |
| US7669197B1 (en) * | 2002-09-12 | 2010-02-23 | Hewlett-Packard Development Company, L.P. | Embedded system employing component architecture platform |
| AU2003294427A1 (en) * | 2002-11-21 | 2004-06-18 | Bitfone Corporation | Update network with support for lifecycle management of update packages and mobile handsets |
| US20040117785A1 (en) * | 2002-12-13 | 2004-06-17 | Samsung Electronics Co., Ltd. | Component download manager for a wireless mobile station and method of operation |
| US20040188510A1 (en) * | 2002-12-20 | 2004-09-30 | Sprigg Stephen A. | System for registry-based automatic installation and component handling on a device |
| US9092286B2 (en) * | 2002-12-20 | 2015-07-28 | Qualcomm Incorporated | System to automatically process components on a device |
| US7925203B2 (en) * | 2003-01-22 | 2011-04-12 | Qualcomm Incorporated | System and method for controlling broadcast multimedia using plural wireless network connections |
| US7149508B2 (en) | 2003-02-05 | 2006-12-12 | Samsung Electronics Co., Ltd. | System and method for delta-based over-the-air software upgrades for a wireless mobile station |
| US20040230965A1 (en) * | 2003-02-28 | 2004-11-18 | Harri Okkonen | Mobile handset network that facilitates interaction between a generic intelligent responsive agent and a service broker server |
| WO2004081758A2 (en) * | 2003-03-12 | 2004-09-23 | Digex, Inc. | System and method for maintaining installed software compliance with build standards |
| US20040224674A1 (en) | 2003-04-07 | 2004-11-11 | O'farrell Robert | System and method for context sensitive mobile data and software update |
| JP3987460B2 (ja) | 2003-04-22 | 2007-10-10 | 株式会社日立コミュニケーションテクノロジー | 無線通信装置及び無線通信網 |
| US7987449B1 (en) * | 2003-05-22 | 2011-07-26 | Hewlett-Packard Development Company, L.P. | Network for lifecycle management of firmware and software in electronic devices |
| US7974613B1 (en) * | 2003-06-16 | 2011-07-05 | Hewlett-Packard Development Company, L.P. | Device capability determination for a mobile device |
| CA2476156A1 (en) | 2003-07-30 | 2005-01-30 | J2X Technologies Inc. | System, computer product and method for enabling wireless data synchronization |
| US7512638B2 (en) | 2003-08-21 | 2009-03-31 | Microsoft Corporation | Systems and methods for providing conflict handling for peer-to-peer synchronization of units of information manageable by a hardware/software interface system |
| US8555273B1 (en) * | 2003-09-17 | 2013-10-08 | Palm. Inc. | Network for updating electronic devices |
| US7752626B1 (en) * | 2003-09-30 | 2010-07-06 | Oracle America, Inc. | System and method for RMI-IIOP request load balancing |
| US8626146B2 (en) | 2003-10-29 | 2014-01-07 | Qualcomm Incorporated | Method, software and apparatus for performing actions on a wireless device using action lists and versioning |
| US7415706B1 (en) * | 2003-12-01 | 2008-08-19 | Cisco Technology, Inc. | Dynamic handling of multiple software component versions for device management |
| JP2005174048A (ja) | 2003-12-12 | 2005-06-30 | Internatl Business Mach Corp <Ibm> | データセット更新装置、端末装置、データセット更新方法、およびプログラム |
| US20050132357A1 (en) * | 2003-12-16 | 2005-06-16 | Microsoft Corporation | Ensuring that a software update may be installed or run only on a specific device or class of devices |
| CN100580653C (zh) * | 2004-03-12 | 2010-01-13 | 微软公司 | 用于管理更新分发系统中软件更新的分发的应用程序编程接口 |
| US7971199B1 (en) * | 2004-05-03 | 2011-06-28 | Hewlett-Packard Development Company, L.P. | Mobile device with a self-updating update agent in a wireless network |
| US7657886B1 (en) * | 2004-06-03 | 2010-02-02 | Hewlett-Packard Development Company, L.P. | Mobile device with a MMU for faster firmware updates in a wireless network |
| US7788662B2 (en) * | 2004-07-28 | 2010-08-31 | Microsoft Corporation | Automatic upgrade of pluggable components |
| CA2533614C (en) | 2004-07-30 | 2011-05-03 | Research In Motion Limited | Method and system for coordinating device setting between a communications client and its host device |
| US7530065B1 (en) * | 2004-08-13 | 2009-05-05 | Apple Inc. | Mechanism for determining applicability of software packages for installation |
| US7516451B2 (en) * | 2004-08-31 | 2009-04-07 | Innopath Software, Inc. | Maintaining mobile device electronic files including using difference files when upgrading |
| US7844964B2 (en) * | 2004-09-23 | 2010-11-30 | Hewlett Packard Development Company, L.P. | Network for mass distribution of configuration, firmware and software updates |
| US7698698B2 (en) * | 2004-09-30 | 2010-04-13 | Smith Micro Software, Inc. | Method for over-the-air firmware update of NAND flash memory based mobile devices |
| US7457826B2 (en) | 2004-12-20 | 2008-11-25 | Microsoft Corporation | Systems and methods for synchronization of items without snapshots |
| JP2008536344A (ja) | 2005-01-31 | 2008-09-04 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | データを自動的に同期させる方法 |
| US8855620B2 (en) * | 2005-03-01 | 2014-10-07 | Mfoundry, Inc. | Systems and methods for application program and application program update deployment to a mobile device |
| US20060206888A1 (en) * | 2005-03-11 | 2006-09-14 | Microsoft Corporation | Checking for and accessing software component updates through a common content manager |
| US7970386B2 (en) | 2005-06-03 | 2011-06-28 | Good Technology, Inc. | System and method for monitoring and maintaining a wireless device |
| EP1739552A1 (en) * | 2005-06-21 | 2007-01-03 | Hewlett-Packard Development Company, L.P. | Software installation method and computer system |
| US7958502B2 (en) * | 2005-08-05 | 2011-06-07 | Hewlett-Packard Development Company, L.P. | Efficient generator of update packages for mobile devices that uses non-ELF preprocessing |
| US9332424B2 (en) * | 2005-08-05 | 2016-05-03 | Qualcomm Incorporated | Centrally managed solution for all device management activities |
| US7676806B2 (en) * | 2005-09-27 | 2010-03-09 | Microsoft Corporation | Deployment, maintenance and configuration of complex hardware and software systems |
| US7596720B2 (en) * | 2005-09-27 | 2009-09-29 | Microsoft Corporation | Application health checks |
| US20130332343A1 (en) * | 2005-10-06 | 2013-12-12 | C-Sam, Inc. | Multi-tiered, secure mobile transactions ecosystem enabling platform comprising a personalization tier, a service tier, and an enabling tier |
| US20080148250A1 (en) * | 2005-10-28 | 2008-06-19 | Giovanni Motta | Update package generation employing matching technique with controlled number of mismatches |
| CN1852309A (zh) | 2005-11-16 | 2006-10-25 | 华为技术有限公司 | 数据同步处理方法及其客户端 |
| US7747567B2 (en) | 2005-12-30 | 2010-06-29 | Microsoft Corporation | Separation of conflict resolution from synchronization |
| US7529780B1 (en) | 2005-12-30 | 2009-05-05 | Google Inc. | Conflict management during data object synchronization between client and server |
| JP4864557B2 (ja) * | 2006-06-15 | 2012-02-01 | 富士通株式会社 | ソフトウェアの更新処理プログラム及び更新処理装置 |
| WO2007147151A2 (en) | 2006-06-16 | 2007-12-21 | Neltura Technology, Inc. | Using online community identities of users to establish mobile communication sessions |
| US8707297B2 (en) * | 2006-07-26 | 2014-04-22 | Dell Products L.P. | Apparatus and methods for updating firmware |
| CN100461702C (zh) | 2006-08-29 | 2009-02-11 | 中国移动通信集团公司 | 网络社区好友同步管理方法 |
| US20130047145A1 (en) * | 2006-08-29 | 2013-02-21 | Quan-Jie Cui | Match analysis for encoding optimized update packages |
| US7870412B2 (en) | 2006-09-28 | 2011-01-11 | Oracle International Corporation | Passing client or server instructions via synchronized data objects |
| US20100242034A1 (en) * | 2006-11-01 | 2010-09-23 | Microsoft Corporation | Distributing software products as an executable containing script logic with external resources |
| US7725456B2 (en) | 2007-04-27 | 2010-05-25 | Microsoft Corporation | Item management with data sharing and synchronization |
| US20080281828A1 (en) | 2007-05-11 | 2008-11-13 | Daniel Swartz | Variable Data Replacement Technique For An Electronic Communication System |
| KR101134214B1 (ko) | 2007-06-19 | 2012-04-09 | 콸콤 인코포레이티드 | 무선 환경에서 데이터세트 동기화를 위한 방법들 및 장치 |
| US8635608B2 (en) * | 2007-09-04 | 2014-01-21 | Teradata Us, Inc. | Software update system and method |
| JP2009134589A (ja) | 2007-11-30 | 2009-06-18 | Toyota Motor Corp | 運転支援装置 |
| US8762977B2 (en) * | 2008-04-10 | 2014-06-24 | Telefonaktiebolaget L M Ericsson (Publ) | Mobile device software management method and apparatus |
| US8612961B2 (en) * | 2008-12-31 | 2013-12-17 | Motorola Mobility Llc | System and method for downloading software upgrades |
| US8340635B2 (en) * | 2009-03-16 | 2012-12-25 | Apple Inc. | Capability model for mobile devices |
| US8495621B2 (en) * | 2009-06-15 | 2013-07-23 | Microsoft Corporation | Catalog-based software component management |
| US8522232B1 (en) * | 2009-07-06 | 2013-08-27 | Arris Enterprises, Inc. | Decoupling software loads for customer premise equipment |
| US8316224B2 (en) * | 2009-08-31 | 2012-11-20 | Red Hat, Inc. | Systems and methods for tracking a history of changes associated with software packages and configuration management in a computing system |
| US8443361B2 (en) * | 2009-08-31 | 2013-05-14 | Red Hat, Inc. | Systems and methods for tracking a history of changes associated with software packages in a computing system |
| US9003387B2 (en) * | 2009-09-25 | 2015-04-07 | Fisher-Rosemount Systems, Inc. | Automated deployment of computer-specific software updates |
| US8612398B2 (en) * | 2010-03-11 | 2013-12-17 | Microsoft Corporation | Clean store for operating system and software recovery |
| US8578366B2 (en) * | 2010-04-13 | 2013-11-05 | Avaya Inc. | Application store |
| JP5559001B2 (ja) * | 2010-10-15 | 2014-07-23 | 株式会社日立ソリューションズ | 組込プログラム更新方法、組込プログラム更新プログラム、電子機器、ネットワークシステム |
| JP2012091840A (ja) | 2010-10-28 | 2012-05-17 | Matsuda Gijutsu Kenkyusho:Kk | 断熱パネル及びこれを用いた輸送用コンテナ |
| US8595715B2 (en) * | 2010-12-31 | 2013-11-26 | International Business Machines Corporation | Dynamic software version selection |
| US8893109B2 (en) * | 2011-08-02 | 2014-11-18 | Roche Diagnostics Operations, Inc. | Software distribution amongst medical devices taking into account dependencies between devices |
| US8612516B2 (en) * | 2011-11-28 | 2013-12-17 | Wyse Technology Inc. | Deployment of a driver or an application on a client device having a write-filter |
| US20130139139A1 (en) * | 2011-11-28 | 2013-05-30 | Wyse Technology Inc. | Automatic updating of an application or a driver on a client device using a deployment configuration file |
| US9110754B2 (en) * | 2012-05-31 | 2015-08-18 | Microsoft Technology Licensing, Llc | Computing device update control |
| US9766873B2 (en) * | 2012-08-17 | 2017-09-19 | Tripwire, Inc. | Operating system patching and software update reconciliation |
| US20140208306A1 (en) * | 2013-01-23 | 2014-07-24 | Caterpillar Inc. | Control system having automatic component software management |
| US8918775B1 (en) * | 2013-07-12 | 2014-12-23 | Ca, Inc. | Dynamic release control of software application version changes |
-
2003
- 2003-12-18 US US10/740,355 patent/US9092286B2/en active Active
- 2003-12-19 AT AT03800088T patent/ATE556371T1/de active
- 2003-12-19 JP JP2004563942A patent/JP2006517694A/ja not_active Withdrawn
- 2003-12-19 BR BR0317522-7A patent/BR0317522A/pt not_active IP Right Cessation
- 2003-12-19 CA CA002511049A patent/CA2511049A1/en not_active Abandoned
- 2003-12-19 KR KR1020117012046A patent/KR20110082585A/ko not_active Ceased
- 2003-12-19 KR KR1020057011582A patent/KR20050085836A/ko not_active Ceased
- 2003-12-19 AU AU2003299814A patent/AU2003299814A1/en not_active Abandoned
- 2003-12-19 MX MXPA05006753A patent/MXPA05006753A/es active IP Right Grant
- 2003-12-19 WO PCT/US2003/040926 patent/WO2004059438A2/en not_active Ceased
- 2003-12-19 ES ES03800088T patent/ES2387482T3/es not_active Expired - Lifetime
- 2003-12-19 EP EP03800088A patent/EP1584007B1/en not_active Expired - Lifetime
-
2011
- 2011-04-21 JP JP2011095119A patent/JP5254396B2/ja not_active Expired - Lifetime
-
2015
- 2015-07-12 US US14/797,142 patent/US10348804B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP5254396B2 (ja) | 2013-08-07 |
| AU2003299814A1 (en) | 2004-07-22 |
| MXPA05006753A (es) | 2005-10-05 |
| ATE556371T1 (de) | 2012-05-15 |
| KR20050085836A (ko) | 2005-08-29 |
| US10348804B2 (en) | 2019-07-09 |
| KR20110082585A (ko) | 2011-07-19 |
| US20150319218A1 (en) | 2015-11-05 |
| US20040188511A1 (en) | 2004-09-30 |
| JP2006517694A (ja) | 2006-07-27 |
| BR0317522A (pt) | 2005-11-16 |
| WO2004059438A2 (en) | 2004-07-15 |
| CA2511049A1 (en) | 2004-07-15 |
| JP2011175662A (ja) | 2011-09-08 |
| WO2004059438A3 (en) | 2008-10-30 |
| EP1584007A2 (en) | 2005-10-12 |
| EP1584007B1 (en) | 2012-05-02 |
| EP1584007A4 (en) | 2009-06-17 |
| US9092286B2 (en) | 2015-07-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2387482T3 (es) | Sistema para procesar automáticamente componentes en un dispositivo | |
| JP5248657B2 (ja) | デバイス上におけるレジストリベースの自動インストール及びコンポーネントハンドリングのためのシステム | |
| US8555271B2 (en) | Method, software and apparatus for application upgrade during execution | |
| US20050124332A1 (en) | Mobile device programming system and method | |
| KR101891423B1 (ko) | 원천 코드들을 이용한 관리 정보의 브로드캐스트 | |
| JP2005500607A (ja) | 無線装置での、一時的なアプリケーション・コンポーネントの削除および再ロードのためのシステムと方法 | |
| KR101201276B1 (ko) | 액션 리스트 및 버저닝을 이용한 무선 디바이스상에서액션을 수행하기 위한 방법, 소프트웨어 및 장치 | |
| US20220318393A1 (en) | Trusted Boot-Loader Authentication | |
| CN105493098A (zh) | 用于终端保护的终端装置、用于该终端装置的终端保护方法、以及终端管理服务器装置 | |
| CN1918932B (zh) | 在用户身份模块/可移动用户身份模块卡中的优选漫游列表更新 | |
| RU2339076C2 (ru) | Выполнение неверифицированных программ в операционной среде устройства радиосвязи | |
| US20100017799A1 (en) | System and method for adding local resources for use by a mobile agent object | |
| CN105243325A (zh) | 在移动终端中驻留进程文件的方法和移动终端以及服务器 | |
| RU2348065C2 (ru) | Система автоматической обработки компонентов в устройстве | |
| KR100685314B1 (ko) | 이동통신 단말기 소프트웨어 자동 업그레이드 시스템 및 방법 | |
| CN100474285C (zh) | 用于在装置上自动处理组件的方法和设备 |