IP Library Granted Patent US 11,048,446
Granted Patent B2
US 11,048,446 · App. 14/573,245 · Granted Jun 29, 2021

Data expanse using memory-mapped files on a system architecture interface layer-based mainframe operating system

Inventors: James F Merten (Roseville, MN); Warren N Stockton (South Jordan, UT); Michael J. Rieschl (Roseville, MN); James R McBreen (Roseville, MN)
Assignee: Uniys Corporation
G06F3/0673G06F12/063G06F12/0802G06F12/0873G06F2212/152
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 11,048,446
App. No.
14/573,245
Granted
Jun 29, 2021
Kind
B2
Abstract

Systems and methods for obtaining access to database files in a computing system. A method may include receiving a first call from a database management system requesting access to a database file. The method may further include transmitting a second call to an operating system interface requesting that a memory-mapped data expanse file be created. The method may also include receiving a first address representing the database file in response to successful mapping of the database file to the memory-mapped data expanse file located at the operating system interface.

Claims (36)

1. A method for obtaining access to database files in a computing system that includes computing hardware, an underlying operating environment executing on the computing hardware, the underlying operating environment defining a first file system, an emulated operating system executing over the underlying operating environment, the emulated operating system defining a second file system that is distinct from the first file system, and an operating system interface that facilitates access to the first file system from the emulated operating system, the method comprising:

receiving, at the emulated operating system, a first call from a database management system executing over the emulated operating system, the first call requesting access to a database file in the second file system;

transmitting, from the emulated operating system, a second call to the operating system interface requesting that a memory-mapped data expanse file be created in the first file system and managed by the operating system interface, the memory-mapped data expanse file containing content of the database file in the second file system and being distinct from any swap file used for virtual-memory paging of programs other than the database management system;

receiving, at the emulated operating system, a first mapped address representing the memory-mapped data expanse file in response to successful transfer of the content of the database file in the second file system to the memory-mapped data expanse file;

transmitting the first mapped address to the database management system such that the database management system accesses a bank of memory addresses without having to cache the memory-mapped data expanse file; and

receiving, at the emulated operating system, a third call from the database management system, wherein the third call specifies a view address and a size of a view to be created of the memory-mapped data expanse file;

wherein the first call is converted from a call compatible with the database management system to a call compatible with the operating system interface, wherein the second call is compatible with the operating system interface.

2. The method of claim 1 , wherein the second address comprises an extended mode virtual address.

3. The method of claim 1 , wherein the database file in the second file system has a size greater than an address range available to the database management system.

4. The method of claim 1 , wherein a plurality of memory-mapped data expanse files are located at the operating system interface, and wherein each memory-mapped data expanse file of the plurality of memory-mapped data expanse files represents a different mapping to a different database file in the second file system.

5. The method of claim 1 , wherein the database file in the second file system is physically stored in an external disk.

6. A computer program product operable in a computing system that includes computing hardware, an underlying operating environment executing on the computing hardware, the underlying operating environment defining a first file system, an emulated operating system executing over the underlying operating environment, the emulated operating system defining a second file system that is distinct from the first file system, and an operating system interface that facilitates access to the first file system from the emulated operating system, comprising:

a non-transitory computer-readable medium comprising instructions which, when executed by a processor of the computing system, cause the processor to perform operations including:

receiving, at the emulated operating system, a first call from a database management system requesting access to a database file in the second file system in the second file system, the database management system executing over the emulated operating system;

transmitting, from the emulated operating system, a second call to the operating system interface requesting that a memory-mapped data expanse file be created in the first file system and managed by the operating system interface, the memory-mapped data expanse file containing content of the database file in the second file system and being distinct from any swap file used for virtual-memory paging of programs other than the database management system;

receiving, at the emulated operating system, a first mapped address representing the memory-mapped data expanse file in response to successful transfer of the content of the database file in the second file system to the memory-mapped data expanse file; and

transmitting the first mapped address to the database management system such that the database management system accesses a bank of memory addresses without having to cache the memory-mapped data expanse file;

