ROS Shared Memory Management with Automatic Deallocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The automatic memory deallocation method in robot operating systems often results in resource waste and efficiency issues due to untimely cleaning of inaccessible memory, leading to system breakdowns.

Innovation Solution

A method and device for managing shared memory in a robot operating system that acquires a shared memory registering service request, requests a memory segment, divides it into blocks, and deallocates the segment when specific conditions are met, such as inconsistent topic names or node stoppages, ensuring timely memory cleanup.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If automatic memory deallocation method is used, then memory management is simplified, but inaccessible memory is not cleaned timely causing resource waste and system inefficiency

Engineering Contradiction:
Improvememory management simplicityVSAvoidmemory cleanup timeliness
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where the system continuously monitors the accessibility state of memory objects and sends signals to the deallocation manager. When an object transitions to an inaccessible state, the feedback signal triggers the deallocation manager to clean up the memory, ensuring timely removal of inaccessible memory while maintaining automated management simplicity.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs self-service by automatically detecting when memory objects become inaccessible and initiating cleanup without external intervention. The accessibility detection mechanism autonomously identifies problematic memory states and triggers appropriate deallocation actions, eliminating the need for manual memory management while ensuring timely cleanup.

Inventive Principle:
Principle #25Self-service

2Extent of automation

If automatic memory deallocation method is used, then memory allocation is automated, but resource waste increases when memory is not cleaned timely

Engineering Contradiction:
Improvememory allocation automationVSAvoidmemory resource waste
Core Design Contradiction:
Extent of automationVSLoss of substance

Solution Approach 1:

The patent applies preliminary action by establishing a monitoring mechanism that detects inaccessible memory states before they cause significant resource waste. The system proactively identifies when memory objects should be deallocated and initiates the cleanup process in advance, preventing resource waste rather than reacting after waste has occurred.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The feedback mechanism continuously monitors memory accessibility and provides real-time information to the deallocation manager. This enables the system to automatically identify and remove inaccessible memory resources, preventing resource waste while maintaining full automation of the memory management process.

Inventive Principle:
Principle #23Feedback

3Ease of operation

If automatic memory deallocation method is used, then system operation is simplified, but system breakdown can occur due to unchecked memory issues

Engineering Contradiction:
Improvesystem operation simplicityVSAvoidsystem stability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent implements a feedback loop that continuously monitors the health of memory objects and notifies the deallocation manager of inaccessible states. This feedback mechanism enables the system to detect and respond to memory issues automatically, maintaining operational simplicity while preventing system breakdown through proactive memory management.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system applies beforehand cushioning by establishing monitoring and detection mechanisms that identify inaccessible memory states before they can cause system breakdown. The deallocation manager is prepared to act immediately upon receiving feedback about problematic memory, cushioning against potential system failures.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS9967222B2Method and device for managing shared memory in robot operating system
Publication Date: 2018.05.08 BEIJING BAIDU NETCOM SCI & TECH CO LTD
  • US9967222B2 patent drawing
  • US9967222B2 patent drawing
  • US9967222B2 patent drawing

AI summary

Disclosed in the present application are a method and device for managing a shared memory in a robot operating system. A detailed embodiment of the method comprises: acquiring a shared memory registering service request transmitted from a message receiving node, the shared memory registering service request comprising a topic name and a size of a required memory segment; requesting a memory segment in a shared memory area based on the size of the required memory segment, associating the topic name with the requested memory segment, and saving the topic name in a configuration file; dividing the requested memory segment into a plurality of memory blocks based on a size of a message transmitted from a message transmitting node; and deallocating the requested memory segment where any one of following conditions is satisfied: the topic name in a main node is inconsistent with that in the configuration file, the message transmitting node and message receiving node stop working, and the message receiving node stops subscribing to a topic corresponding to the topic name. By means of the embodiment, the shared memory of the robot operating system is allocated and managed more reasonably and flexibly.