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

Computer program product for synchronizing static variable initialization and reference under a multi-threaded computer environment

Assignee: International Business Machines Corp
•
Filing: 1997-09-29
•
Granted: 1998-12-22
•
Expires: 2017-09-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention is a computer program product to avoid static variable initialization and reference conflicts in a multi-threaded computer system. There are four major problems that arise with computer programs containing static variable references and static variable initializations on a computer system with a multi-threaded operating system: (1) premature references made on an uninitialized static variable; (2) side effects caused by initialization competition among threads; (3) multiple initialization of the same static variable; and (4) server control of static variable reference and initialization. Each of these four problems is eliminated by the system and method of this invention. The invention operates by locking the CPU during identification of the first thread seeking to initiate a static variable operation, maintaining all other threads in a wait state, and unlocking the CPU thus releasing the waiting threads from their wait state. Another component of the invention provides an additional control mechanism to invoke the disclosed static variable controller to eliminate potential static variable conflicts among competing threads.

Inventors

  • 👤 I-Shin Andy Wang
  • 👤 Roni Korenshtein

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 20:53
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/52

Claims Analysis

Total Claims: 7
Claim 1
Independent Claim 212 words
A computer program product for enabling a processor in a computer system to control static variable operations including initialization and reference in a multi-threaded computer system having a central processing unit (CPU) and an operating system, said computer program product comprising: a computer usable medium having computer readable program code means embodied in said medium for causing an application program to execute on the computer system, said computer readable program code means comprising a computer readable first program code means for causing the computer system to receive a lock request from a first thread, wherein said first thread is the first thread to request CPU processing of at least one static variable operation; a computer readable second program code means for causing the computer system to switch said CPU to a single thread mode, wherein only said first thread is processed by said CPU during the single thread mode; a computer readable third program code means for causing the computer system to label said first thread after said step of switching said CPU to a single thread mode; and a computer readable fourth program code means for causing the computer system to switch said CPU to multiple thread mode, wherein multiple threads are processed by said CPU during the multiple thread mode.
Claim 2
Dependent Claim 212 words
A computer program product for enabling a processor in a computer system to control static variable operations including initialization and reference in a multi-threaded computer system having a central processing unit (CPU) and an operating system, said computer program product comprising: a computer usable medium having computer readable program code means embodied in said medium for causing an application program to execute on the computer system, said computer readable program code means comprising a computer readable first program code means for causing the computer system to receive a lock request from a first thread, wherein said first thread is the first thread to request CPU processing of at least one static variable operation; a computer readable second program code means for causing the computer system to switch said CPU to a single thread mode, wherein only said first thread is processed by said CPU during the single thread mode; a computer readable third program code means for causing the computer system to label said first thread after said step of switching said CPU to a single thread mode; and a computer readable fourth program code means for causing the computer system to switch said CPU to multiple thread mode, wherein multiple threads are processed by said CPU during the multiple thread mode.
Claim 3
Dependent Claim 53 words
The computer program product of claim 1, wherein said computer readable third program code means for causing the computer system to label said first thread further comprises a computer readable fifth program code means for causing the computer system to initialize a semaphore, wherein said semaphore indicates said lock request has been granted.
Claim 4
Dependent Claim 20 words
The computer program product of claim 1, wherein said lock request is in response to a static variable initialization instruction.
Claim 5
Dependent Claim 20 words
The computer program product of claim 1, wherein said lock request is in response to a static variable reference instruction.
Claim 6
Dependent Claim 28 words
The computer program product of claim 1, further comprising a computer readable fifth program code means for causing the computer system to execute a static variable initialization instruction.
Claim 7
Dependent Claim 28 words
The computer program product of claim 1, further comprising a computer readable fifth program code means for causing the computer system to execute a static variable reference instruction.

References Cited (Backward Citations)

US5404521A Cited
US5421013A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-12-21 2002-06-22 2002-12-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-12-21 2006-06-22 2006-12-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-12-21 2010-06-22 2010-12-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag