Virtual resource ID mapping
First Claim
1. A computer system comprising hardware adapted to execute program instructions from a computer readable storage medium, the program instructions including an application, an operating system and a software module between the operating system and the application for resource requests, wherein, when executed on the computer system:
- the application is operable to generate a first resource request for a resource for use by the application, wherein an application identifier is assigned to the application and identifies the application to the software module;
responsive to the first resource request from the application, the software module is operable to generate a corresponding resource request to the operating system;
the software module is operable to assign a virtual resource identifier to the resource by invoking a resource-specific allocator;
the software module is operable to retrieve the application identifier from a process state corresponding to the application;
responsive to the corresponding resource request, the operating system is operable to allocate the resource and to return a system resource identifier corresponding to the resource to the software module; and
responsive to the system resource identifier from the operating system, the software module is operable to record a mapping of the application identifier, the virtual resource identifier, and the system resource identifier, and the software module is operable to return the virtual resource identifier to the application.
8 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides virtual mapping of system resource identifiers in use by a software application for the purpose of making the running state of an application node independent. By adding a layer of indirection between the application and the resource, new system resources are reallocated and then can be mapped to the application'"'"'s existing resource requirements while it is running, without the application detecting a failure or change in resource handles. This layer of indirection makes the application'"'"'s system resource identifier(system RID) transparent to the application. RID'"'"'s are usually numeric in form, but can also be alphanumeric. RID'"'"'s are unique to a machine, and can be reused once all claims to a specfic RID have been given up.
-
Citations
12 Claims
-
1. A computer system comprising hardware adapted to execute program instructions from a computer readable storage medium, the program instructions including an application, an operating system and a software module between the operating system and the application for resource requests, wherein, when executed on the computer system:
-
the application is operable to generate a first resource request for a resource for use by the application, wherein an application identifier is assigned to the application and identifies the application to the software module; responsive to the first resource request from the application, the software module is operable to generate a corresponding resource request to the operating system; the software module is operable to assign a virtual resource identifier to the resource by invoking a resource-specific allocator; the software module is operable to retrieve the application identifier from a process state corresponding to the application; responsive to the corresponding resource request, the operating system is operable to allocate the resource and to return a system resource identifier corresponding to the resource to the software module; and responsive to the system resource identifier from the operating system, the software module is operable to record a mapping of the application identifier, the virtual resource identifier, and the system resource identifier, and the software module is operable to return the virtual resource identifier to the application. - View Dependent Claims (2, 3, 4)
-
-
5. A computer readable storage medium storing a plurality of instructions which, when executed:
-
generate a corresponding resource request to an operating system responsive to receiving a first resource request from an application for a resource to be used by the application; assign a virtual resource identifier to the resource by invoking a resource-specific allocator; retrieve the application identifier from a process state corresponding to the application; and responsive to receiving a system resource identifier corresponding to the resource from the operating system, record a mapping of an application identifier assigned to the application and identifying the application to the plurality of instructions, the virtual resource identifier, and the system resource identifier, and return the virtual resource identifier to the application. - View Dependent Claims (6, 7, 8)
-
-
9. A method comprising:
-
generating a corresponding resource request to an operating system executing on a computer system, the generating responsive to receiving a first resource request from an application executing on the computer system for a resource to be used by the application; assigning a virtual resource identifier to the resource wherein assigning the virtual resource identifier includes invoking a resource-specific allocator; retrieving the application identifier from a process state corresponding to the application; and responsive to receiving a system resource identifier corresponding to the resource from the operating system, recording a mapping of an application identifier assigned to the application and identifying the application, the virtual resource identifier, and the system resource identifier, and returning the virtual resource identifier to the application. - View Dependent Claims (10, 11, 12)
-
Specification