Patent US3540451A successfully refreshed from Google Patents.
← Back to Patent Explorer
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
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag