Patent US1881915A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4394725A Expired / Lapsed US ⏱️ 0.0 years remaining

Apparatus and method for transferring information units between processes in a multiprocessing system

Assignee: Bull SAS
•
Filing: 1978-12-04
•
Granted: 1983-07-19
•
Expires: 1998-12-04
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method of and apparatus for executing a family of instructions provides synchronization of processes in a multiprocessing system. Representations of processes awaiting data (information units) such as the completion of an asynchronous operation or the availability of a resource are stored in a memory in a first queue and representations of information units available to processes are stored in memory in a second queue. Transfer of information units between processes is controlled by data elements known as "semaphores" stored in the memory. Each semaphore contains a field having a numerical value identifying which of the two different kinds of queues is present. When a P instruction is executed by a process indicating that the process requires data in order to continue operating or a V instruction is executed indicating that an information unit is available for transfer to another process, a semaphore is addresses and its field tested to determine whether processes or information units are available to enable the information transfer between processes to be effected. Once the information transfer is completed, the field of the addressed semaphore is up-dated.

Inventors

  • 👤 Jacques Bienvenu
  • 👤 Patrick Dufond
  • 👤 Claude Carre
  • 👤 Duc L. Tuong
  • 👤 Henri Verdier
  • 👤 Philippe-Hubert deRivet
  • 👤 John J. Bradley
  • 👤 Benjamin S. Franklin

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 21:13
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/52

Claims Analysis

