IP Library Granted Patent US 9,501,616
Granted Patent B2
US 9,501,616 · App. 14/001,289 · Granted Nov 22, 2016

Processing of digital data, in particular medical data by a virtual machine

Inventors: Claudia Droste (Garching, DE); Klaus Breitschaft (Feldkirchen, DE); Rainer Birkenbach (Erding, DE); Michael Braun (Munich, DE); Klaus Neuner (Glonn, DE); Henrik Wist (Ottobrunn, DE)
Assignee: Brainlab AG
G06F19/321G06F21/41H04L61/306
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,501,616
App. No.
14/001,289
Granted
Nov 22, 2016
Kind
B2
Abstract

The present invention relates to a virtual machine (VM) for processing digital data (MD), in particular medical data by executing a digital data processing application program, in particular a medical data application program called MeDPAP, the virtual machine (VM) being a simulation of a computer, the virtual machine comprising at least the following components: • a MeDPAP controller (MC) which is constituted —so that it can be addressed by a Uniform Resource Identifier called VM-URI via a wide area network (WAN), —to support direct interoperable interaction with a client application (MCA) over the wide area network (WAN), —to assign a Uniform Resource Identifier called MeDPAP-URI to the MeDPAP, and —to send the assigned MeDPAP-URI to the client application via the wide area network (WAN); and • the MeDPAP which is constituted —to process the digital data (MD), —so that it can be addressed by the client application via the wide area network (WAN) by using the MeDPAP-URI, and —to support direct interaction with the client application over the wide area network for receiving instructions from the client application (MCA) to process the digital data.

Claims (143)

1. A system comprising a processor coupled to a memory having stored thereon a virtual machine for processing digital data, in particular medical data by executing an executable digital data processing application program, in particular a medical data application program called MeDPAP, the virtual machine, when executed by the processor, is a simulation of a computer, the virtual machine being a simulation of a server, the virtual machine comprising at least the following components:

a MeDPAP controller which is running on the virtual machine and which is constituted

so that it can be addressed by a Uniform Resource Identifier called VM-URI via a wide area network,

to support direct interoperable interaction with a client application over the wide area network,

to assign a Uniform Resource Identifier called MeDPAP-URI to the MeDPAP, and

to send the assigned MeDPAP-URI to the client application via the wide area network; and

the MeDPAP which is running on the virtual machine and which is constituted

to process the digital data,

so that it can be directly addressed by the client application via the wide area network by using the MeDPAP-URI, such that the MeDPAP can be addressed without needing the MeDPAP controller or a web service as an interface, and

to support direct interaction with the client application over the wide area network for receiving instructions from the client application to process the digital data,

wherein the virtual machine is constituted so that a plurality of the MeDPAPs can be executed on the virtual machine;

herein the MeDPAP controller is constituted

to respectively assign individual MeDPAP-URIs (URIi) to the MeDPAPs and to store the respective assignment between the MeDPAP-URIs and MeDPAPs,

to be addressable by a plurality of the client applications via the wide area network (WAN) by using the VM-URI,

to respectively and exclusively assign one of the MeDPAP-URIs (URIi) to one of the MeDPAPs, and

to respectively send the assigned MeDPAP-URIs to the assigned client applications; and

wherein the MeDPAP is constituted so that if the plurality of MeDPAPs are executed on the VM, the MeDPAPs can be respectively addressed by one of the plurality of the client applications via the wide area network (WAN) by using the sent and assigned individual MeDPAP-URI (URIi) and respectively support direct interaction with the client applications over the wide area network (WAN) for receiving instructions from the client applications to process the digital data, wherein there is a bijective direct communication between the individual client applications and the individual MeDPAPs so that one MeDPAP is processing the digital data only for one client application.

2. The system of claim 1 , comprising:

wherein the MeDPAP is constituted

to store a file of the processed digital data called Prodaf in a storage space,

to translate a location of the Prodaf into an individual Unique Resource Identifier called Prodaf-URI, and

to send the Prodaf-URI to the client application via the wide area network;

wherein the MeDPAP controller is constituted

to re-translate the Prodaf-URI received from the client application via the wide area network into the location of the Prodaf,

to read the Prodaf by using the re-translated storage location, and

to send the Prodaf to the client application via the wide area network.

3. The system of claim 1 , wherein

the MeDPAP is constituted