receiving, at the emulated operating system, a third call from the database management system, wherein the third call specifies a view address and a size of a view to be created of the memory-mapped data expanse file; and

transmitting, from the emulated operating system, the view address to the database management system;

wherein the first call is converted from a call compatible with the database management system to a call compatible with the operating system interface, wherein the second call is compatible with the operating system interface.

7. The computer program product of claim 6 , wherein the second address comprises an extended mode virtual address.

8. The computer program product of claim 6 , wherein the database file in the second file system has a size greater than an address range available to the database management system.

9. The computer program product of claim 6 , wherein a plurality of memory-mapped data expanse files are located at the operating system interface, and wherein each memory-mapped data expanse file of the plurality of memory-mapped data expanse files represents a different mapping to a different database file in the second file system.

10. The computer program product of claim 6 , wherein the database file is physically stored in an external disk.

11. An apparatus, comprising:

computing hardware including memory and a processor coupled to the memory, an underlying operating environment executing on the computing hardware, the underlying operating environment defining a first file system, an emulated operating system executing over the underlying operating environment, the emulated operating system defining a second file system that is distinct from the first file system, and an operating system interface that facilitates access to the first file system from the emulated operating system; and

wherein the processor is configured to execute operations including:

receiving, at the emulated operating system, a first call from a database management system requesting access to a database file in the second file system in the second file system, the database management system executing over the emulated operating system;

transmitting, from the emulated operating system, a second call to the operating system interface requesting that a memory-mapped data expanse file be created in the first file system and managed by the operating system interface, the memory-mapped data expanse file containing content of the database file in the second file system and being distinct from any swap file used for virtual-memory paging of programs other than the database management system;

receiving, at the emulated operating system, a first mapped address representing the memory-mapped data expanse file in response to successful transfer of the content of the database file in the second file system to the memory-mapped data expanse file; and

transmitting the first mapped address to the database management system such that the database management system accesses a bank of memory addresses without having to cache the memory-mapped data expanse file; and

receiving, at the emulated operating system, a third call from the database management system, wherein the third call specifies a view address and a size of a view to be created of the memory-mapped data expanse file;

wherein the first call is converted from a call compatible with the database management system to a call compatible with the operating system interface, wherein the second call is compatible with the operating system interface.

12. The apparatus of claim 11 , wherein the second address comprises an extended mode virtual address.

13. The apparatus of claim 11 , wherein the database file in the second file system has a size greater than an address range available to the database management system, and wherein the database file in the second file system is physically stored in an external disk.

14. The apparatus of claim 11 , wherein a plurality of memory-mapped data expanse files are located at the operating system interface, and wherein each memory-mapped data expanse file of the plurality of memory-mapped data expanse files represents a different mapping to a different database file in the second file system.

Assignments (6)
AMENDED AND RESTATED PATENT SECURITY AGREEMENT Recorded Jun 27, 2025
From: UNISYS CORPORATION; UNISYS HOLDING CORPORATION; UNISYS NPL, INC.; UNISYS AP INVESTMENT COMPANY I
To: COMPUTERSHARE TRUST COMPANY, N.A., AS COLLATERAL TRUSTEE
Reel/Frame 071759/0527 →
SECURITY INTEREST Recorded Nov 19, 2020
From: UNISYS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 054481/0865 →
RELEASE OF SECURITY INTEREST Recorded Oct 28, 2020
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: UNISYS CORPORATION
Reel/Frame 054231/0496 →
SECURITY INTEREST Recorded Oct 6, 2017
From: UNISYS CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 044144/0081 →
PATENT SECURITY AGREEMENT Recorded Apr 27, 2017
From: UNISYS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL TRUSTEE
Reel/Frame 042354/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2017
From: MERTEN, JAMES F; STOCKTON, WARREN N; RIESCHL, MICHAEL J; MCBREEN, JAMES R
To: UNISYS CORPORATION
Reel/Frame 042333/0220 →
Continuity (1)
Related Publication 20160179797A1 · Jun 23, 2016