MX2008010441A - Sistema y metodo para generar y ejecutar una emulacion de plataforma basada en una aplicacion seleccionada. - Google Patents

Sistema y metodo para generar y ejecutar una emulacion de plataforma basada en una aplicacion seleccionada.

Info

Publication number
MX2008010441A
MX2008010441A MX2008010441A MX2008010441A MX2008010441A MX 2008010441 A MX2008010441 A MX 2008010441A MX 2008010441 A MX2008010441 A MX 2008010441A MX 2008010441 A MX2008010441 A MX 2008010441A MX 2008010441 A MX2008010441 A MX 2008010441A
Authority
MX
Mexico
Prior art keywords
platform
emulation
application
further characterized
component
Prior art date
Application number
MX2008010441A
Other languages
English (en)
Inventor
Maria Gaos
Nazih Youssef
Original Assignee
Maria Gaos
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 Maria Gaos filed Critical Maria Gaos
Publication of MX2008010441A publication Critical patent/MX2008010441A/es

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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • 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/448Execution paradigms, e.g. implementations of programming paradigms
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE

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)
  • Computer And Data Communications (AREA)

Abstract

Un sistema operativo para generar una emulación de plataforma con base en un programa de aplicación seleccionado, el sistema comprendiendo un dispositivo de usuario, un dispositivo electrónico, un enlace en red entre el dispositivo de usuario y el dispositivo electrónico, el dispositivo de usuario incluyendo una pluralidad de componentes y teniendo información almacenada en el mismo para generar la emulación de plataforma, el dispositivo de usuario siendo operativo para ejecutar la emulación de plataforma y para ejecutar el programa de aplicación en la emulación de plataforma y el dispositivo electrónico siendo operativo para desplegar información de la ejecución del programa de aplicación en la emulación de plataforma.

Description

