Cross-OS Memory Sharing Using Dynamic Buffer Address Identifiers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing technologies do not provide a method for sharing memory across different operating systems, which is necessary for improving data transmission efficiency and addressing memory sharing issues between systems like the Intelligent Cockpit and ADAS/AD that use different operating systems such as QNX and Linux.

Innovation Solution

A method and apparatus for sharing memory across operating systems by determining a first dynamic buffer area in a first operating system, assigning a unique address identifier to this area, and sending it to a second operating system within the same integrated circuit, enabling direct access and memory sharing between the systems.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory sharing mechanism is implemented within a single operating system, then data transmission efficiency is improved, but memory sharing between different operating systems remains unsupported

Engineering Contradiction:
Improvedata transmission efficiencyVSAvoidcross-operating system compatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The memory sharing mechanism is designed to work across different operating systems (QNX and Linux) by establishing a universal interface layer. The device memory is made accessible to multiple OS types through a standardized sharing protocol, allowing the same memory pool to serve multiple operating systems simultaneously without requiring OS-specific implementations.

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

Solution Approach 2:

An intermediary memory management layer is introduced between the physical device memory and the different operating systems. This intermediary layer handles address translation, memory allocation, and access control, enabling seamless communication between QNX and Linux systems sharing the same device memory without direct OS-to-OS interaction.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If traditional memory sharing methods are used, then data transmission speed is improved, but direct access between different operating systems is not enabled

Engineering Contradiction:
Improvedata transmission speedVSAvoiddirect memory access capability
Core Design Contradiction:
SpeedVSEase of operation

Solution Approach 1:

The patent merges the memory spaces of different operating systems by allowing them to access the same device memory pool. The QNX operating system and Linux operating system are combined in their ability to access shared device memory through a unified addressing mechanism, eliminating the need for separate memory spaces and enabling direct access between OSes.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If separate memory spaces are allocated to different operating systems, then system isolation is maintained, but memory sharing and data transmission efficiency are reduced

Engineering Contradiction:
Improvesystem isolationVSAvoidmemory sharing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The device memory is segmented into multiple buffer areas that can be dynamically allocated to different operating systems. Each OS receives dedicated buffer segments when needed, maintaining isolation and reliability, while the segmentation allows flexible reconfiguration for efficient memory sharing when collaboration between OSes is required.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP4722918A2Method of sharing memory across operating systems, apparatus, circuit, medium, and device
Publication Date: 2026.04.08 XG TECHNOLOGIES PTE LTD
  • EP4722918A2 patent drawingFigure 1a
  • EP4722918A2 patent drawingFigure 1b~2
  • EP4722918A2 patent drawingFigure 3

AI summary

Embodiments of the present disclosure disclose a method of sharing memory cross operating systems, apparatus, a circuit, a medium, and a device. The method of sharing memory cross operating systems includes: determining a first dynamic buffer area in a first operating system according to a memory sharing message; determining an address identifier corresponding to the first dynamic buffer area; and sending the address identifier to a second operating system, wherein the first operating system and the second operating system are in a same integrated circuit.