Patent US3540451A successfully refreshed from Google Patents.
US3683418A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method of protecting data in a multiprocessor computer system
Assignee: AT&T Inc
•
Filing: 1970-04-16
•
Granted: 1972-08-08
•
Expires: 1990-04-16
Abstract
Abstract A machine process that performs the function of assigning particular tasks to individual processors in a multiprocessor computer system so as to prevent undesired simultaneous access of stored data by two or more processors. The machine process readlocks all blocks of data that will be read by a task and writelocks all blocks of data that will be written into by a task immediately preceding the execution of that task. All blocks of data that were locked before a task was executed and not unlocked by the task during its execution, are unlocked upon its completion.
Inventors
- 👤 Robert Lanham Martin
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-22 20:53
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/52
Claims Analysis
Total Claims: 30
Claim 1
Independent Claim
64 words
The machine method of preventing undesired simultaneous access to a single block of data by two or more processors in a task-oriented multiprocessor computing System comprising the machine steps of: locking each block of data used by a task immediately prior to the absolute enabling of said task; and unlocking each locked block of data that remains locked after the execution of said task.
Claim 2
Dependent Claim
64 words
The machine method of preventing undesired simultaneous access to a single block of data by two or more processors in a task-oriented multiprocessor computing System comprising the machine steps of: locking each block of data used by a task immediately prior to the absolute enabling of said task; and unlocking each locked block of data that remains locked after the execution of said task.
Claim 3
Dependent Claim
44 words
The machine method of claim 1 wherein said step of locking further comprises the machine steps of: write-locking each block of data that said task can possibly modify during execution; and read-locking each block of data that said task can possibly access during execution.
Claim 4
Dependent Claim
19 words
unlocking said locked block of data if no other task requires a lock on said locked block of data;
Claim 5
Dependent Claim
19 words
unlocking said locked block of data if no other task requires a lock on said locked block of data;
Claim 6
Dependent Claim
21 words
choosing the first of said other tasks if there are other tasks requiring a lock on said locked block of data;
Claim 7
Dependent Claim
21 words
choosing the first of said other tasks if there are other tasks requiring a lock on said locked block of data;
Claim 8
Dependent Claim
86 words
The machine method of claim 1 wherein said step of locking further comprises the machine steps of: read-locking said block of data if said task will access it during its execution and if said block of data is not currently write-locked; write-locking said block of data if said task will modify it during its execution and if said block of data is currently neither read-locked nor write-locked; and placing a pointer to said task on a queue if said read-locking or said write-locking is not performed.
Claim 9
Dependent Claim
56 words
The method of claim 1 wherein said step of unlocking each said locked block of data further comprises the machine steps of: determining whether any other tasks currently require a read-lock on said locked block of data; and placing new read-locks upon said locked block of data in accordance with the requirements of said other tasks.
Claim 10
Dependent Claim
20 words
determining whether said first task requires a read-lock or a write-lock to be placed upon said locked block of data;
Claim 11
Dependent Claim
20 words
determining whether said first task requires a read-lock or a write-lock to be placed upon said locked block of data;
Claim 12
Dependent Claim
13 words
relocking said locked block of data in accordance with said first task requirement;
Claim 13
Dependent Claim
13 words
relocking said locked block of data in accordance with said first task requirement;
Claim 14
Dependent Claim
24 words
The machine method of claim 1 wherein said step of unlocking comprises performing the following machine steps for each particular locked block of data:
Claim 15
Dependent Claim
104 words
The machine method of executing a task in a task-oriented multiprocessor computer system comprising the machine steps of: executing all tasks that are precedent to said task; executing all input programs that are precedent to said task; executing all output programs that are precedent to said task; write-locking all blocks of data that said task can possibly modify during said task execution; read-locking all blocks of data that said task can possibly read during said task execution; enabling said task; detecting the completion of said task; and unlocking all said write-locked blocks of data and all said read-locked blocks of data upon said completion.
Claim 16
Dependent Claim
104 words
The machine method of executing a task in a task-oriented multiprocessor computer system comprising the machine steps of: executing all tasks that are precedent to said task; executing all input programs that are precedent to said task; executing all output programs that are precedent to said task; write-locking all blocks of data that said task can possibly modify during said task execution; read-locking all blocks of data that said task can possibly read during said task execution; enabling said task; detecting the completion of said task; and unlocking all said write-locked blocks of data and all said read-locked blocks of data upon said completion.
Claim 17
Dependent Claim
37 words
terminating the unlocking of said locked block of data if step (5) resulted in placing a write-lock on said locked block of data or if no other task requires a lock on said locked block of data;
Claim 18
Dependent Claim
37 words
terminating the unlocking of said locked block of data if step (5) resulted in placing a write-lock on said locked block of data or if no other task requires a lock on said locked block of data;
Claim 19
Dependent Claim
12 words
choosing the next task from the remaining ones of said other tasks;
Claim 20
Dependent Claim
12 words
choosing the next task from the remaining ones of said other tasks;
Claim 21
Dependent Claim
118 words
In a machine process for using predetermined precedence relationships for assigning tasks to processor units in a multiprocessor computing system, whereby each particular task is assigned to a particular processor as soon as said task''s precedence requirements have been met, the improvement comprising the machine steps of: write-locking all blocks of data that a particular task will modify during execution immediately before said task is assigned to a processor unit; read-locking all blocks of data that a particular task will access during execution immediately before said task is assigned to a processor unit; and unlocking all said write-locked blocks of data and all said read-locked blocks of data that remain locked after said particular task has been executed.
Claim 22
Dependent Claim
118 words
In a machine process for using predetermined precedence relationships for assigning tasks to processor units in a multiprocessor computing system, whereby each particular task is assigned to a particular processor as soon as said task''s precedence requirements have been met, the improvement comprising the machine steps of: write-locking all blocks of data that a particular task will modify during execution immediately before said task is assigned to a processor unit; read-locking all blocks of data that a particular task will access during execution immediately before said task is assigned to a processor unit; and unlocking all said write-locked blocks of data and all said read-locked blocks of data that remain locked after said particular task has been executed.
Claim 23
Dependent Claim
20 words
determining whether said next task requires a read-lock or a write-lock to be placed upon said locked block of data;
Claim 24
Dependent Claim
20 words
determining whether said next task requires a read-lock or a write-lock to be placed upon said locked block of data;
Claim 25
Dependent Claim
25 words
terminating the unlocking of said locked block of data if said next task requires a write-lock to be placed on said locked block of data;
Claim 26
Dependent Claim
25 words
terminating the unlocking of said locked block of data if said next task requires a write-lock to be placed on said locked block of data;
Claim 27
Dependent Claim
23 words
read-locking said locked block of data if said next task requires a read-lock to be placed on said locked block of data; and
Claim 28
Dependent Claim
23 words
read-locking said locked block of data if said next task requires a read-lock to be placed on said locked block of data; and
Claim 29
Dependent Claim
20 words
repeating steps (7) through (10) if there remain any other tasks requiring a lock on said locked block of data.
Claim 30
Dependent Claim
20 words
repeating steps (7) through (10) if there remain any other tasks requiring a lock on said locked block of data.
References Cited (Backward Citations)
US3328768A
Cited
US3407387A
Cited
US3398405A
Cited
US3469239A
Cited
US3530438A
Cited
US3405394A
Cited
US3445819A
Cited
US3573736A
Cited
US3562717A
Cited
US3528062A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1975-08-08 | 1976-02-07 | 1976-08-08 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1979-08-08 | 1980-02-07 | 1980-08-08 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 1983-08-08 | 1984-02-07 | 1984-08-08 | $7700.00 | Window Closed / Lapsed |