to store a file of the processed digital data called Prodaf in a storage space,

to translate a location of the Prodaf into an individual Unique Resource Identifier called Prodaf-URI, and

to send the Prodaf-URI to the client application via the wide area network;

wherein the MeDPAP controller is constituted

to re-translate the Prodaf-URI received from the client application via the wide area network into the location of the Prodaf,

to read the Prodaf by using the re-translated storage location, and

to send the Prodaf to the client application via the wide area network

the virtual machine comprises a VM data storage for storing the digital data to be processed and/or the processed digital data;

the MeDPAP controller is constituted to respectively and exclusively assign one of the storage spaces within the VM data storage to one of the MeDPAPs;

the MeDPAPs are respectively constituted to respectively store the Prodafs only in the respectively and exclusively assigned storage spaces; and

the MeDPAP controller is constituted to look for a respective one the Prodafs only within the one of the storage spaces respectively and exclusively assigned to that one of the MeDPAPs which has generated the respective one of the Prodafs.

4. The system of claim 3 , wherein the MeDPAP controller is constituted

to generate an individual identifier called VM session ID for each communication session with one of the client applications;

to send the VM session ID to the respective client application;

to respectively assign the storage spaces to the VM session IDs; and

to receive the VM session ID in addition to the request to read the Prodaf from the client application, and

to look for the Prodaf only within the storage space assigned to the received VM session ID.

5. The system of claim 4 , wherein the MeDPAP is configured

to receive a session ID called portal session ID from the client application;

to store the received portal session ID;

to check a later received portal session ID whether it corresponds to the stored portal session, and

to process the digital data only if the checking results indicates a correspondence.

6. The system according to claim 5 , wherein the MeDPAP controller is constituted

to stop a MeDPAP and to erase the content in the storage space assigned to the stopped MeDPAP; and

to start a new MeDPAP and wherein

the MeDPAP controller and/or the new MeDPAP is constituted to check whether the storage space assigned to the new MeDPAP is empty and/or to erase the content in the assigned storage space when the new MeDPAP is started.

7. The system of claim 5 , wherein the MeDPAP controller is constituted to

respectively and exclusively assign one of the executed MeDPAPs to one of the communication sessions;

to monitor the number of MeDPAPs assigned to the communication sessions;

to report the number to a server application called login server application;

to receive instruction from the login server application to start a new virtual machine;

and to start the new virtual machine in response to the instruction.

8. The system according to claim 1 , wherein the MeDPAP controller is constituted to start a new MeDPAP in order to maintain the number of MeDPAPs irrespective of the number of client applications communicating with the MeDPAP controller.

9. The system of claim 1 , wherein the MeDPAP controller is constituted

to respectively generate the VM session IDs for the communication sessions with the client applications;

to receive a session ID called portal session ID from each one of the client applications which portal session ID is individual for each client application and which origins from a server application

to send the portal session ID to the server application

to receive an acknowledgement from the server application according to which the portal session ID is valid or not; and

to send the VM session ID to the client application only if the portal session ID is valid.

10. A non-transient data storage medium comprising system image data describing a system image of a virtual machine, the virtual machine being for processing digital data, in particular medical data by executing an executable digital data processing application program, in particular a medical data application program called MeDPAP, the virtual machine being a simulation of a computer, the simulation running on a computer system, the virtual machine being a simulation of a server, the virtual machine comprising at least the following components:

a MeDPAP controller which is running on the virtual machine and which is constituted

so that it can be addressed by a Uniform Resource Identifier called VM-URI via a wide area network,

to support direct interoperable interaction with a client application over the wide area network,

to assign a Uniform Resource Identifier called MeDPAP-URI to the MeDPAP, and

to send the assigned MeDPAP-URI to the client application via the wide area network; and

the MeDPAP which is running on the virtual machine and which is constituted

to process the digital data,

so that it can be directly addressed by the client application via the wide area network by using the MeDPAP-URI, such that the MeDPAP can be addressed without needing the MeDPAP controller or a web service as an interface, and

to support direct interaction with the client application over the wide area network for receiving instructions from the client application to process the digital data,

wherein the virtual machine is constituted so that a plurality of the MeDPAPs can be executed on the virtual machine;

wherein the MeDPAP controller is constituted