SISTEMA Y METODO PARA GENERAR Y EJECUTAR UNA EMULACION DE PLATAFORMA BASADA EN UNA APLICACION SELECCIONADA REFERENCIA CRUZADA Esta solicitud está basada en y reclama el beneficio de prioridad de la Solicitud Provisional No. 60/766,822 presentada el 13 de Febrero del 206, el contenido completo de la cual se incorpora en el presente documento para referencia.
CAMPO TECNICO La presente descripción se relaciona generalmente a procesamiento de información, y en particular pero no exclusivamente, se relaciona con un método y sistema para configuración de cliente de dispositivos de usuario electrónicos.
ANTECEDENTES DE LA INVENCION Las comunicaciones entre los dispositivos electrónicos han mejorado en años recientes. Las redes de comunicaciones son bien conocidas en el campo de comunicaciones de computadora. Por definición, una red es un grupo de computadoras y dispositivos asociados que están conectados por facilidades o enlaces. Las redes de comunicaciones pueden ser de una naturaleza permanente, tal como vía cables, o pueden ser de una naturaleza temporal, tal como conexiones hechas a través de teléfono o enlaces inalámbricos. Las redes pueden variar en tamaño, desde una red de área local ("LAN"), consistiendo de unas pocas computadoras o estaciones de trabajo y dispositivos relacionados, hasta una red de área amplia ("WAN"), la cual interconecta computadoras y LANs que están geográficamente dispersas, hacia un servicio de acceso remoto, el cual interconecta computadoras remotas vía enlaces de comunicación temporal. Una interred, a su vez, es la unión de múltiples redes de computadora, ambos similar y diferente, por medio de portales o enrutadores que facilitan la transferencia de datos y conversión desde varias redes. Una abreviación bien conocida para el término interred es "internet" . Como se entiende actualmente, el término capitalizado "internet" se refiere al conjunto de redes y enrutadores que usan el Protocolo de Internet ("IP"), junto con protocolos de nivel más alto, tales como el Protocolo de Control de Transmisión ('TCP") o el protocolo de Paquete de Datagrama Uniforme ("UDP"), para comunicarse entre sí. Sin embargo, el cambio tecnológico siempre incrementándose está forzando a muchos usuarios de dispositivos electrónicos a gastar continuamente sumas significativas de dinero en los dispositivos más nuevos o más rápidos simplemente para mantener sus necesidades de computación actuales. La velocidad rápida a la cual cada nueva generación de tecnologías se introduce en el mercado hace a cada generación precedente de tecnologías obsoleta. Además, el número creciente de dispositivos de usuario en casas frecuentemente produce redundancias innecesarias en capacidades y cuestiones imprevistas relacionadas con comunicaciones entre dispositivos. Así, existe una necesidad creciente de un amplio alcance de dispositivos de usuario que puedan adaptarse a cambios sucesivos en tecnologías sin requerir inversiones significativas crecientes de capital por los usuarios finales. Adicionalmente, esta necesidad crítica requiere desesperadamente una solución que pueda minimizar o eliminar la redundancia del dispositivo de usuario y facilite grandemente las comunicaciones entre varios dispositivos de usuarios independientemente de la naturaleza y velocidad de cambios sucesivos en tecnologías.
BREVE DESCRIPCION DE LOS DIBUJOS Modalidades no-limitantes y no-exhaustivas se describen con referencia a las siguientes figuras, en donde números de referencia similares se refieren a partes similares a través de las varias vistas a menos que se especifique de otra manera. La FIG. 1 es un diagrama de bloque ilustrando una red de comunicaciones incluyendo nodos de procesamiento y comunicaciones múltiples con múltiples ubicaciones geográficas en una modalidad.
La FIG. 2A es un diagrama de bloque ilustrando un conjunto representativo de dispositivos acoplados a un conjunto de cuadros superiores en una modalidad. La FIG. 2B es un diagrama de bloque ilustrando un conjunto representativo de dispositivos de usuario configurables acoplados a una red de comunicaciones en una modalidad. La FIG. 3 es un diagrama de bloque ilustrando un dispositivo electrónico configurable en una modalidad. La FIG. 4A es un diagrama de flujo ilustrando un método para ejecución de aplicación en un hardware configurable y plataforma de software en una modalidad. La FIG. 4B es un diagrama de flujo ilustrando un método para emulación de hardware, optimización de software y recuperación de software de soporte en una modalidad. La FIG. 4C es un diagrama de flujo ¡lustrando un método para selección de emulación y activación en una modalidad. La FIG. 4D es un diagrama de flujo ilustrando un método para crear y ejecutar una arquitectura de emulación en una modalidad. La FIG. 5A es un diagrama de flujo ilustrando un método para selección de aplicación y generación de arquitectura de emulación en una modalidad.
La FIG. 5B es un diagrama de flujo ilustrando un método para monitorear una petición de usuario por una arquitectura de emulación en una modalidad. La FIG. 6A es un método para determinar una arquitectura de emulación óptima para una aplicación descargada en una modalidad. La FIG. 6B es un método para seleccionar y generar una arquitectura de emulación en una modalidad. La FIG. 6C es un método para generar y habilitar una arquitectura de emulación óptima en una modalidad.
DESCRIPCION DETALLADA DE LA INVENCION La descripción detallada que sigue está representada mayormente en términos de procesos y representaciones simbólicas de operaciones por componentes de computadora convencionales, incluyendo un procesador, dispositivos de almacenamiento de memoria para el procesador, dispositivos de despliegue conectados y dispositivos de entrada. Además, estos procesos y operaciones pueden utilizar componentes de computadora convencionales en un ambiente de computación distribuido heterogéneo, incluyendo Servidores de archivo remoto, Servidores de computadora y dispositivos de almacenamiento de memoria. Cada uno de estos componentes de computación distribuidos convencionales es accesible por el procesador vía una red de comunicaciones.
Ahora se hace referencia con detalle a la descripción de las modalidades como se ilustra en los dibujos. Aunque las modalidades se describen en combinación con los dibujos y descripciones relacionadas, no existe intento en limitar el alcance de las modalidades descritas en el presente documento. Por el contrario, el intento es cubrir todas las alternativas, modificaciones y equivalentes. En modalidades alternativas, dispositivos adicionales, o combinaciones de dispositivos ilustrados, pueden agregarse o combinarse sin limitar el alcance de las modalidades descritas en el presente documento. La Figura 1 es un diagrama de bloque de una modalidad ejemplificante de un sistema de procesamiento de información. El sistema de procesamiento de información incluye varios componentes, un control y facilidad de operaciones 100, una red de comunicación 102, una pluralidad de nodos de procesamiento intermedios 104, y una pluralidad de regiones geográficas 110A-110N. Cada región incluye una pluralidad de unidades domésticas y propiedades diferentes. Cada unidad doméstica 106 incluye un dispositivo de usuario, el cual en una modalidad es un conjunto-caja superior 108 (mostrado en la Figura 2A) que está acoplado a una pluralidad de dispositivos electrónicos usados por un usuario final o consumidor. La red de comunicación 102 proporciona una elección de medios de comunicación incluyendo una red privada, redes de ancho de banda altos (red de cable, DSL, T1 y similares), rede telefónica pública conmutada ("PSTN"), red de satélite o Internet, etc. Cada región geográfica 0 cubre un área geográfica distinta e incluye una pluralidad de unidades domésticas y los requerimientos de procesamiento de información de cada unidad doméstica se proporcionan a través de la pluralidad de nodos de procesamiento intermedios 104 y habilitados por comunicación a través de la red de comunicación 102 hacia y desde el control y facilidad de operaciones 100. El control y facilidad de operaciones 100 incluye por lo menos un servidor principal remoto que proporciona la computación y requerimientos de procesamiento de información de cada dispositivo de usuario 108 proporcionado en cada unidad doméstica. La Figura 2A incluye una red de comunicación 102 que se comunica a través del nodo intermedio 104 a una modalidad ilustrativa de una unidad doméstica 106. La unidad doméstica 106 incluye un módulo de conexión en una modalidad ejemplificante. El módulo de conexión 108 se comunica con una pluralidad de dispositivos del consumidor y unidades domésticas electrónicas. Entre los dispositivos de unidad doméstica internos a los cuales el módulo de conexión 108 puede comunicarse son sistemas multimedia 200, sistemas de computadora de escritorio 202, cámaras digitales 204, TVs o televisiones 206, computadoras portátiles 208, DVDs y controladores VCR 210, y una pluralidad de dispositivos de cómputo portátiles (por ejemplo, computadoras portátiles blackberry, blueberry). Cada nodo intermedio 104 está asignado a una región geográfica 110 a la cual se pasan mensajes de información de ida y vuelta entre la facilidad de comunicaciones de control 100 y la pluralidad de dispositivos de usuario 108 proporcionada en cada unidad doméstica 106. Una pluralidad de nodos intermedios puede asignarse para manipular los requerimientos de procesamiento de información para cada región geográfica, la facilidad de operaciones y control 100 asegurarán balance de carga adecuada y redistribución de las capacidades de procesamiento entre y en medio de nodos de procesamiento intermedio para soportar el procesamiento requerido en cada región geográfica distinta 110. La Figura 2B proporciona aún otra modalidad ejemplificante del sistema de procesamiento de información. En esta figura, la red de comunicación 102 y entonces la comunicación con el nodo intermedio 104 hacia una unida doméstica 106 a través de un dispositivo de comunicación 212 el cual está acoplado hacia el enrutador 214 el cual a su vez está acoplado a una red de área local de unidad doméstica 216. Cada uno de la pluralidad de dispositivos del consumidor de unidad doméstica está acoplado a la red de área local 216 para facilitar la transferencia de información y procesamiento necesario de la petición de usuario y comandos del centro de control hacia el dispositivo de usuario 218. Como se muestra en esta figura, el dispositivo electrónico 208 (computadora portátil) incluye un módulo integrado que es una modalidad del dispositivo de usuario 218. De manera similar, la televisión 206 incluye un dispositivo de usuario integrado 218 junto con dispositivos de usuario integrados 218 incluidos en las otras modalidades ilustrativas de dispositivos electrónicos tales como DVD, grabador VCR 210 y sistema multimedia 200. En esta configuración del sistema de procesamiento de información no existe dispositivo de usuario centralizado 108 sino que en lugar de eso una pluralidad de módulos integrados incluyendo las capacidades del dispositivo de usuario 108 cuyos módulos han sido integrados en cada uno de una pluralidad de dispositivos electrónicos disponibles para uso por un usuario final de la unidad doméstica. Este es un ejemplo representativo de una modalidad descentralizada y así facilita la configuración del cliente de cada dispositivo de usuario electrónico y cada dispositivo de usuario integrado a las necesidades específicas del usuario final. La Figura 3 incluye un diagrama de bloque de una modalidad ejemplificante del dispositivo de usuario 108, 218, teniendo una memoria 300, un controlador de memoria 314, un disco duro 316, un componente reconfigurable 322, un componente de datos 324, un componente de entrada/salida 326, una pluralidad de archivos de computadora enchufables 320, un componente de procesamiento 318 y un componente de interfaz de red 328. Cada uno de los componentes está acoplado junto con un bus común 313 en la arquitectura de cómputo como se muestra en la Figura 3. El componente de interfaz de red 328 incluye un controlador de interfaz de red 330 acoplado a una interfaz de red 332. Los controles del controlador de interfaz de red 330 a cuyo tipo de interfaz el dispositivo de usuario está acoplado para comunicación hacia y desde la facilidad de operaciones y control 100 y en la modalidad mostrada en la figura 2B la comunicación hacia y desde cada dispositivo electrónico integrado. El componente de entrada y salida 326 está acoplado a cada uno de la pluralidad de dispositivos electrónicos incluidos en la unidad doméstica para permitir que el dispositivo de usuario 108 se comunique con cada dispositivo para determinar y monitorear cada selección de aplicación del usuario en cada uno de estos dispositivos. El componente de datos 324 incluye una capacidad de almacenamiento para grabar cada selección hecha por un usuario de una aplicación para ser ejecutada en un dispositivo electrónico e incluye capacidades de almacenamiento adicionales para grabar la frecuencia con la cual tales aplicaciones se seleccionan. El componente reconfigurable 322 incluye un componente de hardware para permitir la reconfiguración del sistema de circuitos electrónicos de hardware integrado para permitir la ejecución de capacidades de cómputo avanzadas o complementarias para mejorar el uso de la aplicación seleccionada deseada por un usuario de un dispositivo electrónico. El disco duro 316 almacena aplicaciones que se usaron anteriormente por usuarios finales de los dispositivos electrónicos. El componente de procesamiento 318 proporciona la capacidad de procesamiento esencial del dispositivo de usuario y se usa para procesar peticiones basadas en selecciones de aplicación hechas por usuarios finales de los dispositivos electrónicos para ejecución de aplicaciones específicas o la recuperación y ejecución de emulaciones de plataforma específicas para permitir la ejecución de aplicaciones seleccionadas por usuarios de los dispositivos electrónicos. La pluralidad de archivos de computadora enchufables 320 se proporciona para unidades extraíbles recibidas que tienen aplicación almacenada en éstos para ejecución en dispositivos electrónicos específicos. El componente de procesamiento 318 determinará en cuál dispositivo electrónico se desplegará la aplicación con base en las necesidades específicas y características del dispositivo objetivo como se determina por la información proporcionada por el componente de entrada salida 326. El controlador de memoria 314 está acoplado al disco duro 316 y memoria 300 y se usa para procesar petición desde el componente de procesamiento 318 para acceder a aplicaciones o para parámetros de acceso o programas almacenados en la memoria 300. La memoria 300 incluye un sistema operativo almacenado 302, un conjunto de parámetros 304, un programa de autenticación para autenticar un usuario, un dispositivo, y la ubicación del dispositivo y el usuario. El programa de despacho de aplicación 308 también se almacena en la memoria 300, el programa de emulación de plataforma 310 se almacena en la memoria 300 y el programa de activación de circuito 312 también se almacena en la memoria 300. Los parámetros 304 almacenados en la memoria 300 están comprendidos de parámetros específicos de la aplicación y parámetros de emulación. Los parámetros de aplicación son recibidos por el componente de entrada-salida 326 y son almacenados en la memoria 300 después de que un usuario hace una selección para una aplicación particular. El programa de autenticación 306 autentica el usuario, el dispositivo y la ubicación del dispositivo y el usuario con base en información adicional recolectada por el componente de entrada-salida 326. El programa de despacho de aplicación 308 se ejecuta por el componente de procesamiento 318 si la aplicación seleccionada no está almacenada en el dispositivo de usuario 108 en el disco duro 316. El programa de despacho de aplicación 308 bajo ejecución emite una petición a un servidor principal remoto y facilidad de operaciones y control 100 para recuperar la aplicación de una pluralidad de aplicaciones almacenadas en el servidor principal remoto, la aplicación recuperada después se almacena en el disco duro 316. El programa de despacho de aplicación 308 también se usa para emitir peticiones hacia el servidor principal remoto y facilidad de operaciones y central 100 para generar emulaciones específicas de la aplicación o emulaciones de plataforma que van a usarse y ejecutarse en el dispositivo de usuario 108 para soportar la ejecución de la aplicación seleccionada hecha para el uso final de un dispositivo electrónico tal como una computadora portátil 208, un conjunto de televisión 206 o sistema multimedia 200. La emulación de la plataforma 310 almacenada en la memoria 300 representa emulaciones de plataforma ejecutados anteriormente y los parámetros 304 podrían incluir los parámetros correspondientes requeridos por el componente de procesamiento 318 para ejecutar una emulación de plataforma ejecutada y almacenada anteriormente 310. El programa de activación del circuito 312 se ejecuta por el componente de procesamiento 318 para configurar circuitos de hardware en una configuración deseada usando el componente reconfigurable 322 para permitir la ejecución de una emulación de plataforma deseada o una aplicación seleccionada deseada.
El programa de despacho de aplicación 308 emitirá una petición para tener el servidor principal remoto y facilidad de operaciones y control 100 generan un nueva emulación de plataforma cuando el componente de procesamiento 318 determina con base en la aplicación seleccionada que la plataforma de hardware requerida o emulación de plataforma no se almacena en el disco duro 316 o en la memoria 300. La petición para tener una emulación de plataforma generada incluye un conjunto de parámetros de aplicación y una petición específica de emulación, ambos los parámetros y la petición específica de emulación se proporcionan hacia el servidor principal remoto para la generación de una emulación de plataforma deseada. Después de la generación de la emulación de plataforma, el servidor principal remoto descarga la emulación de plataforma hacia el dispositivo de usuario 108 y ésta se almacena después en el disco duro 316. El servidor principal remoto descarga ambos la emulación de plataforma y los parámetros de emulación requeridos para ejecución de la emulación de plataforma en una manera que soporta ejecución de la aplicación seleccionada hecha por un usuario final de un dispositivo electrónico. El sistema operativo 302 y la memoria 300 pueden ser cualquiera de varios sistemas operativos convencionales o sistemas operativos en tiempo real integrados para ejecución en el dispositivo de usuario 108 con el componente de procesamiento 308. La Figura 4A es un diagrama de flujo describiendo el flujo general de operación del dispositivo de usuario bajo recepción de una selección de aplicación del usuario. Como se muestra en esta figura, la selección de aplicación del usuario 400 inicia un proceso interno para determinar si la aplicación seleccionada es residente como se muestra en el paso 402. Si la aplicación seleccionada por el usuario es residente en el dispositivo de usuario 108 (o en la modalidad alternativa de un módulo integrado mostrado en la figura 2B (módulo 218)) entonces el dispositivo de usuario determinará si el hardware existente y la plataforma de software es suficiente para ejecutar la aplicación deseada como se muestra en el paso 404. Si el hardware existente y la arquitectura de software son suficientes para ejecutar la aplicación, entonces el dispositivo de usuario ejecutará la aplicación como se muestra en el paso 406. Los resultados de la ejecución de aplicación serán desplegados en el dispositivo electrónico deseado como se muestra en el paso 408 y la selección hecha por el usuario de la aplicación deseada se identificará y entonces el dispositivo de usuario ingresará en un estado de espera y continúa para monitorear una nueva selección de aplicación del usuario como se muestra en el paso 412. En el caso de que la aplicación no está residente como se determinó por el análisis del paso 402 entonces el dispositivo de usuario procederá a obtener la aplicación requerida como se muestra en el paso 438, mostrado en la Figura 4C. En la obtención de la aplicación deseada, el dispositivo de usuario puede recuperar la aplicación desde el disco duro 316 o activar el programa de despacho de aplicación 308 y emitir una petición la cual incluirá parámetros de aplicación 304 para tener el servidor principal remoto en control y la facilidad de operaciones 100 genera las aplicaciones las cuales subsecuentemente se descargarán por el servidor principal remoto hacia el dispositivo de usuario 108. Como se muestra en la Figura 4C, la obtención de la aplicación (paso 438) inicia un proceso interno para determinar si la aplicación descargada requiere emulación como se muestra en el paso 439. Si la aplicación no requiere emulación, entonces el dispositivo procede para determinar si el SW/HW existente son capaces 441 de ejecutar la aplicación. Si el dispositivo de usuario es capaz de ejecutar la aplicación, éste entonces procede a ejecutar la aplicación (paso 406 en la Figura 4A). Si el dispositivo de usuario no es capaz de ejecutar la aplicación, entonces el dispositivo procede a determinar si el software de soporte es necesario para actualizar la aplicación para ejecución en el dispositivo de usuario (paso 428 en la Figura 4B). Regresando a la Figura 4C, en el caso de que la aplicación requiera emulación entonces el dispositivo de usuario desplegará opciones de emulación en el dispositivo electrónico para entrada adicional desde un usuario final, como se muestra en el paso 440. La información de entrada se proporciona por el usuario final para seleccionar una arquitectura de emulación de objetivo o específica como se muestra en el paso 442 y entonces el dispositivo de usuario determinará si la emulación está disponible en su memoria local como se muestra en el paso de decisión 444. Si la emulación no está disponible localmente entonces se hará la petición por el programa de despacho de aplicación 308 para hacer que el servidor principal remoto recupere parámetros de aplicación como se muestra en el paso 416 en la Figura 4B. Este proceso se sigue por varios pasos requiriendo el despacho de una petición de emulación (paso 418), la recuperación de una emulación y sus parámetros (paso 420), la ejecución de una verificación y comprobación de integridad (paso 422), la creación de parámetros de emulación de respaldo (paso 424) y la ejecución de la aplicación en la plataforma de emulación. En el caso de que la emulación esté disponible localmente, la emulación de plataforma se recuperará de la memoria y los parámetros de emulación requeridos para su ejecución se establecerán a un estado activo nuevamente como se muestra en el paso 446. Después de que los parámetros de emulación se reciben desde la generación de una emulación de plataforma por el servidor principal remoto esos parámetros se almacenan en la memoria local como se muestra en el paso 450. El componente de procesamiento 318 entonces realizará una verificación de integridad como se muestra en el paso 452 para asegurar que las funciones de emulación de plataforma como se especifican para el arquitectura de hardware requerida necesaria para la aplicación seleccionada. El componente de procesamiento 318 también confirmará los requerimientos de procesamiento de la aplicación como se muestra en el paso 454 y entonces procederá a configurar todos los circuitos ambos circuitos de hardware y software para ejecución de la emulación de plataforma como se muestra en el paso 456. El componente de procesamiento 318 continuará su ejecución y creará un respaldo o copia de replicación de la emulación de plataforma como se muestra en el paso 458 y entonces procederá con la ejecución de la aplicación seleccionada en la emulación de plataforma como se muestra en el paso 460. Después los resultados desde la aplicación ejecutada se desplegarán como se muestra en el paso 462 en el dispositivo electrónico de elección por el usuario final y la selección hecha por el usuario de la aplicación particular se almacenará en el componente de datos 324. El componente de datos 324 incluye un almacenamiento de datos para almacenar la frecuencia con la cual aplicaciones de usuario particular se seleccionan y los tipos de aplicaciones que se selección de tal manera que la facilidad de operaciones y control finalmente será capaz de determinar el número de veces que las aplicaciones particulares se seleccionan por los usuarios finales en regiones geográficas específicas y así desfasa o modera capacidades de procesamiento de información a través de su red o nodos de procesamiento intermedios y hace disponible aplicaciones específicas para regiones geográficas específicas después de aprender o compilar datos adicionales que permiten que la facilidad de operaciones y control aprendan los tipos de patrones de uso de aplicación que son comunes a usuarios finales en regiones geográficas específicas. Después de almacenar datos de selección de aplicación en el paso 462 el componente de procesamiento 318 y el dispositivo de usuario entonces se moverán en un estado de espera y continuará monitoreando por una nueva selección de aplicación como se muestra en el paso 466.
Regresando ahora a la Figura 4A, en el caso de que la aplicación esté residente pero es incompatible con o no puede ejecutarse en el hardware existente y arquitectura de software como se muestra en el paso 404, entonces el proceso mostrado en el diagrama de flujo de la Figura 4B se ejecutará. Si la emulación es requerida entonces el componente de procesamiento 318 recuperará los parámetros de aplicación desde el componente de entrada-salida 326 y almacenará éstos en la memoria 300 como se muestra en el paso 416. Después el componente de procesamiento 318 ejecutará el programa de despacho de aplicación 308 para emitir una petición como se muestra en el paso 418 para tener una nueva emulación de plataforma generada por el servidor principal remoto en la facilidad de operaciones y control 100. La emulación de plataforma se recuperará en el paso 420 y descargada desde la facilidad de operaciones y control 100 y almacenada en el disco duro 316 en el dispositivo de usuario junto con los parámetros de emulación para permitir que componente de procesamiento 318 ejecute exitosamente la emulación de plataforma. Después de la descarga de la emulación de plataforma y sus parámetros correspondientes, el componente de procesamiento 318 realizará una verificación y una serie de comprobaciones de integridad sobre la emulación de plataforma como se muestra en el paso 422. Después, el componente de procesamiento 318 creará un respaldo de la emulación de plataforma y sus parámetros de emulación correspondientes como se muestra en el paso 424 y después ejecuta la aplicación en la emulación de plataforma como se muestra en el paso 426. El componente de procesamiento 318 entonces desplegará los resultados de la ejecución de la aplicación como se muestra en el paso 408 y almacena la selección de aplicación en el componente de datos 324 el cual se muestra y refleja en el paso 410 y después procede a monitorear selecciones de aplicación nueva o adicional como se muestra en el paso 412. Regresando al paso 414 donde el dispositivo de usuario determina si se requiere emulación de hardware, si emulación de hardware no se requiere entonces el componente de procesamiento 318 determinará si se requerirá software de soporte adicional o si se requerirá una actualización al software de soporte para ejecutar apropiadamente la aplicación seleccionada como se muestra en el paso 428. Si se requiere una actualización del software de soporte , el componente de procesamiento 318 recuperará los parámetros de aplicación como se muestra en 430 y ejecutará el programa de despacho de aplicación 308 para tener una petición enviada hacia el servidor principal remoto y facilidad de operación y control 100 como se muestra en el paso 432 para tener software de soporte generado por el servidor principal remoto el cual subsecuentemente será recuperado y descargado como se muestra en el paso 434 hacia el dispositivo de usuario. El componente de procesamiento 318 en el dispositivo de usuario 108 entonces ejecutará la aplicación seleccionada como se muestra en el paso 406 despliega los resultados en el dispositivo electrónico deseado como se muestra en el paso 408 y entonces almacena esa selección de aplicación como se muestra en el paso 410 en el componente de datos 324 y entonces monitorea todos los dispositivos electrónicos acoplados al dispositivo de usuario para nuevas selecciones de aplicación como se muestra en el paso 412. Regresando a la Figura 4B, en el caso de que una actualización de software de soporte se sea requerida como se determinó en el paso 428 entonces el dispositivo de usuario procederá a optimizar la configuración de software por omisión para operación con la aplicación seleccionada. La aplicación seleccionada será ejecutada como en el paso 406 y los resultados de la aplicación ejecutada se desplegarán en el dispositivo electrónico objetivo como se muestra en el paso 408 y la selección particular hecha por el usuario en el dispositivo electrónico designado se almacenará en el componente de datos 324 y subsecuente el dispositivo de usuario regresará a un estado de espera y monitor para otra nueva selección de aplicación por un usuario final como se muestra en el paso 412. La Figura 5A incluye un diagrama de flujo del proceso de despacho de aplicación ejecutado por el programa de despacho de aplicación 308. Inicialmente, el dispositivo de usuario espera una selección de aplicación del usuario la cual ocurre como se muestra en el paso 500. Después de recibir noticia de la selección de aplicación del usuario desde el componente de entrada-salida 326, el componente de procesamiento 318 determinará si a aplicación que ha seleccionado se almacena localmente en el dispositivo de usuario como se muestra en el paso 502. Si la aplicación no se almacena localmente entonces se descargará desde el servidor principal remoto y facilidad d operaciones y control 100 como se muestra en el paso 504 y almacena en una memoria local como se muestra en el paso 506. El perfil de usuario incluido en el componente de datos el cual incluye el perfil de aplicaciones seleccionado y la frecuencia con la cual las aplicaciones se ha seleccionado entonces se actualizará en el paso 508 para reflejar la selección adicional de esta aplicación. Como se muestra en la figura 6A, si el componente de procesamiento central 318 determina que una emulación de plataforma es requerida para ejecución de la aplicación seleccionada y la emulación de plataforma no está residente localmente, entonces el componente de procesamiento 318 emitirá una petición al circuito de activación de programa para realizar un análisis de la aplicación seleccionada como se muestra en el paso 602. El programa de activación de circuito entonces procederá a determinar la arquitectura de emulación de plataforma óptima como se muestra en el paso 604. El análisis realizado por el programa de activación de circuito incluirá determinar el proceso necesario que debe ejecutarse por la emulación de plataforma como se muestra en el paso 606. La determinación de los circuitos flexibles requeridos que den incluirse y ejecutarse en una emulación de plataforma como se muestra en el paso 608 y la configuración de hardware requerida para ser implementada por el componente reconfigurable 322 en soporte de la emulación de plataforma como se muestra en el paso 610. El programa de activación de circuito entonces determinará si una emulación de plataforma compatible está disponible localmente para ejecución de la aplicación seleccionada como se muestra en el paso de decisión 612. Si la aplicación no está disponible localmente entonces se dará seguimiento al proceso que se publica en la figura 6B. La Figura 6B muestra el diagrama de flujo en el cual el dispositivo de usuario despliega opciones de emulación de plataforma para los usuarios como se muestra en el paso 614 entre el intervalo de opciones de emulación de plataforma puede estar una plataforma de computadora Apple Mac, una opción de computadora personal IBM y plataforma de juegos electrónicos y otras alternativas de cómputo. Bajo recepción de una selección de una arquitectura de emulación de plataforma como se muestra en el paso 616 el dispositivo de usuario entonces determinará si la emulación de plataforma selectiva está disponible localmente como se muestra en el paso de decisión 617. Si la emulación de plataforma no está disponible localmente entonces una petición será emitida por el dispositivo de usuario para tener la emulación de plataforma generada por el servidor remoto ubicado en la facilidad de operaciones y control 100 como se muestra cuyo proceso se refleja en el paso 620. Después de generación y descarga de la emulación de plataforma requerida, el programa de activación de circuito entonces compilará los parámetros de emulación recibidos los cuales fueron descargados con la emulación de plataforma recibida desde el servidor principal remoto y envía esa lista de parámetro hacia el componente de procesamiento 318. La transmisión de los parámetros de emulación hacia el componente de procesamiento 318 como se muestra en el paso 622. El programa de activación de circuito 312 entonces emitirá la petición para habilitar o deshabilitar el sistema circuitos electrónicos de hardware apropiados en el componente reconfigurable 322 como se muestra en el paso 624 y también activará o desactivará el sistema de circuitos necesario emulado en la emulación de plataforma como se muestra en el paso 626. Después de ejecutar los "circuitos flexibles" apropiados incluidos en la emulación de plataforma, los parámetros de emulación se almacenarán en la memoria local 300 como se muestra en el paso 450 en la figura 4D. Los pasos restantes en el proceso mostrado en la Figura 4D entonces se seguirán por el dispositivo de usuario como se describió anteriormente. Regresando ahora a la Figura 6A, en el caso de que el dispositivo de usuario determine que una emulación de plataforma compatible no existe localmente para la aplicación entonces se seguirá el paso del proceso que se publica en la Figura 6C. La Figura 6C es un diagrama de flujo mostrando los pasos involucrados en crear una emulación de plataforma optimizada para la aplicación seleccionada. Como se muestra en el paso de decisión 628, el dispositivo de usuario determinará si la emulación de plataforma disponible es óptima para la aplicación seleccionada. Optima en este contexto significa una emulación de plataforma que es capaz de soportar los requerimientos de procesamiento y almacenamiento de la aplicación selectiva. Si existe emulación de plataforma óptima, entonces el dispositivo de usuario 108 recuperará los parámetros de emulación como se muestra en el paso 630, envía petición de habilitar o deshabilitar el circuito de hardware a los componentes reconfigurables 322 como se muestra en el paso 632 y envía petición de activar o desactivar el circuito flexible para - permitir ciertos "circuitos flexibles" en la emulación de plataforma como se muestra en el paso 634. Después el dispositivo de usuario realizará el proceso publicado en la figura 4D, el cual se describió previamente en el presente documento. Regresando a la Figura 6C, en el caso de la emulación de plataforma determine no ser óptima como se muestra en el paso 628 entonces se interrogará al usuario para elegir si desarrolla una emulación de plataforma optimizada como se muestra en el paso de decisión 636. Si una emulación de plataforma optimizada es requerida por el usuario, entonces el programa de despacho de aplicación 308 emitirá una petición para generar una emulación de plataforma optimizada como se muestra en el paso 638 y después el programa de activación de circuito recibirá los parámetros de emulación así como la emulación de plataforma optimizada y generada recientemente como se muestra en el paso 622 emitiendo petición al componente de procesamiento 318 para habilitar o deshabilitar el sistema de circuitos de hardware apropiado en el componente reconfigurable 322 el cual solicita como se muestra en el paso 624, y éste también enviará una petición para activar o desactivar los "circuitos flexibles" apropiados en la emulación de plataforma optimizada como se muestra en el paso 626. Después el proceso mostrado en la figura 4D será ejecutado para completar el almacenamiento de los parámetros de emulación y memoria local 300 como se muestra en el paso 450, para realizar comprobaciones de integridad relevantes como se muestra en el paso 452 y para confirmar los requerimientos de procesamiento de la aplicación deseada como se muestra en el paso 454. La configuración del circuito para la emulación de plataforma optimizada se almacenará como se muestra en el paso 458 y el programa de aplicación seleccionado se ejecutará sobre la arquitectura de plataforma como se muestra en el paso 460 y los resultados de la ejecución de esta aplicación se desplegarán en el dispositivo electrónico deseado usado por el usuario final como se muestra en el paso 462. El perfil de usuario almacenado en el componente de datos se actualizará con información adicional en el programa de aplicación seleccionado para correlacionar datos en ambos la aplicación seleccionada y la frecuencia de selección hecha por el usuario final de un dispositivo particular en una unidad doméstica particular 106 la cuyo proceso se proporciona por el paso 464. El dispositivo de usuario entonces regresará a un estado de espera y monitor para una nueva selección de aplicación como se muestra en el paso 466. Regresando ahora a la Figura 5A, si la aplicación seleccionada por el usuario se determina estar disponible localmente como se muestra en el paso de decisión 502, entonces los parámetros de aplicación relevantes se recuperarán por el dispositivo de usuario como se muestra en el paso 510 y una emulación de plataforma deseada se generará como se muestra en el paso 512. Esta emulación de plataforma se verificará y probará por el dispositivo de usuario como se muestra en el paso 514 y esta prueba determinará si la emulación de plataforma generada pasa pruebas de ejecución apropiadas para asegurar la operación exitosa de la aplicación seleccionada, cuya prueba está identificada en el paso de decisión 516. Si las pruebas son satisfactorias, entonces se solicitará la emulación de plataforma por el programa de despacho para ejecución (mostrado en el paso 518) y después de ejecución el programa de despacho de aplicación regresará a un estado de espera como se muestra en el paso 520. En el caso de que la prueba de verificación de la emulación de plataforma no sea exitosa, entonces la verificación y prueba de la emulación de plataforma se realizará nuevamente hasta que un umbral de prueba se ha excedido como se implica por el paso de decisión 522. Si el umbral de prueba ha sido excedido, el proceso entonces vencerá como se muestra en el paso 524. Sin embargo, si el umbral no ha sido excedido entonces la prueba se realizará nuevamente para asegurar que la emulación de plataforma es completamente capaz de ejecutarse en el dispositivo de usuario en soporte del programa de aplicación seleccionado. Después del proceso de despacho de aplicación ha ingresado en un estado de espera por una petición de usuario nuevo, el dispositivo de usuario continuará para monitorear la petición, como se muestra en el paso de decisión 526. En el caso de que no se reciba tal petición, un segundo umbral se analizará para determinar si se ha excedido, como se muestra en el paso de decisión 528. Si este umbral se ha excedido, entonces el programa de despacho de aplicación vencerá y regresa como se muestra en el paso 530. Regresando al paso de decisión en 528, si el umbral de espera no ha sido excedido, entonces el programa de despacho de aplicación regresará a un estado de espera, donde esperará una petición de usuario para un nuevo programa de aplicación. Además como se muestra en la Figura 5B, si se recibe una petición de usuario para un programa de aplicación mientras el programa de despacho de aplicación está en su estado de espera como se muestra en el paso 526, entonces el flujo de operaciones para el programa de despacho de aplicación regresará al paso 500 e iniciará nuevamente. Aunque se han ¡lustrado modalidades específicas y descritas en el presente documento, será evidente para aquellos de expertos en la técnica que una amplia variedad de ¡mplementaciones alternativas y/o equivalentes pueden sustituirse por las modalidades específicas mostradas y descritas sin desviarse del alcance de la presente invención. Esta aplicación pretende cubrir cualesquier adaptaciones o variantes de las modalidades discutidas en el presente documento.

Claims (1)

  1. NOVEDAD DE LA INVENCION REIVINDICACIONES 1 .- Un método implementado en computadora para ejecutar una aplicación dependiente de la plataforma, el método comprende: obtener una petición para ejecutar la aplicación dependiente de la plataforma; obtener parámetros de plataforma configurables correspondientes a una arquitectura de emulación para ejecución de la aplicación dependiente de la plataforma; generar la arquitectura de emulación de conformidad con los parámetros de plataforma configurables; y ejecutar la aplicación dependiente de la plataforma sobre la arquitectura de emulación. 2.- Un aparato de configuración que comprende: un componente de recolección de datos operativo para monitorear la actividad del usuario de un dispositivo electrónico configurable; un componente de configuración de dispositivo operativo para configurar el dispositivo electrónico configurable con base en la actividad de usuario monitoreada por el componente de recolección de datos; un componente de compilación operativo para compilar datos sobre la actividad de usuario monitoreada y la configuración del dispositivo electrónico configurable; y un componente de datos operativo para almacenar los datos compilados sobre la actividad de usuario monitoreada y la configuración del dispositivo electrónico configurable correspondiente a la actividad de usuario. 3.- Un aparato de plataforma configurable que comprende: una memoria; un procesador acopado a la memoria; un sistema de circuitos electrónicos de plataforma configurable acoplado al procesador; y operativo para: obtener una petición para ejecutar una aplicación dependiente de la plataforma; obtener parámetros de plataforma configurables correspondientes a una arquitectura de emulación para ejecución de la aplicación dependiente de la plataforma; generar la arquitectura de emulación de conformidad con los parámetros de plataforma configurables; y ejecutar la aplicación dependiente de la plataforma sobre la arquitectura de emulación. 4.- Un medio legible en computadora que tiene instrucciones para: obtener una petición para ejecutar una aplicación dependiente de la plataforma; obtener parámetros de plataforma configurables correspondientes a una arquitectura de emulación para ejecución de la aplicación dependiente de la plataforma; generar la arquitectura de emulación de conformidad con los parámetros de plataforma configurables; y ejecutar la aplicación dependiente de la plataforma sobre la arquitectura de emulación. 5.- Un sistema operativo para generar una emulación de plataforma basada en un programa de aplicación seleccionado, el sistema comprende: un dispositivo de usuario; un dispositivo electrónico, un enlace con funcionamiento en red entre el dispositivo de usuario y el dispositivo electrónico; el dispositivo de usuario incluyendo una pluralidad de componentes y teniendo información almacenada en ésta para generar la emulación de plataforma; el dispositivo de usuario operativo para ejecutar la emulación de plataforma y para ejecutar el programa de aplicación sobre la emulación de plataforma; y el dispositivo electrónico operativo para desplegar información a partir de la ejecución del programa de aplicación sobre la emulación de plataforma. 6.- El sistema de conformidad con la reivindicación 5, caracterizado además porque la pluralidad de componentes incluye un componente de procesamiento central, una memoria, un componente reprogramable, un componente de datos, un componentes de ¡nterfaz de red, un componentes de entrada/salida y una pluralidad de archivos enchufables. 7.- El sistema de conformidad con la reivindicación 6, caracterizado además porque la memoria incluye por lo menos un programa de despacho de aplicación, un programa de activación de circuito y una pluralidad de parámetros de emulación, la pluralidad de parámetros de emulación comprendiendo la información almacenada sobre el dispositivo de usuario para generar la emulación de plataforma. 8.- El sistema de conformidad con la reivindicación 5, caracterizado además porque adicionalmente comprende una facilidad de operaciones y control que tiene un servidor remoto, el servidor remoto operativo para almacenar una pluralidad de programas de aplicación y para generar la emulación de plataforma con base en la información almacenada sobre el dispositivo de usuario y para descargar la emulación de plataforma hacia el dispositivo de usuario. 9. - El sistema de conformidad con la reivindicación 8, caracterizado además porque la información almacenada en el dispositivo de usuario comprende una pluralidad de parámetros de emulación. 10. - El sistema de conformidad con la reivindicación 7, caracterizado además porque el componente de procesamiento central es operativo para ejecutar el programa de despacho de aplicación para solicitar la generación de la emulación de plataforma cuando el programa de aplicación seleccionado está para ser ejecutado sobre una plataforma diferente de una plataforma por omisión del dispositivo de usuario. 1 1.- El sistema de conformidad con la reivindicación 7, caracterizado además porque el componente de procesamiento central es operativo para ejecutar el programa de despacho de aplicación para solicitar el programa de aplicación seleccionado desde la pluralidad de programas de aplicación almacenados cuando el programa de aplicación seleccionado no está residente en el dispositivo de usuario. 12.- El sistema de conformidad con la reivindicación 11 , caracterizado además porque el servidor remoto descarga el programa de aplicación seleccionado al dispositivo de usuario después de recibir la petición desde el programa de despacho de aplicación. 13.- El sistema de conformidad con la reivindicación 9, caracterizado además porque la emulación de plataforma es generada sobre un servidor remoto con base en la información almacenada en el dispositivo de usuario y descargada hacia el dispositivo de usuario para ejecución. 14. - El sistema de conformidad con la reivindicación 7, caracterizado además porque el componente de procesamiento central es operativo para recuperar la emulación de plataforma desde la memoria cuando el programa de aplicación seleccionado está para ser ejecutado sobre una plataforma diferente de una plataforma por omisión del dispositivo de usuario. 15. - El sistema de conformidad con la reivindicación 7, caracterizado además porque el componente de procesamiento central es operativo para ejecutar el programa de despacho de aplicación para solicitar la generación de la emulación de plataforma sobre un servidor remoto cuando el programa de aplicación seleccionado se proporciona sobre un unidad de almacenamiento extraíble en uno de la pluralidad de archivos enchufables y para ejecutarse sobre una plataforma diferente de una plataforma por omisión del dispositivo de usuario. 16.- El sistema de conformidad con la reivindicación 15, caracterizado además porque el servidor remoto descarga la emulación de plataforma hacia el dispositivo de usuario después de recibir la petición desde el programa de despacho de aplicación. 17.- El sistema de conformidad con la reivindicación 7, caracterizado además porque el programa de activación de circuito es operativo para configurar una pluralidad de circuitos configurables que comprenden el componente reprogramable con base en la emulación de plataforma ejecutada por el componente de procesamiento central. 18. - El sistema de conformidad con la reivindicación 7, caracterizado además porque el componente de entrada/salida es operativo para desplegar la información producida por la ejecución del programa de aplicación sobre la emulación de plataforma sobre un dispositivo electrónico especificado por el usuario. 19. - El sistema de conformidad con la reivindicación 7, caracterizado además porque el componente de datos es operativo para almacenar un perfil de usuario, el perfil de usuario teniendo una pluralidad de campos incluyendo por lo menos un campo para almacenar información identificando el programa de aplicación seleccionado y un campo para almacenar información sobre una frecuencia de uso para el programa de aplicación seleccionado. 20. - El sistema de conformidad con la reivindicación 6, caracterizado además porque el componente reprogramable es un circuito (FPGA) de matriz de puertas programable in situ. 21. - El sistema de conformidad con la reivindicación 6, caracterizado además porque el componente reprogramable comprende una memoria de solo lectura (EEPROM) programable y borrable eléctricamente. 22. - El sistema de conformidad con la reivindicación 6, caracterizado además porque el componente programable es (PRFPGA) una matriz de puertas programable in situ reconfigurable parcialmente. 23. - El sistema de conformidad con la reivindicación 6, caracterizado además porque el componente reprogramable es una memoria de solo lectura programable eléctricamente (EPROM). 24. - El sistema de conformidad con la reivindicación 19, caracterizado además porque la pluralidad de campos en el perfil de usuario además incluye un campo para almacenar una imagen en línea personal de usuario, un campo almacenando un identificador de región geográfica y un campo para almacenar un conjunto dé datos asociativos, el conjunto de datos asociativos incluyendo correspondencias entre programas de aplicación seleccionados por el usuario y programas de aplicación seleccionados por otros usuarios en la misma región geográfica. 25. - El sistema de conformidad con la reivindicación 5, caracterizado además porque adicionalmente comprende una pluralidad de nodos de procesamiento intermedio, por lo menos un nodo intermedio controlando el procesamiento y flujo de información en una región geográfica distinta, cada región geográfica distinta incluyendo una pluralidad de usuarios que tienen componentes de datos almacenando el mismo identificador de región geográfica. 26. - El sistema de conformidad con la reivindicación 8, caracterizado además porque adicionalmente comprende una pluralidad de nodos de procesamiento intermedio, por lo menos un nodo intermedio controlando el procesamiento y flujo de información den una región geográfica distinta, cada región geográfica distinta incluyendo una pluralidad de usuarios que tienen componentes de datos almacenando el mismo identificador de región geográfica. 27. - El sistema de conformidad con la reivindicación 7, caracterizado además porque el programa de activación de circuito es operativo para controlar por lo menos uno de la activación, des-activación, habilitación y deshabilitación de por lo menos uno de la pluralidad de circuitos reconfigurables proporcionados por el componente reprogramable. 28. - El sistema de conformidad con la reivindicación 6, caracterizado además porque el componente de datos comprende un monitor de selección de aplicación operativo para monitorear cada selección del programa de aplicación, un motor de interfaz híbrido operativo para analizar cada selección de aplicación monitoreada por el monitor de selección de aplicación y para comparar cada programa de aplicación seleccionado con selecciones de programa de aplicación anteriores para el dispositivo electrónico, y un identificador de emulación operativo para identificar una emulación de plataforma para ejecución de cada programa de aplicación seleccionado. 29. - El sistema de conformidad con la reivindicación 6, caracterizado además porque el componente de datos es operativo para almacenar un perfil de usuario, un identificador de selección para cada programa de aplicación seleccionado, y un identificador de emulación para cada emulación de plataforma ejecutada para cada programa de aplicación seleccionado. 30.- El sistema de conformidad con la reivindicación 6, caracterizado además porque el identificador de emulación identifica la emulación de plataforma a partir de valor pre-designados almacenados en la memoria.
MX2008010441A 2006-02-13 2007-02-13 Sistema y metodo para generar y ejecutar una emulacion de plataforma basada en una aplicacion seleccionada. MX2008010441A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US76682206P 2006-02-13 2006-02-13
PCT/US2007/062089 WO2007095552A2 (en) 2006-02-13 2007-02-13 System and method for generating and executing a platform emulation based on a selected application

Publications (1)

Publication Number Publication Date
MX2008010441A true MX2008010441A (es) 2009-02-20

Family

ID=38372225

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2008010441A MX2008010441A (es) 2006-02-13 2007-02-13 Sistema y metodo para generar y ejecutar una emulacion de plataforma basada en una aplicacion seleccionada.

Country Status (10)

Country Link
US (1) US20070192082A1 (es)
EP (1) EP1992123A2 (es)
JP (1) JP2010518462A (es)
KR (1) KR20080098410A (es)
CN (1) CN101421984A (es)
AU (1) AU2007214516A1 (es)
BR (1) BRPI0707780A2 (es)
CA (1) CA2642283A1 (es)
MX (1) MX2008010441A (es)
WO (1) WO2007095552A2 (es)

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7991602B2 (en) * 2005-01-27 2011-08-02 Rockwell Automation Technologies, Inc. Agent simulation development environment
KR101385162B1 (ko) * 2007-09-10 2014-04-15 삼성전자주식회사 전자장치 및 그의 프로그램 다운로드 방법
CN102254089A (zh) * 2011-04-18 2011-11-23 王钰 一种体系仿真方法和系统
WO2013003556A1 (en) * 2011-06-29 2013-01-03 Amazon Technologies, Inc. Data locker synchronization
CN102291493B (zh) * 2011-08-25 2012-10-03 华为终端有限公司 移动终端的应用参数配置方法、相关装置以及系统
KR20130087749A (ko) * 2012-01-30 2013-08-07 삼성전자주식회사 전자장치 및 그 제어방법과, 어플리케이션을 검사하는 시스템
KR102007257B1 (ko) * 2012-03-05 2019-08-05 삼성전자주식회사 플랫폼 최적화 가이드 정보 제공 시스템 및 그 가이드 제공 방법
US9392047B1 (en) * 2012-09-13 2016-07-12 Amazon Technologies, Inc. Facilitating application compatibility across devices
KR101497968B1 (ko) * 2013-12-18 2015-03-10 대한민국(국가기록원) 파일 조회 시스템 및 그 조회 방법
WO2015168849A1 (zh) * 2014-05-05 2015-11-12 华为技术有限公司 一种拟真桌面建立方法及相关装置
US9830193B1 (en) 2014-09-30 2017-11-28 Amazon Technologies, Inc. Automatic management of low latency computational capacity
US9600312B2 (en) 2014-09-30 2017-03-21 Amazon Technologies, Inc. Threading as a service
US9323556B2 (en) 2014-09-30 2016-04-26 Amazon Technologies, Inc. Programmatic event detection and message generation for requests to execute program code
US9146764B1 (en) 2014-09-30 2015-09-29 Amazon Technologies, Inc. Processing event messages for user requests to execute program code
US9678773B1 (en) 2014-09-30 2017-06-13 Amazon Technologies, Inc. Low latency computational capacity provisioning
US10048974B1 (en) 2014-09-30 2018-08-14 Amazon Technologies, Inc. Message-based computation request scheduling
US9413626B2 (en) 2014-12-05 2016-08-09 Amazon Technologies, Inc. Automatic management of resource sizing
US9733967B2 (en) 2015-02-04 2017-08-15 Amazon Technologies, Inc. Security protocols for low latency execution of program code
US9588790B1 (en) 2015-02-04 2017-03-07 Amazon Technologies, Inc. Stateful virtual compute system
US9785476B2 (en) 2015-04-08 2017-10-10 Amazon Technologies, Inc. Endpoint management system and virtual compute system
US9930103B2 (en) 2015-04-08 2018-03-27 Amazon Technologies, Inc. Endpoint management system providing an application programming interface proxy service
US9910713B2 (en) 2015-12-21 2018-03-06 Amazon Technologies, Inc. Code execution request routing
US10067801B1 (en) 2015-12-21 2018-09-04 Amazon Technologies, Inc. Acquisition and maintenance of compute capacity
US11132213B1 (en) 2016-03-30 2021-09-28 Amazon Technologies, Inc. Dependency-based process of pre-existing data sets at an on demand code execution environment
US10891145B2 (en) 2016-03-30 2021-01-12 Amazon Technologies, Inc. Processing pre-existing data sets at an on demand code execution environment
US10102040B2 (en) 2016-06-29 2018-10-16 Amazon Technologies, Inc Adjusting variable limit on concurrent code executions
US10884787B1 (en) * 2016-09-23 2021-01-05 Amazon Technologies, Inc. Execution guarantees in an on-demand network code execution system
US10831898B1 (en) 2018-02-05 2020-11-10 Amazon Technologies, Inc. Detecting privilege escalations in code including cross-service calls
US10733085B1 (en) 2018-02-05 2020-08-04 Amazon Technologies, Inc. Detecting impedance mismatches due to cross-service calls
US10725752B1 (en) 2018-02-13 2020-07-28 Amazon Technologies, Inc. Dependency handling in an on-demand network code execution system
US10776091B1 (en) 2018-02-26 2020-09-15 Amazon Technologies, Inc. Logging endpoint in an on-demand code execution system
US10853115B2 (en) 2018-06-25 2020-12-01 Amazon Technologies, Inc. Execution of auxiliary functions in an on-demand network code execution system
US10649749B1 (en) 2018-06-26 2020-05-12 Amazon Technologies, Inc. Cross-environment application of tracing information for improved code execution
US11146569B1 (en) 2018-06-28 2021-10-12 Amazon Technologies, Inc. Escalation-resistant secure network services using request-scoped authentication information
US10949237B2 (en) 2018-06-29 2021-03-16 Amazon Technologies, Inc. Operating system customization in an on-demand network code execution system
US11099870B1 (en) 2018-07-25 2021-08-24 Amazon Technologies, Inc. Reducing execution times in an on-demand network code execution system using saved machine states
US11243953B2 (en) 2018-09-27 2022-02-08 Amazon Technologies, Inc. Mapreduce implementation in an on-demand network code execution system and stream data processing system
US11099917B2 (en) 2018-09-27 2021-08-24 Amazon Technologies, Inc. Efficient state maintenance for execution environments in an on-demand code execution system
US11586596B2 (en) * 2018-10-05 2023-02-21 Tata Consultancy Services Limited Methods and systems for hierarchical dynamic cataloging
US11943093B1 (en) 2018-11-20 2024-03-26 Amazon Technologies, Inc. Network connection recovery after virtual machine transition in an on-demand network code execution system
US10884812B2 (en) 2018-12-13 2021-01-05 Amazon Technologies, Inc. Performance-based hardware emulation in an on-demand network code execution system
US11010188B1 (en) 2019-02-05 2021-05-18 Amazon Technologies, Inc. Simulated data object storage using on-demand computation of data objects
US11861386B1 (en) 2019-03-22 2024-01-02 Amazon Technologies, Inc. Application gateways in an on-demand network code execution system
US11119809B1 (en) 2019-06-20 2021-09-14 Amazon Technologies, Inc. Virtualization-based transaction handling in an on-demand network code execution system
US11159528B2 (en) 2019-06-28 2021-10-26 Amazon Technologies, Inc. Authentication to network-services using hosted authentication information
US11115404B2 (en) 2019-06-28 2021-09-07 Amazon Technologies, Inc. Facilitating service connections in serverless code executions
US11190609B2 (en) 2019-06-28 2021-11-30 Amazon Technologies, Inc. Connection pooling for scalable network services
US11106477B2 (en) 2019-09-27 2021-08-31 Amazon Technologies, Inc. Execution of owner-specified code during input/output path to object storage service
US11386230B2 (en) 2019-09-27 2022-07-12 Amazon Technologies, Inc. On-demand code obfuscation of data in input path of object storage service
US11250007B1 (en) 2019-09-27 2022-02-15 Amazon Technologies, Inc. On-demand execution of object combination code in output path of object storage service
US11360948B2 (en) 2019-09-27 2022-06-14 Amazon Technologies, Inc. Inserting owner-specified data processing pipelines into input/output path of object storage service
US11416628B2 (en) 2019-09-27 2022-08-16 Amazon Technologies, Inc. User-specific data manipulation system for object storage service based on user-submitted code
US11055112B2 (en) 2019-09-27 2021-07-06 Amazon Technologies, Inc. Inserting executions of owner-specified code into input/output path of object storage service
US10908927B1 (en) 2019-09-27 2021-02-02 Amazon Technologies, Inc. On-demand execution of object filter code in output path of object storage service
US11550944B2 (en) 2019-09-27 2023-01-10 Amazon Technologies, Inc. Code execution environment customization system for object storage service
US10996961B2 (en) 2019-09-27 2021-05-04 Amazon Technologies, Inc. On-demand indexing of data in input path of object storage service
US11023311B2 (en) 2019-09-27 2021-06-01 Amazon Technologies, Inc. On-demand code execution in input path of data uploaded to storage service in multiple data portions
US11656892B1 (en) 2019-09-27 2023-05-23 Amazon Technologies, Inc. Sequential execution of user-submitted code and native functions
US11023416B2 (en) 2019-09-27 2021-06-01 Amazon Technologies, Inc. Data access control system for object storage service based on owner-defined code
US11263220B2 (en) 2019-09-27 2022-03-01 Amazon Technologies, Inc. On-demand execution of object transformation code in output path of object storage service
US11394761B1 (en) 2019-09-27 2022-07-19 Amazon Technologies, Inc. Execution of user-submitted code on a stream of data
US11119826B2 (en) 2019-11-27 2021-09-14 Amazon Technologies, Inc. Serverless call distribution to implement spillover while avoiding cold starts
US10942795B1 (en) 2019-11-27 2021-03-09 Amazon Technologies, Inc. Serverless call distribution to utilize reserved capacity without inhibiting scaling
US11714682B1 (en) 2020-03-03 2023-08-01 Amazon Technologies, Inc. Reclaiming computing resources in an on-demand code execution system
US11188391B1 (en) 2020-03-11 2021-11-30 Amazon Technologies, Inc. Allocating resources to on-demand code executions under scarcity conditions
US11775640B1 (en) 2020-03-30 2023-10-03 Amazon Technologies, Inc. Resource utilization-based malicious task detection in an on-demand code execution system
US11550713B1 (en) 2020-11-25 2023-01-10 Amazon Technologies, Inc. Garbage collection in distributed systems using life cycled storage roots
US11593270B1 (en) 2020-11-25 2023-02-28 Amazon Technologies, Inc. Fast distributed caching using erasure coded object parts
US11388210B1 (en) 2021-06-30 2022-07-12 Amazon Technologies, Inc. Streaming analytics using a serverless compute system
US11968280B1 (en) 2021-11-24 2024-04-23 Amazon Technologies, Inc. Controlling ingestion of streaming data to serverless function executions
US12015603B2 (en) 2021-12-10 2024-06-18 Amazon Technologies, Inc. Multi-tenant mode for serverless code execution

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6738977B1 (en) * 2000-05-31 2004-05-18 International Business Machines Corporation Class sharing between multiple virtual machines
US20040059562A1 (en) * 2002-09-20 2004-03-25 Bergman Eric D. Systems and methods for calibrating emulated device performance
KR100565295B1 (ko) * 2003-10-08 2006-03-30 엘지전자 주식회사 이동 통신 단말기의 자바 에뮬레이션 방법
KR100578592B1 (ko) * 2004-06-23 2006-05-12 공정배 서버/클라이언트 기반에서 온라인 이기종 운영 체제 제공 시스템 및 방법
US7360154B2 (en) * 2004-11-17 2008-04-15 Cisco Technology, Inc. System and method for virtual router enabled electronic documents
US7558719B1 (en) * 2005-04-14 2009-07-07 Xilinx, Inc. System and method for runtime analysis of system models for variable fidelity performance analysis
MX2008012648A (es) * 2006-03-31 2009-04-15 Maria Gaos Sistema y metodos para el procedimiento de informacion de lado del cliente.
US20070294337A1 (en) * 2006-03-31 2007-12-20 Maria Gaos Client-side information processing system, apparatus and methods

Also Published As

Publication number Publication date
CA2642283A1 (en) 2007-08-23
CN101421984A (zh) 2009-04-29
EP1992123A2 (en) 2008-11-19
JP2010518462A (ja) 2010-05-27
KR20080098410A (ko) 2008-11-07
BRPI0707780A2 (pt) 2011-05-10
AU2007214516A1 (en) 2007-08-23
WO2007095552A2 (en) 2007-08-23
US20070192082A1 (en) 2007-08-16
WO2007095552A3 (en) 2007-10-11

Similar Documents

Publication Publication Date Title
MX2008010441A (es) Sistema y metodo para generar y ejecutar una emulacion de plataforma basada en una aplicacion seleccionada.
US20200213360A1 (en) EXTENDING MANAGEMENT CONTROL TO IoT DEVICES
US7703091B1 (en) Methods and apparatus for installing agents in a managed network
US8290627B2 (en) Dynamically extensible and automatically configurable building automation system and architecture
US10003496B1 (en) Network change management
KR101369026B1 (ko) 상이한 정보 기술 제품/솔루션 배치들 사이에 성능 데이터를 공유하기 위한 방법 및 시스템
US7552217B2 (en) System and method for Automatic firmware image recovery for server management operational code
US20100106804A1 (en) System and method for processing local files using remote applications
JP5452589B2 (ja) 被管理ノードの初期動作状態
EP1497727A2 (en) Method and system for parallel operation and control of legacy computer clusters
CN106797670B (zh) 一种物理交换机初始化方法的和装置
US20100042991A1 (en) Business-in-a-box integration server and integration method
US11418414B2 (en) Method for coordinating a plurality of device management servers
US20100131627A1 (en) Method and apparatus for reconfiguring application services in home network environment
JP2023531196A (ja) ネットワーク管理システム、方法、装置及び電子機器
US11221889B2 (en) Method of deploying cloud services quickly
US20060129346A1 (en) Network system for remotely controlling a tester
CN115167874B (zh) 自动驾驶软件镜像部署方法、装置、电子设备和可读介质
US20060265494A1 (en) Home network simulation system and method
CN111427861B (zh) 分布式文件系统配置方法及装置
JP3738706B2 (ja) 装置内バージョン統一方式
US11134399B1 (en) Connectivity apparatus for remote cell tower integration
US7302476B1 (en) Method and apparatus for configuring a device that is non-conforming with a management system using configurations provided by the management system over a network
CN113193987B (zh) 一种设备管控方法和装置
US11734697B2 (en) Device handoff