A method for enhancing concurrency in a multiprocessor computer system is
described. Various tasks in a computer system communicate using commonly
accessible mailboxes to access valid data from a location in the mailbox.
A task holding the valid data places that data in a mailbox, and other
tasks read the valid data from the mailbox. The task that inputs the
valid data into the mailbox is caused to notify other tasks addressing
the mailbox that the valid data is contained therein. Thus, no central
coordination of mailbox access is required. Further, busy waits for valid
data are minimized and the ressources of tasks and processors are used
more efficiently. By coordinating several lists associated with each
mailbox, conflicts in accessing data and delays in obtaining data are
also minimized.