to respectively assign individual MeDPAP-URIs (URIi) to the MeDPAPs and to store the respective assignment between the MeDPAP-URIs and MeDPAPs,

to be addressable by a plurality of the client applications via the wide area network (WAN) by using the VM-URI,

to respectively and exclusively assign one of the MeDPAP-URIs (URIi) to one of the MeDPAPs, and

to respectively send the assigned MeDPAP-URIs to the assigned client applications; and

wherein the MeDPAP is constituted so that if the plurality of MeDPAPs are executed on the VM, the MeDPAPs can be respectively addressed by one of the plurality of the client applications via the wide area network (WAN) by using the sent and assigned individual MeDPAP-URI (URIi) and respectively support direct interaction with the client applications over the wide area network (WAN) for receiving instructions from the client applications to process the digital data, wherein there is a bijective direct communication between the individual client applications and the individual MeDPAPs so that one MeDPAP is processing the digital data only for one client application.

11. A cloud computer system comprising a number of computers, wherein a plurality of virtual machines are running on the cloud computer system, the virtual machines being for processing digital data, in particular medical data by executing an executable digital data processing application program, in particular a medical data application program called MeDPAP, the virtual machine being a simulation of a computer, the simulation running on a computer system, the virtual machine being a simulation of a server, the virtual machine comprising at least the following components:

a MeDPAP controller which is running on the virtual machine and which is constituted

so that it can be addressed by a Uniform Resource Identifier called VM-URI via a wide area network,

to support direct interoperable interaction with a client application over the wide area network,

to assign a Uniform Resource Identifier called MeDPAP-URI to the MeDPAP, and

to send the assigned MeDPAP-URI to the client application via the wide area network; and

the MeDPAP which is running on the virtual machine and which is constituted

to process the digital data,

so that it can be directly addressed by the client application via the wide area network by using the MeDPAP-URI, such that the MeDPAP can be addressed without needing the MeDPAP controller or a web service as an interface, and

to support direct interaction with the client application over the wide area network for receiving instructions from the client application to process the digital data,

wherein the virtual machine is constituted so that a plurality of the MeDPAPs can be executed on the virtual machine;

wherein the MeDPAP controller is constituted

to respectively assign individual MeDPAP-URIs (URIi) to the MeDPAPs and to store the respective assignment between the MeDPAP-URIs and MeDPAPs,

to be addressable by a plurality of the client applications via the wide area network (WAN) by using the VM-URI,

to respectively and exclusively assign one of the MeDPAP-URIs (URIi) to one of the MeDPAPs, and

to respectively send the assigned MeDPAP-URIs to the assigned client applications; and

wherein the MeDPAP is constituted so that if the plurality of MeDPAPs are executed on the VM, the MeDPAPs can be respectively addressed by one of the plurality of the client applications via the wide area network (WAN) by using the sent and assigned individual MeDPAP-URI (URIi) and respectively support direct interaction with the client applications over the wide area network (WAN) for receiving instructions from the client applications to process the digital data, wherein there is a bijective direct communication between the individual client applications and the individual MeDPAPs so that one MeDPAP is processing the digital data only for one client application.

12. An electronic network system comprising:

the cloud computer system of claim 11 ;

a plurality of client computers on which the plurality of client applications are running and which are connected to the cloud computer system via the wide area network to exchange data with the MeDPAP controller by using the VM-URI and to respectively exchange data with the MeDPAPs by using the MeDPAP-URIs respectively and exclusively assigned to one of the client applications so that only one client application is communicating with one MeDPAP.

13. A method of transforming a virtual machine, comprising the steps of

a) logging in to the virtual machine to be transformed; and

b) i) loading a system image of another virtual machine into the virtual machine to be transformed or ii) installing the components of the other virtual machine on the virtual machine to be transformed, wherein the other virtual machine is a virtual machine for processing digital data, in particular medical data by executing an executable digital data processing application program, in particular a medical data application program called MeDPAP, the virtual machine being a simulation of a computer, the simulation running on a computer system, the virtual machine being a simulation of a server, the virtual machine comprising at least the following components:

a MeDPAP controller which is running on the virtual machine and which is constituted

so that it can be addressed by a Uniform Resource Identifier called VM-URI via a wide area network,

to support direct interoperable interaction with a client application over the wide area network,

to assign a Uniform Resource Identifier called MeDPAP-URI to the MeDPAP, and

