Distributed Memory Lock Mechanism for Data Coherence

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for simultaneous operation of application programs across multiple computers interconnected via a communications network face issues with stale data values due to updating delays, which can lead to inefficiencies and errors.

Innovation Solution

Implementing a system where each computer acquires a lock on an object or resource before writing new content, records the updated memory locations, releases the lock, and then transmits the updated content to other computers, ensuring that subsequent lock acquirers obtain the latest values without waiting for all computers to update.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If memory locations are replicated across multiple computers and updated via communications network after each write operation, then computing speed is substantially improved due to frequent reading, but data coherence problems arise because of transmission delays causing some computers to access stale data

Engineering Contradiction:
Improvecomputing speedVSAvoiddata coherence
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent applies preliminary action by establishing a lock acquisition requirement before any memory write operation. When a computer wishes to write to a replicated memory location, it must first acquire a lock, ensuring that no other computer can simultaneously read or write to that location. This prevents race conditions and ensures data coherence before the actual write occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback through the lock release mechanism that automatically transmits updated memory location information to other computers. When a computer releases the lock after completing a write operation, it sends feedback signals containing the updated memory location data to other computers in the network, ensuring they receive the latest information without requiring continuous polling.

Inventive Principle:
Principle #23Feedback

2Reliability

If locks are acquired before writing to replicated memory locations, then data coherence is maintained, but waiting time increases due to lock acquisition and transmission delays

Engineering Contradiction:
Improvedata coherenceVSAvoidwaiting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies copying by creating a copy of the lock state and memory location information that is transmitted to other computers when the lock is released. This copied information allows other computers to update their local views of memory locations without requiring them to wait for the original writer to complete all operations, reducing waiting time while maintaining coherence.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent uses the lock release mechanism as an intermediary that coordinates between the writing computer and reading computers. The lock release act serves as a mediator that triggers the transmission of updated memory location information, allowing readers to acquire their data without directly waiting for the writer to finish all operations, thus reducing waiting time.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If all computers must be updated before a lock can be acquired by another computer, then data coherence is ensured, but productivity decreases due to sequential waiting

Engineering Contradiction:
Improvedata coherenceVSAvoidcomputing productivity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies segmentation by dividing the update process into two phases: the lock acquisition phase (which ensures coherence) and the data transmission phase (which occurs upon lock release). This segmentation allows other computers to proceed with acquiring locks for different memory locations without waiting for all computers to complete updates, thereby improving productivity while maintaining data coherence through the structured lock management.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8122200B2Modified machine architecture with advanced synchronization
Publication Date: 2012.02.21 WARATEK LTD
  • US8122200B2 patent drawing
  • US8122200B2 patent drawing
  • US8122200B2 patent drawing

AI summary

A multiple computer environment is disclosed in which an application program executes simultaneously on a plurality of computers (M1, M2, . . . Mn) interconnected by a communications network (53) and in which the local memory of each computer is maintained substantially the same by updating in due course. A lock mechanism is provided to permit exclusive access to an asset, object, or structure (ie memory location) by acquisition and release of the lock. In particular, before a new lock can be acquired by any other computer on a memory location previously locked by one computer, any re-written content(s) for the previously locked memory location are transmitted to all the other computers and their corresponding memory locations (before the in due course updating). Thus when the new lock is acquired all the corresponding memory locations of all computers have been updated.