Multi-Domain Shared Memory Tagging for Safety Bug Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing electronic devices face challenges in detecting memory safety bugs, particularly in multiple domain environments, which can lead to memory security vulnerabilities and abnormal terminations.
Innovation Solution
The method involves an electronic device supporting multiple domains, where shared memory is allocated and tagged for communication between domains, enabling the detection of memory safety bugs using memory tagging extension (MTE).
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If shared memory is allocated for communication between multiple domains, then inter-domain communication capability is improved, but memory safety vulnerability increases
Solution Approach 1:
The patent applies preliminary action by registering tags for shared memory areas in advance before actual memory access operations occur. The system pre-configures memory tagging information for each domain's shared memory regions, enabling automatic safety verification to be already in place when memory operations happen, thus preventing safety bugs before they can cause failures.
Solution Approach 2:
The patent implements feedback through automatic verification mechanisms that check tag consistency during memory access operations. When a domain accesses shared memory, the system verifies the access against pre-registered tag information and provides feedback by detecting and reporting memory safety bugs, allowing the system to identify and correct unsafe memory operations.
2Reliability
If memory tagging is implemented for shared memory, then memory safety detection is improved, but system complexity increases
Solution Approach 1:
The patent applies universality by designing a memory tagging system that serves multiple functions: it enables inter-domain communication through shared memory, provides automatic memory safety verification, and detects memory safety bugs. This single tagging mechanism handles multiple security and communication requirements, reducing the need for separate complex safety mechanisms.
Solution Approach 2:
The patent implements self-service through automatic tag verification mechanisms that operate without manual intervention. The system automatically checks memory access operations against registered tag information, self-detects safety violations, and reports bugs without requiring external verification tools or manual safety checks, thereby managing complexity through automation.
3Adaptability or versatility
If multiple domains access shared memory, then functionality is improved, but memory security vulnerability increases
Solution Approach 1:
The patent applies preliminary action by pre-registering tag information for each domain's shared memory areas before multi-domain access operations begin. This advance configuration establishes security boundaries and access rules, enabling automatic verification to prevent security vulnerabilities before they can be exploited during inter-domain communication.
Solution Approach 2:
The patent implements feedback through automatic verification of memory access operations against pre-registered tag information. When domains access shared memory, the system provides real-time feedback by detecting access violations and reporting memory safety bugs, allowing immediate identification and correction of security vulnerabilities in multi-domain environments.
Data Source
AI summary
A method for detecting a memory safety bug and an electronic device supporting the same are provided. The electronic device supporting multiple domains includes memory storing one or more computer programs, and one or more processors communicatively coupled to the memory and operable in a first domain and a second domain, wherein The one or more computer programs include computer-executable instructions that, when executed by the one or more processors individually or collectively, cause the electronic device to detect a shared memory use request by the first domain or the second domain, allocate shared memory for communication between multiple domains including the first domain and the second domain based on a memory area designated in the memory, based on the shared memory use request, register a tag for the shared memory in a first memory area of the first domain and a second memory area of the second domain, and detect a memory safety bug for the shared memory shared between the first domain and the second domain, based on the tag.


