| Publishing live appliances -> Monitor Keywords |
|
Publishing live appliancesRelated Patent Categories: Electrical Computers And Digital Processing Systems: Multicomputer Data Transferring, Distributed Data ProcessingPublishing live appliances description/claimsThe Patent Description & Claims data below is from USPTO Patent Application 20080077648, Publishing live appliances. Brief Patent Description - Full Patent Description - Patent Application Claims CROSS-REFERENCE TO RELATED APPLICATIONS [0001] This application claims the benefit under 35 U.S.C. .sctn. 119(e) of U.S. Patent Application No. 60/835,258, titled "Sharing Live Appliances," filed Aug. 2, 2006, which is incorporated herein by reference. BACKGROUND [0002] This specification relates to creating, publishing, subscribing to, and using virtual machines. [0003] A virtual machine is software construct that appears to be hardware on which a guest operating system and applications can be installed. In an emulator implementation, the virtual machine is an emulator, simulating all of the hardware used by the guest operating system and applications. In para-virtualization, the virtual machine allows the guest operating system and applications to run on the host hardware, but requires that the guest operating system be modified to use a special API (application programming interface) to run on the virtual machine monitor. In machine-level or full virtualization, the virtual machine allows a guest operating system that is implemented for the underlying host processor to be run without modification. [0004] In a para-virtualization or a machine-level virtualization implementation, a virtual machine monitor is used to bind the virtual machine to the underlying host hardware. In some architectures, the virtual machine monitor runs directly on the host hardware, in a hypervisor configuration. In others, it runs as an application on the host operating system. [0005] In some architectures, a lightweight hypervisor is run between the host operating system and the host hardware that provides a calling interface for both the host operating system and the virtual machine monitors. [0006] In some architectures, a hypervisor uses the services of a host operating system for device and other support. SUMMARY [0007] This specification describes technologies for publishing, distributing, and subscribing to one or more live appliances. A live appliance includes a virtual machine image, and generally a sequence of virtual machine images. [0008] In general, one aspect of the subject matter described in this specification can be embodied in methods that include the actions of receiving in a computer a request to run a live appliance, the live appliance providing a computing environment that a user can run on the computer, the live appliance being defined by a data source that includes a version description for a current version of a virtual machine image; determining whether the computer has subscribed to the live appliance, and if not, subscribing to the live appliance on the computer, reading the data source for the live appliance, and using the current version description to initiate downloading of the current version of the virtual machine image to the computer; when the computer has subscribed to the live appliance, detecting whether a change has occurred in the data source that changes the version description designated as the current version description, and if a change has occurred, reading updated data from the data source, the updated data designating a second version description as the current version description, the second version description describing a different second version of the virtual machine image as the current version of the virtual machine image; obtaining the current version of the virtual machine image as described by the second version description; and running the current version of the virtual machine image. Other embodiments of this aspect include corresponding systems, apparatus, and computer program products. [0009] In general, another aspect of the subject matter described in this specification can be embodied in methods that include the actions of uploading a virtual machine image to a distribution service; and posting a live appliance to a subscription service by providing data source information to the subscription service, the data source information including version information describing a version of a virtual machine image, the version having a virtual machine version configuration. Other embodiments of this aspect include corresponding systems, apparatus, and computer program products. [0010] In general, another aspect of the subject matter described in this specification can be embodied in systems that include one or more computers coupled in data communication with each other and to a data communication network to interact with users; and a post interface, an upload interface, and a system database implemented on the one or more computers; the post interface being operable to receive post input over the network from a publisher user posting a live appliance to the system, the post input including data source information, the data source information including version information describing a version of a virtual machine image, the version having a virtual machine version configuration, in response to which the system registers the live appliance, creates a corresponding data source including the data source information, and stores the corresponding data source in the system database; the upload interface being operable to receive upload input over the network from the publisher user, the upload input including the version of the virtual machine image, and to store the virtual machine image in the system database; where the system being operable to provide a proxy for the live appliance to the publisher user in response to the publisher posting the live appliance. Other embodiments of this aspect include corresponding methods, apparatus, and computer program products. [0011] In general, another aspect of the subject matter described in this specification can be embodied in methods that include the actions of opening a proxy file in response to a user action on a computer, automatically invoking a player application on the computer, the player application performing player actions that include using the proxy file to locate the current version of the virtual machine image; and causing the current version of the virtual machine image to be run by a virtual machine monitor. Other embodiments of this aspect include corresponding systems, apparatus, and computer program products. [0012] In general, another aspect of the subject matter described in this specification can be embodied in memory devices for storing data for access by an application program being executed on a data processing system, whether the memory devices include a data structure stored in the memory, the data structure including a proxy for a live appliance; a data source; and one or more virtual machine version configurations, each version configuration including one or more links to a corresponding virtual machine image; wherein the proxy includes a source identifier that can be resolved to a location of the data source; the data source includes data designating one of the versions of the virtual machine image as the current version, the current version being described by a current version description; and each version configuration contains configuration data describing the corresponding virtual machine image. [0013] In general, another aspect of the subject matter described in this specification can be embodied in methods that include the actions of receiving in a user interface of a computer an uninterrupted user action opening a proxy document and, in response to the user action and without further user intervention, performing actions that include identifying, based on information in the proxy document, a live appliance; determining whether the computer has subscribed to the live appliance and, if not, subscribing to the live appliance; and running a current version of a virtual machine image from the live appliance, the live appliance including one or more versions of the virtual machine image. Other embodiments of this aspect include corresponding systems, apparatus, and computer program products. [0014] In general, another aspect of the subject matter described in this specification can be embodied in methods that include the actions of registering a live appliance file type on a computer to associate the file type with a player application on the computer, wherein running the player application in response to a user action or a programmatic action opening a first document of the file type on the computer, the player application performing actions that include acting on the first document by reading feed data from a first live appliance data feed source, the data feed source being the first document or being identified by a source locator in the first document; reading a first virtual machine image, the virtual machine image being in the feed source or being identified by an image locator in the feed source; and causing the first virtual machine to be run by a virtual machine monitor. Other embodiments of this aspect include corresponding systems, apparatus, and computer program products. [0015] In general, another aspect of the subject matter described in this specification can be embodied in methods that include the actions of receiving in a user interface of a computer an uninterrupted user action opening a proxy document having a live appliance file type and, in response to the user action and without further user intervention, automatically invoking a player application on the computer, the player application performing actions that include identifying a remote source identifying a current version of a virtual machine image based on information in the proxy document; determining whether a copy of the current version of the virtual machine image has been downloaded to the computer and if not, beginning to download the virtual machine image to the computer; and running the virtual machine image on a virtual machine monitor on the computer. Other embodiments of this aspect include corresponding systems, apparatus, and computer program products. [0016] In general, another aspect of the subject matter described in this specification can be embodied in methods that include the actions of binding data files for a virtual machine image to the virtual machine image automatically from outside the virtual machine image, the data files being also visible as local files on the computer, the data files being bound by being mounted as a directory hierarchy within or as a home directory or a user profile in the virtual machine image. Other embodiments of this aspect include corresponding systems, apparatus, and computer program products. [0017] In general, another aspect of the subject matter described in this specification can be embodied in computer program products tangibly embodied in a computer-readable medium that include a dependent helper in a virtual machine image to implement a user file system protocol to read and write the data files on a local data store, the dependent helper being operable to perform actions including binding data files for the virtual machine image to the virtual machine image automatically from outside the virtual machine image, the data files being also visible as local files on the computer, the data files being bound by being mounted as a directory hierarchy within or as a home directory or a user profile in the virtual machine image; and a player operable to perform actions including configuring a host computer to provide a guest operating system with the user file system for reading and writing the data files. Other embodiments of this aspect include corresponding systems, apparatus, and methods. [0018] The details of one or more embodiments of the subject matter described in this specification are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims. BRIEF DESCRIPTION OF THE DRAWINGS [0019] FIGS. 1A, 1B, and 1C are schematic diagrams illustrating alternative architectures using one or live appliances in accordance with the invention. [0020] FIG. 2 is a schematic diagram illustrating an architecture for publishing, distributing, and subscribing to one or more live appliances. Continue reading about Publishing live appliances... Full patent description for Publishing live appliances Brief Patent Description - Full Patent Description - Patent Application Claims Click on the above for other options relating to this Publishing live appliances patent application. ### 1. Sign up (takes 30 seconds). 2. Fill in the keywords to be monitored. 3. Each week you receive an email with patent applications related to your keywords. Start now! - Receive info on patent apps like Publishing live appliances or other areas of interest. ### Previous Patent Application: Parameterized vlsi architecture and method for binary multipliers Next Patent Application: Method and system for carrying out transactions between units in a network Industry Class: Electrical computers and digital processing systems: multicomputer data transferring or plural processor synchronization ### FreshPatents.com Support Thank you for viewing the Publishing live appliances patent info. IP-related news and info Results in 0.10365 seconds Other interesting Feshpatents.com categories: Computers: Graphics , I/O , Processors , Dyn. Storage , Static Storage , Printers 174 |
* Protect your Inventions * US Patent Office filing
PATENT INFO |
|