to send the assigned MeDPAP-URI to the client application via the wide area network; and

the MeDPAP which is running on the virtual machine and which is constituted

to process the digital data,

so that it can be directly addressed by the client application via the wide area network by using the MeDPAP-URI, such that the MeDPAP can be addressed without needing the MeDPAP controller or a web service as an interface, and

to support direct interaction with the client application over the wide area network for receiving instructions from the client application to process the digital data,

wherein the virtual machine is constituted so that a plurality of the MeDPAPs can be executed on the virtual machine;

wherein the MeDPAP controller is constituted

to respectively assign individual MeDPAP-URIs (URIi) to the MeDPAPs and to store the respective assignment between the MeDPAP-URIs and MeDPAPs,

to be addressable by a plurality of the client applications via the wide area network (WAN) by using the VM-URI,

to respectively and exclusively assign one of the MeDPAP-URIs (URIi) to one of the MeDPAPs, and

to respectively send the assigned MeDPAP-URIs to the assigned client applications; and

wherein the MeDPAP is constituted so that if the plurality of MeDPAPs are executed on the VM, the MeDPAPs can be respectively addressed by one of the plurality of the client applications via the wide area network (WAN) by using the sent and assigned individual MeDPAP-URI (URIi) and respectively support direct interaction with the client applications over the wide area network (WAN) for receiving instructions from the client applications to process the digital data, wherein there is a bijective direct communication between the individual client applications and the individual MeDPAPs so that one MeDPAP is processing the digital data only for one client application.

14. A non-transient program storage medium on which a program is stored, which, when running on a computer or when loaded onto a computer, causes the computer to performs steps as follows:

a) logging in to a virtual machine to be transformed; and

b) i) loading a system image of another virtual machine into the virtual machine to be transformed or ii) installing the components of the other virtual machine on the virtual machine to be transformed, wherein the other virtual machine is a virtual machine for processing digital data, in particular medical data by executing an executable digital data processing application program, in particular a medical data application program called MeDPAP, the virtual machine being a simulation of a computer, the simulation running on a computer system, the virtual machine being a simulation of a server, the virtual machine comprising at least the following components:

a MeDPAP controller which is running on the virtual machine and which is constituted

so that it can be addressed by a Uniform Resource Identifier called VM-URI via a wide area network,

to support direct interoperable interaction with a client application over the wide area network,

to assign a Uniform Resource Identifier called MeDPAP-URI to the MeDPAP, and

to send the assigned MeDPAP-URI to the client application via the wide area network; and

the MeDPAP which is running on the virtual machine and which is constituted

to process the digital data,

so that it can be directly addressed by the client application via the wide area network by using the MeDPAP-URI, such that the MeDPAP can be addressed without needing the MeDPAP controller or a web service as an interface, and

to support direct interaction with the client application over the wide area network for receiving instructions from the client application to process the digital data,

wherein the virtual machine is constituted so that a plurality of the MeDPAPs can be executed on the virtual machine;

wherein the MeDPAP controller is constituted

to respectively assign individual MeDPAP-URIs (URIi) to the MeDPAPs and to store the respective assignment between the MeDPAP-URIs and MeDPAPs,

to be addressable by a plurality of the client applications via the wide area network (WAN) by using the VM-URI,

to respectively and exclusively assign one of the MeDPAP-URIs (URIi) to one of the MeDPAPs, and

to respectively send the assigned MeDPAP-URIs to the assigned client applications; and

wherein the MeDPAP is constituted so that if the plurality of MeDPAPs are executed on the VM, the MeDPAPs can be respectively addressed by one of the plurality of the client applications via the wide area network (WAN) by using the sent and assigned individual MeDPAP-URI (URIi) and respectively support direct interaction with the client applications over the wide area network (WAN) for receiving instructions from the client applications to process the digital data, wherein there is a bijective direct communication between the individual client applications and the individual MeDPAPs so that one MeDPAP is processing the digital data only for one client application.

15. A computer comprising the non-transient program storage medium of claim 14 .

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2025
From: BRAINLAB AG
To: BRAINLAB SE
Reel/Frame 072448/0331 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2025
From: BRAINLAB SE
To: SNKE OS GMBH
Reel/Frame 072448/0580 →
Continuity (1)
Related Publication 20130339958A1 · Dec 19, 2013