Cloud Thread Synchronization Across Machines

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current thread synchronization systems fail to effectively manage access and modification of cloud data across multiple computing machines, leading to issues similar to those encountered in multithreading with shared resources.

Innovation Solution

A computer-implemented method and system that receive signals from computing machines, determine waiting processes, and transmit signals to execute threads on either the same or different machines, enabling thread synchronization across machines using single or multiple thread signaling similar to event wait handles in Microsoft Windows.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional thread synchronization methods are used within a single machine, then thread coordination is achieved, but cloud data access control across multiple machines fails

Engineering Contradiction:
Improvethread synchronization reliabilityVSAvoidcloud data access control across machines
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces cloud synchronization objects as intermediary entities that mediate between threads on different computing machines. These objects act as mediators that coordinate access to cloud data across machine boundaries, similar to how event wait handles mediate thread coordination within a single machine. The intermediary translates inter-machine coordination problems into familiar intra-machine synchronization patterns.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the synchronization mechanism into cloud synchronization objects that can be independently instantiated and managed on different machines. Each cloud synchronization object represents a discrete unit of coordination that can be owned by one machine while being accessible to threads on other machines, allowing distributed coordination without requiring centralized control.

Inventive Principle:
Principle #1Segmentation

2Productivity

If cloud data is accessible by multiple threads across different machines, then collaboration is enabled, but data access control and exclusivity cannot be ensured

Engineering Contradiction:
Improvecollaborative access efficiencyVSAvoiddata access control
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback mechanisms through cloud synchronization objects that monitor and control access to cloud data. When a thread acquires access to cloud data through a synchronization object, the object provides feedback by blocking other threads until the first thread releases the data. This feedback loop ensures exclusive access while maintaining collaborative productivity.

Inventive Principle:
Principle #23Feedback

3Reliability

If thread synchronization code is customized for cloud environments, then cloud data protection is improved, but code complexity and development difficulty increase

Engineering Contradiction:
Improvecloud data protectionVSAvoidsynchronization code complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates cloud synchronization objects that provide universal synchronization functionality across both intra-machine and inter-machine scenarios. The same cloud synchronization object interface can be used whether coordinating threads on the same machine or across different machines, eliminating the need for developers to write specialized synchronization code for cloud environments while maintaining robust data protection.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11720395B1Cloud thread synchronization
Publication Date: 2023.08.08 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11720395B1 patent drawing
  • US11720395B1 patent drawing
  • US11720395B1 patent drawing

AI summary

A system, apparatus, and method for thread synchronization is provided. In one embodiment, a network system receives a signal from a first computing machine, and determines whether one or more processes are waiting for the signal. The network system also transmits the signal to one of the one or more processes on the first computing machine or a second computing machine to execute a thread of the process.