← Back to Patent Explorer
US5410700A Expired / Lapsed US ⏱️ 0.0 years remaining

Computer system which supports asynchronous commitment of data

Assignee: International Business Machines Corp
•
Filing: 1991-09-04
•
Granted: 1995-04-25
•
Expires: 2011-09-04
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A computer system for processing and committing data comprises a processor, an external storage device such as DASD or tape coupled to the processor, and a working memory such as RAM. An application program updates data in the working memory and then requests that the data be committed, i.e. written to the external storage device. In response, an operating system function determines which data or blocks have been changed and supplies to an I/O service an identification of the changed data or blocks to cause the I/O service to write the changed data or blocks to the external storage device. Thus, the application program is not burdened with the management of the I/O. The operating system permits the program to continue with other processing while the data is being written from the working memory to the external storage device. As a result, the program need not wait while the data is written to the external storage. Also, because little time is required of the program in the commit process, the program can frequently request commits. With frequent commits, there is less chance that the data will have been written to back-up memory or back-up storage (due to an overload of the working memory) between commits, and as a result, time will not be required to read the data from the back-up memory or storage into the working memory en route to the application program's external storage. Also, the frequent commits reduce the chance of overloading the I/O subsystem.

Inventors

  • 👤 Jean G. Fecteau
  • 👤 Joseph M. Gdaniec
  • 👤 James P. Hennessy
  • 👤 John F. MacDonald
  • 👤 Damian L. Osisek

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 15:32
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/466

Claims Analysis