Total Claims: 16
Claim 1
Independent Claim 242 words
In a data processing system wherein a data element is held in a memory member of said system, wherein said memory member holds one of a first queue of representations of processes awaiting information units not available when required by said processes and a second queue of representations of information units available to processes and not required by other processes, wherein said data element operatively associates related ones of said first and second queues with each other, said data element including a field representing the one of said queues present in said memory member, and wherein said system during the execution of a first process executes an instruction of a particular class for transferring an information unit between said first process and a second process, an apparatus for controlling transfer of information units between said first and second processes, comprising: retrieving means controlled by said instruction for retrieving said data element from said memory member; testing means for testing said field of said data element retrieved from said memory member and for generating a first signal when said field represents the presence of said first queue and a second signal when said field represents the presence of said second queue; and control means controlled by said instruction and selectively responsive to said first and second signals for processing the one of said queues present in said memory member to enable the transfer of an information unit between said first and second processes.
Claim 2
Dependent Claim 242 words
In a data processing system wherein a data element is held in a memory member of said system, wherein said memory member holds one of a first queue of representations of processes awaiting information units not available when required by said processes and a second queue of representations of information units available to processes and not required by other processes, wherein said data element operatively associates related ones of said first and second queues with each other, said data element including a field representing the one of said queues present in said memory member, and wherein said system during the execution of a first process executes an instruction of a particular class for transferring an information unit between said first process and a second process, an apparatus for controlling transfer of information units between said first and second processes, comprising: retrieving means controlled by said instruction for retrieving said data element from said memory member; testing means for testing said field of said data element retrieved from said memory member and for generating a first signal when said field represents the presence of said first queue and a second signal when said field represents the presence of said second queue; and control means controlled by said instruction and selectively responsive to said first and second signals for processing the one of said queues present in said memory member to enable the transfer of an information unit between said first and second processes.
Claim 3
Dependent Claim 54 words
The apparatus of claim 1, wherein said instruction is of a first kind for transferring an information unit to said first process from said second process, wherein said control means is controlled by said first kind of instruction and said first signal for inserting a representation of said first process into said first queue.
Claim 4
Dependent Claim 27 words
The apparatus of claim 2, wherein said control means in response to said first kind of instruction and said first signal suspends execution of said first process.
Claim 5
Dependent Claim 62 words
The apparatus of claim 1, wherein said instruction is of a first kind for transferring an information unit to said first process from said second process, wherein said control means is controlled by said first kind of instruction and said second signal for extracting a representation of an information unit from said second queue and supplying said unit to said first process.
Claim 6
Dependent Claim 68 words
The apparatus of claim 1, wherein said instruction is of a second kind for transferring an information unit from said first process to said second process, wherein said testing means generates said first signal, and wherein said control means is controlled by said second kind of instruction and said first signal for transferring said information unit to a location in said memory member accessible to said second process.
Claim 7
Dependent Claim 32 words
The apparatus of claim 5, wherein said control means in response to said second kind of instruction and said first signal extracts a representation of said second process from said first queue.
Claim 8
Dependent Claim 52 words
The apparatus of claim 1, wherein said instruction is of a second kind for transferring an information unit from said first process to said second process, wherein said control means is controlled by said second kind of instruction and said second signal for inserting said information unit representation into said second queue.
Claim 9
Independent Claim 209 words
The method of transferring an information unit between a first processes and a second process in a data processing system, wherein a data element is held in a memory member of said system, wherein one of a first queue of representations of processes awaiting information units not available when required by said processes and a second queue of representations of information units available to processes and not required by other processes is held in said memory member, and wherein said data element operatively associates related ones of said first and second queues with each other, said data element including a field representing the one of said queues present in said memory member, comprising the steps of: initiating execution of an instruction of said first process; in response to said instruction, retrieving said data element from said memory member; testing said field of said data element and delivering a first signal when said field represents the presence of said first queue and a second signal when said field represents the presence of said second queue; and responding selectively to said first and second signals for processing the one of said queues present in said storage member to enable the transfer of an information unit between said first and second processes.
Claim 10
Independent Claim 209 words
The method of transferring an information unit between a first processes and a second process in a data processing system, wherein a data element is held in a memory member of said system, wherein one of a first queue of representations of processes awaiting information units not available when required by said processes and a second queue of representations of information units available to processes and not required by other processes is held in said memory member, and wherein said data element operatively associates related ones of said first and second queues with each other, said data element including a field representing the one of said queues present in said memory member, comprising the steps of: initiating execution of an instruction of said first process; in response to said instruction, retrieving said data element from said memory member; testing said field of said data element and delivering a first signal when said field represents the presence of said first queue and a second signal when said field represents the presence of said second queue; and responding selectively to said first and second signals for processing the one of said queues present in said storage member to enable the transfer of an information unit between said first and second processes.
Claim 11
Dependent Claim 67 words
The method of claim 8, wherein said initiating step includes initiating execution of an instruction of a first kind for transferring an information unit from said second process to said first process and in response to generation of said first signal during said testing step responding to said first kind of instruction and first signal for inserting a representation of said first process into said first queue.
Claim 12
Dependent Claim 18 words
The method of claim 9, wherein said step of responding further includes suspending execution of said first process.
Claim 13
Dependent Claim 77 words
The method of claim 9, wherein said step of initiating includes initiating execution of an instruction of a first kind for transferring an information unit from said second process to said first process and in response to said second signal generated during said testing step, responding to said first kind of instruction and said second signal for extracting a representation of an information unit from said second queue and supplying said information unit to said first process.
Claim 14
Dependent Claim 65 words
The method of claim 8, wherein said initiating step includes initiating execution of a second kind of instruction for transferring an information unit from said first process to said second process and, in response to said second kind of instruction and said first signal generated during said testing step, transferring said information unit to a location in said memory member accessible to said second process.
Claim 15
Dependent Claim 30 words
The method of claim 12, including in response to said second kind of instruction and said second signal, further extracting a representation of said second process from said first queue.
Claim 16
Dependent Claim 60 words
The method of claim 8, wherein said initiating step includes initiating execution of a second kind of instruction for transferring an information unit from said first process to said second process and, in response to said second kind of instruction and said second signal generated during said second step, inserting a representation of said information unit into said second queue.

References Cited (Backward Citations)

US3297999A Cited
US3449722A Cited
US3496550A Cited
US3548384A Cited
US3564504A Cited
US3665421A Cited
US3686641A Cited
US3789365A Cited
US3848233A Cited
US3938096A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1986-07-18 1987-01-17 1987-07-19 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1990-07-18 1991-01-17 1991-07-19 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1994-07-18 1995-01-17 1995-07-19 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag