Multi-processor computer systems with multiple levels of cache memories
are slowed down in trying to process software locks for common functions. This
invention obviates the problem for the vast majority of transactions by providing
an alternate procedure for handling so-called communal locks differently from ordinary
software locks. The alternative procedure is not used for ordinary (non communal
software lock) data and instruction transfers. The function of the CSWL (Communal
SoftWare Lock) is actually accomplished at a specific cache to which an individual
CSWL is mapped to, rather than sending the lock to the requesting process, which
also enhances efficiency.