Total Claims: 21
Claim 1
Independent Claim 166 words
A computer system for processing and committing data, said computer system comprising: a processor; a storage device coupled to and located externally to said processor for storing committed data; a virtual or actual working memory, located internally or tightly coupled to said processor or at least accessible by said processor with greater speed than said processor can access the external storage device; means for receiving from an application program executing on said processor requests to write data into said memory and commit said data; operating system means, responsive to said commit request, for determining which of said data or blocks of said data have been changed in said memory, supplying to an I/O service an identification of the changed data or blocks to cause said I/O service to write said changed data or blocks to said external storage device and permitting said application program to process other data of an unrelated transaction while the changed data or blocks are being written to said external storage device.
Claim 2
Dependent Claim 166 words
A computer system for processing and committing data, said computer system comprising: a processor; a storage device coupled to and located externally to said processor for storing committed data; a virtual or actual working memory, located internally or tightly coupled to said processor or at least accessible by said processor with greater speed than said processor can access the external storage device; means for receiving from an application program executing on said processor requests to write data into said memory and commit said data; operating system means, responsive to said commit request, for determining which of said data or blocks of said data have been changed in said memory, supplying to an I/O service an identification of the changed data or blocks to cause said I/O service to write said changed data or blocks to said external storage device and permitting said application program to process other data of an unrelated transaction while the changed data or blocks are being written to said external storage device.
Claim 3
Dependent Claim 27 words
A computer system as set forth in claim 1 wherein said working memory is provided by a virtual storage by which said application program addresses actual memory.
Claim 4
Dependent Claim 36 words
A computer system as set forth in claim 2 further comprising means for permitting said application program to establish a mapping between locations represented by said virtual storage to corresponding locations in said external storage device.
Claim 5
Dependent Claim 62 words
A computer system as set forth in claim 1 wherein said operating system means initially validates the commit request and subsequently causes said I/O service to write said changed data or blocks to said external storage device only if said commit request is valid, and during the validation of said commit request all or substantially all or said application program is suspended.
Claim 6
Dependent Claim 61 words
A computer system as set forth in claim 4 wherein the operating system means includes means for resuming said application program after validating the commit request, whereby any part or all of said application program which was suspended during the validation of said commit request can be resumed before or during the writing of said data to said external storage device.
Claim 7
Dependent Claim 52 words
A computer system as set forth in claim 1 wherein the operating system means also supports synchronism with said application program such that said program can suspend itself entirely or substantially entirely during validation of the commit request and the writing of the changed data or blocks to said external storage device.
Claim 8
Dependent Claim 60 words
A computer system as set forth in claim 6 wherein the operating system means supports said synchronism by said application program for a commit request which precedes another commit request by said application program in which at least part of said program is permitted to continue processing while the changed data or blocks are written to said external storage device.
Claim 9
Dependent Claim 59 words
A computer system as set forth in claim 7 further comprising back-up storage means for backing-up said working memory when said working memory is overloaded; and wherein said other commit request implemented before the synchronous commit request reduces the likelihood that the data to be committed by said synchronous commit request has been written to the back-up storage means.
Claim 10
Dependent Claim 23 words
A computer system as set forth in claim 1 wherein said external storage device is a magnetic disk or DASD or magnetic tape.
Claim 11
Dependent Claim 58 words
A computer system as set forth in claim 1 wherein said operating system means includes means for sending a completion signal to said application program after the changed data or blocks have been written to the external storage device, whereby any part of said application program which was suspended on account of said commit request can be resumed.
Claim 12
Dependent Claim 95 words
A computer implemented method for committing data, said method comprising the steps of: executing a request of a first program to map virtual or actual memory to an external storage device; executing a request of said first program to update data in said memory; executing a request of said first program to commit the updated data by invoking a second program to manage writing of the data to the external storage device; and while the data is being written to said external storage device, continuing to execute said first program to perform an unrelated transaction.
Claim 13
Dependent Claim 95 words
A computer implemented method for committing data, said method comprising the steps of: executing a request of a first program to map virtual or actual memory to an external storage device; executing a request of said first program to update data in said memory; executing a request of said first program to commit the updated data by invoking a second program to manage writing of the data to the external storage device; and while the data is being written to said external storage device, continuing to execute said first program to perform an unrelated transaction.
Claim 14
Dependent Claim 54 words
A method as set forth in claim 11 wherein the step of executing the commit request includes the step of validating the commit request before the writing of said data to said external storage device, and further comprising the step of ceasing to execute said first program while the commit request is being validated.
Claim 15
Dependent Claim 74 words
A method as set forth in claim 12 further comprising the steps of: executing a second request of said first program to commit data after the first said request to commit data by invoking said second program to manage writing of the data to said external storage device; and while said data is being written to said external storage device pursuant to said second request to commit data, ceasing to execute said first program.
Claim 16
Dependent Claim 48 words
A method as set forth in claim 13 wherein said second request to commit data is made at a check point of said first program, and the first said request to commit data is made before said check point but after a previous checkpoint of said first program.
Claim 17
Dependent Claim 29 words
A computer system as set forth in claim 1 wherein said unrelated transaction is an update to other data or blocks that are not being written to external storage.
Claim 18
Dependent Claim 81 words
A computer implemented method for committing data, said method comprising the steps of: executing a request of a first program to update data in a virtual or actual working memory; executing a request of said first program to commit the updated data by invoking a second program to manage writing of the data to an external storage device; and while the data is being written to said external storage device, continuing to execute said first program to perform an unrelated transaction.
Claim 19
Dependent Claim 81 words
A computer implemented method for committing data, said method comprising the steps of: executing a request of a first program to update data in a virtual or actual working memory; executing a request of said first program to commit the updated data by invoking a second program to manage writing of the data to an external storage device; and while the data is being written to said external storage device, continuing to execute said first program to perform an unrelated transaction.
Claim 20
Dependent Claim 20 words
A method as set forth in claim 16 wherein said unrelated transaction is a same type as the data update.
Claim 21
Dependent Claim 20 words
A method as set forth in claim 11 wherein said unrelated transaction is a same type as the data update.

References Cited (Backward Citations)

US4811216A Cited
US5197148A Cited
US5063494A Cited
US5163131A Cited
US5165031A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-04-24 1998-10-24 1999-04-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-04-24 2002-10-24 2003-04-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-04-24 2006-10-24 2007-04-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag