Patent US5708808A successfully refreshed from Google Patents.
US5708808A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for concurrency with critical regions
Assignee: Individual
•
Filing: 1996-02-27
•
Granted: 1998-01-13
•
Expires: 2016-02-27
Abstract
Abstract Allows concurrency for user program and device operations for user program's device request (10), by returning immediately to user program (16) when device becomes busy (12), switching back to device driver (12) when the device becomes idle (19), and after device driver postprocessing, continue user program where interrupted (19). This disclosure discusses various problems including synchronization associated to above method.
Inventors
- 👤 Horio Shoichi
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-03 20:31
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/10; G06F13/105
Claims Analysis
Total Claims: 4
Claim 1
Independent Claim
350 words
A method for concurrency on a digital computer having a memory, devices, driver softwares, and user softwares, wherein each of said devices having busy period and idle period in turn, each of said user softwares having a user context and means for issuing a request to a driver software selected from said driver softwares, said request having a user context save area, a driver context save area, and a driver context area in said memory, and a request identifier that identifies said request, said driver software having critical regions, and each of said critical regions having a request identifier storage area for storing predetermined number of said request identifier in memory, comprising steps of (a) receiving said request, saving said user context into said user context save area, making a driver context from said driver context area, driving said devices, and restoring said user context from said user context save area, (b) detecting said start of busy period of said devices, saving said driver context into said driver context save area, and restoring said user context from said user context save area, (c) detecting said start of idle period of said devices, saving said user context into said user context save area, and restoring said driver context from said driver context save area, (d) detecting said start of each of critical regions, adding said request identifier to said request identifier storage area, and detecting said area having more than one member, saving said driver context into said driver context save area, and restoring said user context from said user context save area, and (e) detecting said end of each of critical regions, removing said request identifier from said request identifier storage area, and detecting said area having at least one member, selecting a stored request identifier from said request identifier storage area, saving said user context into the user context save area of the request identified by said stored request identifier, and restoring said driver context from the driver context save area of the request identified by said stored request identifier, whereby said user softwares operating concurrently with said devices.
Claim 2
Independent Claim
350 words
A method for concurrency on a digital computer having a memory, devices, driver softwares, and user softwares, wherein each of said devices having busy period and idle period in turn, each of said user softwares having a user context and means for issuing a request to a driver software selected from said driver softwares, said request having a user context save area, a driver context save area, and a driver context area in said memory, and a request identifier that identifies said request, said driver software having critical regions, and each of said critical regions having a request identifier storage area for storing predetermined number of said request identifier in memory, comprising steps of (a) receiving said request, saving said user context into said user context save area, making a driver context from said driver context area, driving said devices, and restoring said user context from said user context save area, (b) detecting said start of busy period of said devices, saving said driver context into said driver context save area, and restoring said user context from said user context save area, (c) detecting said start of idle period of said devices, saving said user context into said user context save area, and restoring said driver context from said driver context save area, (d) detecting said start of each of critical regions, adding said request identifier to said request identifier storage area, and detecting said area having more than one member, saving said driver context into said driver context save area, and restoring said user context from said user context save area, and (e) detecting said end of each of critical regions, removing said request identifier from said request identifier storage area, and detecting said area having at least one member, selecting a stored request identifier from said request identifier storage area, saving said user context into the user context save area of the request identified by said stored request identifier, and restoring said driver context from the driver context save area of the request identified by said stored request identifier, whereby said user softwares operating concurrently with said devices.
Claim 3
Dependent Claim
347 words
Apparatus on a digital computer having a memory, devices, driver softwares, and user softwares, wherein each of said devices having busy period and idle period in turn, each of said user softwares having a user context and means for issuing a request to a driver software selected from said driver softwares, said request having a user context save area, a driver context save area, and a driver context area in said memory, and a request identifier that identifies said request, said driver software having critical regions, and each of said critical regions having a request identifier storage area for storing predetermined number of said request identifier in memory, comprising means for (a) receiving said request, saving said user context into said user context save area, making a driver context from said driver context area, driving said devices, and restoring said user context from said user context save area, (b) detecting said start of busy period of said devices, saving said driver context into said driver context save area, and restoring said user context from said user context save area, (c) detecting said start of idle period of said devices, saving said user context into said user context save area, and restoring said driver context from said driver context save area, (d) detecting said start of each of critical regions, adding said request identifier to said request identifier storage area, and detecting said area having more than one member, saving said driver context into said driver context save area, and restoring said user context from said user context save area, and (e) detecting said end of each of critical regions, removing said request identifier from said request identifier storage area, and detecting said area having at least one member, selecting a stored request identifier from said request identifier storage area, saving said user context into the user context save area of the request identified by said stored request identifier, and restoring said driver context from the driver context save area of the request identified by said stored request identifier, whereby said user softwares operating concurrently with said devices.
Claim 4
Dependent Claim
347 words
Apparatus on a digital computer having a memory, devices, driver softwares, and user softwares, wherein each of said devices having busy period and idle period in turn, each of said user softwares having a user context and means for issuing a request to a driver software selected from said driver softwares, said request having a user context save area, a driver context save area, and a driver context area in said memory, and a request identifier that identifies said request, said driver software having critical regions, and each of said critical regions having a request identifier storage area for storing predetermined number of said request identifier in memory, comprising means for (a) receiving said request, saving said user context into said user context save area, making a driver context from said driver context area, driving said devices, and restoring said user context from said user context save area, (b) detecting said start of busy period of said devices, saving said driver context into said driver context save area, and restoring said user context from said user context save area, (c) detecting said start of idle period of said devices, saving said user context into said user context save area, and restoring said driver context from said driver context save area, (d) detecting said start of each of critical regions, adding said request identifier to said request identifier storage area, and detecting said area having more than one member, saving said driver context into said driver context save area, and restoring said user context from said user context save area, and (e) detecting said end of each of critical regions, removing said request identifier from said request identifier storage area, and detecting said area having at least one member, selecting a stored request identifier from said request identifier storage area, saving said user context into the user context save area of the request identified by said stored request identifier, and restoring said driver context from the driver context save area of the request identified by said stored request identifier, whereby said user softwares operating concurrently with said devices.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-01-12 | 2001-07-14 | 2002-01-13 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-01-12 | 2005-07-14 | 2006-01-13 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-01-12 | 2009-07-14 | 2010-01-13 | $7700.00 | Window Closed / Lapsed |