Nova Patents
MX336964B

Generating and caching software code.

Abstract

Aspects of the topic described here refer to generating and caching software code. In aspects, a target device may receive software to install. The software may include source code that has not been compiled. The target device can install the software and indicate that the source code of the package is to be compiled into intermediate or executable code that is persistently stored. If the target device receives a request to run the software before it is collected, the target device can collect and run the software without delay. If the target device receives a request to run the software after it was collected, the target device can obtain and execute the collected code. The above behavior can also be applied to script code obtained from a remote server to the target device.

MX336964B, drawing sheet 1
Sheet 1 of 47

Term

6.4 yearsleft in the term

Expires 4 February 2033.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Expires

13 claims: 3 independent, 10 dependent

  1. 1
    CLAIMS ---—........... REIVINDICACIONES ---—........... 1.- A method implemented at least in part by a computer to generate and cache application code, the method comprising:1.- Un método implementado al menos en parte por una computadora para generar y guardar en memoria cache código de aplicación, el método que comprende: receive a request to run an application that includes source code, where the source code is a script file for a website page for which no explicit reference to the script file has been found;recibir una solicitud para ejecutar una aplicación que incluye código de fuente, en donde el código de fuente es un archivo d guión para una página de un sitio web para la cual no s ha encuentrado una referencia explícita al archivo de guión;en respuesta a la solicitud, determinar si un segundo código que ya ha sido generado a partir del código de fuente y almac nado en un almacenamiento no volátil, en donde determinar si el segundo código ya ha sido generado a partir del código de fuente y almacenado en un almacenamiento no volátil comprende revisar el segundo código en una ubicación conocida del almacenamiento no volátil, la ubicación conocida derivada de una referencia que identifica una ubicación de fuente del código de fuente, la ubicación de fuente que se puede alcanzar sobre una red;in response to the request, determine if a second code that has already been generated from the source code and stored in non-volatile storage, where to determine if the second code has already been generated from the source code and stored in non-volatile storage comprises reviewing the second code at a known non-volatile storage location, the known location derived from a reference that identifies a source location of the source code, the source location that can be reached over a network;If the second code has already been generated before receiving the request, perform a first group of actions, which includes: si el segundo código ya ha sido generado antes de recibir la solicitud, realizar un primer grupo de acciones, que comprende: get the second code, and execute the second code or code derived from it;and if the second code has not yet been generated before receiving the request, perform a second group of actions, which includes: obtener el segundo código, y ejecutar el segundo código o código derivado del mismo;y si el segundo código todavía no ha sido generado antes de la recibir la solicitud, realizar un segundo grupo de acciones, que comprende: get the source code;obtener el código de fuente;generar el código de fuente a partir del cód ejecutar el segundo código o código derivado del mismo;generate the source code from the code execute the second code or code derived from it;If the second code has not yet been generated before receiving the request, perform a third group of actions, which includes: si el segundo código todavía no ha sido generado antes de recibir la solicitud, realizar un tercer grupo de acciones, qu comprende: almacenar el segundo código en el almacenamiento no volátil para uso en una ejecución subsiguiente de la aplicación;y cofnjxaTtiF por memoria un archivo que incluye el segundo código y compartir el archivo, a través de la compartición por memoria, con una pluralidad de procedimientos. storing the second code in non-volatile storage for use in a subsequent execution of the application;and cofnjxaTtiF per memory a file that includes the second code and sharing the file, through memory sharing, with a plurality of procedures.
  2. 6
    6, - A system to generate and cache application code in a computing environment, which includes:6, - Un sistema para generar y guardar en memoria cache código de aplicación en un ambiente de cómputo, que comprende: a computer comprising a processing unit coupled to a memory, the memory comprising: una computadora que comprende una unidad de procesamiento acoplada a una memoria, la memoria que comprende: an operable storage for storing data from a package, ei package including application source code, where the source code is a script file for a web site page for which no explicit reference to the file has been found script;un almacenamiento operable para almacenar datos de un paquete, ei paquete que incluye código de fuente de aplicación, en donde el código de fuente es un archivo de guión para una página de un sitio web para la cual no se ha encontrado una referencia explícita al archivo de guión;an installer operable to install the package on storage, the installer also operable to update a data structure to indicate that the r. ή di ao de, —fn "x> .fca—" was compiled to a second code;un instalador operable para instalar el paquete en el almacenamiento, el instalador operable además para actualizar una estructura de datos para indicar que el r. ή di a o de,—fn«x>.fca—»erár compilado a un segundo código;an operable code generator for examining the data structure to identify the source code and, based on the indication in the data structure that the source code will be compiled to the second code, compiling the source code to the second code;un generador de código operable para examinar la estructura de datos para identificar el código de fuente y, basándose en la indicación en la estructura de datos que el código de fuente será compilado al segundo código, compilar el código de fuente al segundo código;a cache manager operable to persistently store the second code in storage and provide access to the second code in storage;un administrador de memoria caché operable para almacenar persistentemente el segundo código en el almacenamiento y proporcionar acceso al segundo código en el almacenamiento;an execution manager operable to receive a request to run the application and to determine if the code generator has already compiled the source code to the second code, where to determine if the code generator has already compiled the source code to the second code comprises reviewing the second code at a known location in non-volatile storage, the known location derived from a reference that identifies a source location of the source code, the source location that can be reached over a network, and, if so, perform actions, including: un administrador de ejecución operable para recibir una solicitud para ejecutar la aplicación y para determinar s¡ el generador de código ya ha compilado el código de fuente al segundo código, en donde determinar si el generador de código ya ha compilado el código de fuente al segundo código comprende revisar el segundo código en una ubicación conocida de un almacenamiento no volátil, la ubicación conocida derivada de una referencia qu identifica una ubicación de fuente del código de fuente, la ubicación de fuente que se puede alcanzar sobre una red, y, si es así, realizar acciones, que comprenden: get the second code;and execute the second code or code derived therefrom;and if not, perform actions, which include: obtaining the second code;obtener el segundo código;y ejecutar el segundo código o código derivado del mismo;y si no, realizar acciones, que comprenden: obtener el segundo código;cause the source code to be compiled to the second provocar que el código de fuente sea compilado al segundo INSTITUTO MEXICANO DE LA PROPIEDAD MEXICAN INSTITUTE OF PROPERTY INDUSTRIAL code, and ————— execute the source code or code derived from it. INDUSTRIAL código, y ————— ejecutar el código de fuente o código derivado del mismo.
  3. 10
    - A device to generate and cache application code in a computing environment, comprising:10. - Un dispositivo para generar y guardar en memoria cache código de aplicación en un ambiente de cómputo, que comprende: a processing unit;una unidad de procesamiento;a storage configured to store data for a package, the package that includes application source code, where the source code is a script file for a page on a website for which no explicit reference to the file has been found script;un almacenamiento configurado para almacenar datos de un paquete, el paquete que incluye código de fuente de aplicación, en donde el código de fuente es un archivo de guión para una página de un sitio web para la cual no se ha encontrado una referencia explícita al archivo de guión;an installer operable to install the package on storage, the installer further operable to update a data structure to indicate that the source code will be compiled into a second code;un instalador operable para instalar el paquete en el almacenamiento, el instalador operable además para actualizar una estructura de datos para indicar que el código de fuente será compilado a un segundo código;an operable code generator for examining the data structure to identify the source code and, based on the indication in the data structure that the source code will be compiled to the second code, compiling the source code to the second code;un generador de código operable para examinar la estructura de datos para identificar el código de fuente y, basándose en la indicación en la estructura de datos que el código de fuente será compilado al segundo código, compilar el código de fuente al segundo código;a cache manager operable to persistently store the second code in storage and provide access to the second code in storage;un administrador de memoria caché operable para almacenar persistentemente el segundo código en el almacenamiento y proporcionar acceso al segundo código en el almacenamiento;an execution manager operable to receive a request to run the application and to determine if the code generator has already compiled the source code to the second code, where to determine if the code generator has already compiled the source code to the second code comprises reviewing the second code at a known location in non-volatile storage, the known location derived from a reference that identifies a source location of the source code, the source location that can be reached over a network, and, if so, perform actions, including: un administrador de ejecución operable para recibir una solicitud para ejecutar la aplicación y para determinar si el generador de código ya ha compilado el código de fuente al segundo código, en donde determinar si el generador de código ya ha compilado el código de fuente al segundo código comprende revisar el segundo código en una ubicación conocida de un almacenamiento no volátil, la ubicación conocida derivada de una referencia que identifica una ubicación de fuente del código de fuente, la ubicación de fuente que se puede alcanzar sobre una red, y, si es así, realizar acciones, que comprenden: get the second code;and execute the second code or code derived therefrom;and if not, perform actions, which include: obtaining the second code;obtener el segundo código;y ejecutar el segundo código o código derivado del mismo;y si no, realizar acciones, que comprenden: obtener el segundo código;cause the source code to be compiled to the second provocar que el código de fuente sea compilado al segundo INSTITUTO MEXICANO MEXICAN INSTITUTE DE LA PROPIEDAD INDUSTRIAL código, y ejecutar el código de fuente o código derivado del mismo. OF THE INDUSTRIAL PROPERTY code, and execute the source code or code derived from it.