IP Library Granted Patent US 9,098,557
Granted Patent B2
US 9,098,557 · App. 13/789,542 · Granted Aug 4, 2015

Application accelerator

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,098,557
App. No.
13/789,542
Granted
Aug 4, 2015
Kind
B2
Abstract

A method includes providing an application accelerator to an IMS region controller, which is coupled to an IMS data language interpreter (DL/I) interface. The IMS DL/I interface provides standard data access paths to a user application launched in an IMS environment. The application accelerator is configured to make alternate data access paths available to the user application in addition to the standard data access paths provided by the IMS environment. The method further includes intercepting an IMS DL/I call made by the user application and determining whether the intercepted call should be processed by the IMS DL/I interface or by an I/O engine of the application accelerator.

Claims (39)

1. A system including instructions stored on a non-transitory computer readable storage medium and executable by at least one processor, the system comprising:

an information management system (IMS) region controller coupled to a IMS data language interpreter (DL/I) interface, the IMS DL/I interface providing standard data access paths to a user application launched in an IMS environment; and

an application accelerator configured to make alternate data access paths available to the user application in addition to the standard data access paths provided by the IMS environment,

the application accelerator being configured evaluate a job run by the user application and determine if the application accelerator should be involved in processing IMS DL/I calls made by the user application based on analysis of at least one of previous call data results, application data, call pattern data, and/or call status information.

2. The system of claim 1 , wherein the application accelerator includes an I/O engine configured to receive a data access request from the user application and directly access a database, bypassing the IMS DL/I interface, to fulfill the data access request.

3. The system of claim 1 , wherein the application accelerator is configured to intercept an IMS DL/I call made by the user application and determine whether the intercepted call should be processed by the IMS DL/I interface or by an I/O engine of the application accelerator.

4. The system of claim 3 , wherein the application accelerator is configured to monitor, collect, and analyze data results and/or call status information returned by either the IMS DL/I interface or the I/O engine of the application accelerator.

5. The system of claim 3 , wherein the application accelerator is configured to support processing of user application calls of a certain type, and is further configured to disengage from intercepting user application calls after intercepting or encountering an unsupported call type.

6. The system of claim 1 , wherein the IMS DL/I interface is an online DL/I interface for batch message processing.

7. The system of claim 3 , wherein the application accelerator is further configured to restore IMS processing conditions to that existing prior to the intercepted call of the unsupported call type.

8. The system of claim 1 , wherein the application accelerator is configured to dynamically gather data in the execution of the user application, analyze application performance, and accordingly adjust or change the application execution environment.

9. The system of claim 8 , wherein the application accelerator is configured to adjust or change the application execution environment by one or more of altering buffers sizes, altering a number of buffers allocated based on actual IMS database access calls and buffer hit ratios, and dynamic use of sequential buffering.

10. A method comprising:

providing an application accelerator to an IMS region controller coupled to a IMS data language interpreter (DL/I) interface, the IMS DL/I interface providing standard data access paths to a user application launched in an IMS environment, and the application accelerator configured to make alternate data access paths available to the user application in addition to the standard data access paths provided by the IMS environment;

intercepting an IMS DL/I call made by the user application; and

determining whether the intercepted call should be processed by the IMS DL/I interface or by an I/O engine of the application accelerator based on analysis of at least one of previous call data results, application data, call pattern data, and/or call status information.

11. The method of claim 10 , further comprising:

receiving the intercepted call by the I/O engine of the application accelerator; and

directly accessing a database, bypassing the IMS DL/I interface, by the I/O engine to process the intercepted call.

12. The method of claim 10 , further comprising:

monitoring, collecting, and analyzing data results and/or call status information returned by either the IMS DL/I interface or the I/O engine of the application accelerator.

13. The method of claim 10 , wherein the application accelerator is configured to support processing of user application calls of a certain type, and wherein the method further comprises:

disengaging the application accelerator from processing further user application calls if the intercepted call is of an unsupported call type.

14. The method of claim 13 , wherein disengaging the application accelerator from processing further user application calls if the intercepted call is of an unsupported call type includes:

restoring IMS processing conditions to that existing prior to the intercepted call is of the unsupported call type.

15. The method of claim 10 further comprising dynamically gathering data in the execution of the user application, analyzing application performance, and accordingly adjusting or changing the application execution environment by one or more of altering buffers sizes, altering a number of buffers allocated based on actual IMS database access calls and buffer hit ratios, and dynamic use of sequential buffering.

16. A computer program product including executable instructions recorded on a non-transitory computer readable storage medium, which instructions when executed cause at least one processor to:

provide an application accelerator to an IMS region controller coupled to a IMS data language interpreter (DL/I) interface, the IMS DL/I interface providing standard data access paths to a user application launched in an IMS environment, and the application accelerator configured to make alternate data access paths available to the user application in addition to the standard data access paths provided by the IMS environment;

intercept an IMS DL/I call made by the user application; and

determine whether the intercepted call should be processed by the IMS DL/I interface or by an I/O engine of the application accelerator based on analysis of at least one of previous call data results, application data, call pattern data, and/or call status information.

17. The computer program product of claim 16 , wherein the instructions when executed cause the I/O engine of the application accelerator to:

receive the intercepted call; and

directly access a database, bypassing the IMS DL/I interface, to process the intercepted call.

18. The computer program product of claim 16 , wherein the instructions when executed cause the application accelerator to:

monitor, collect, and analyze data results and/or call status information returned by either the IMS DL/I interface or the I/O engine of the application accelerator.

19. The computer program product of claim 16 , wherein the application accelerator is configured to support processing of user application calls of a certain type, and wherein the instructions when executed cause the application accelerator to:

disengage from processing further user application calls if the intercepted call is of an unsupported call type.

20. The computer program product of claim 19 , wherein the instructions when executed cause the application accelerator to:

restore IMS processing conditions to that existing prior to the intercepted call of the unsupported call type.

Assignments (14)
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY INTEREST Recorded Jul 27, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043351/0189 →
SECURITY AGREEMENT Recorded Sep 11, 2013
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 031204/0225 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2013
From: MANSUR, BRUCE H.; SMITH, DAVID A.; SALAZAR, GARY L.; SABLOTNE, ROBERT W.; DEVROY, RUPAK R.
To: BMC SOFTWARE, INC.
Reel/Frame 030977/0887 →