Interprocess Communication via Temporary Folder for Real-Time Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In systems requiring real-time control, conventional interprocess communication methods fail to guarantee correct message delivery when the reception-side process is not ready, as synchronization between the transmission-side and reception-side processes can be difficult to achieve, leading to potential message loss.
Innovation Solution
An interprocess communication method where the transmission-side process stores a message in a temporary folder accessible by both processes, allowing the reception-side process to confirm receipt without synchronization, ensuring correct processing even if the reception-side process has not completed preparation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If the transmission-side process transmits a message before the reception-side process completes preparation for receiving, then the real-time control requirement is met, but the message may be missed by the reception-side process
Solution Approach 1:
The reception-side process performs preliminary preparation for receiving messages (initializing communication buffers, setting up reception handlers) before the transmission-side process sends messages. This preliminary action ensures that the reception mechanism is ready to capture messages immediately when transmitted, preventing message loss while maintaining real-time control capabilities
Solution Approach 2:
A message queue or buffer acts as an intermediary between the transmission-side and reception-side processes. The transmission-side process deposits messages into this intermediary structure, and the reception-side process retrieves them. This intermediary decouples the timing requirements of transmission and reception, allowing messages to be transmitted before reception is fully ready without loss
2Reliability
If synchronization processing is performed between transmission-side and reception-side processes, then message delivery reliability is improved, but system complexity and real-time control capability deteriorate
Solution Approach 1:
Instead of performing synchronization processing at message transmission time, the system performs preliminary setup actions during system initialization or process startup. Communication protocols, buffers, and handshaking mechanisms are pre-configured, eliminating the need for complex real-time synchronization while ensuring reliable message delivery
Solution Approach 2:
The transmission-side and reception-side processes are designed to be self-sufficient with independent error handling and status monitoring capabilities. Each process maintains its own state information and can independently determine when messages are successfully transmitted or received, eliminating the need for complex inter-process synchronization mechanisms
3Manufacturing precision
If the reception-side process waits for complete preparation before receiving messages, then message processing accuracy is improved, but message transmission timing and real-time control are compromised
Solution Approach 1:
The reception-side process completes all necessary preparation actions (buffer allocation, protocol initialization, handler registration) before the transmission-side process begins sending messages. This preliminary preparation ensures that when messages arrive, the reception mechanism is fully ready to process them accurately without delay
Solution Approach 2:
The system dynamically adjusts the preparation timing based on the specific communication requirements and system state. The reception-side process can prepare at different stages depending on whether it's in initialization mode, operational mode, or error recovery mode, optimizing both processing accuracy and response time for different scenarios
Data Source
AI summary
An information processing apparatus includes a first device, a second device, and one or more controllers that function as a first processing unit capable of controlling the first device, and a second processing unit capable of controlling the second device. The first processing unit receives information from the first device about a status of the first device and transmits a message to the second processing unit. The second processing unit receives the message from the first processing unit and controls the second device. In startup processes, the first and second processing units perform processes to start a communication with each other such that the first processing unit stores predetermined information in a predetermined storage area based on the information about the status of the first device received from the first device, and the second processing unit controls the second device based on the predetermined information acquired from the storage area.


