Memory Security Circuitry for Exception-Aware Branch Permissions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in enforcing permissions for code execution, particularly when exceptions occur, as they require immediate permission checks that can hinder the execution of exception handling routines.

Innovation Solution

Implement memory security circuitry that temporarily disables permission checks during exceptions to allow execution of exception handling routines, re-enabling checks at appropriate control flow instructions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory security circuitry enforces permission checks on all branches, then code execution security is improved, but exception handling execution is hindered

Engineering Contradiction:
Improvecode execution securityVSAvoidexception handling execution
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The permission check mechanism is made dynamic by allowing it to be selectively enabled or disabled based on execution context. The disabling circuitry receives signals from exception handling circuitry to temporarily disable permission checks when exceptions occur, and memory security circuitry restores checks when returning from exceptions. This dynamic adjustment resolves the contradiction by adapting the security enforcement to the specific execution phase.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary actions by pre-configuring the disabling circuitry to automatically disable permission checks when exception handling circuitry is activated. This preliminary disabling action ensures that exception handling routines can execute immediately without being blocked by security checks, while the framework is already in place to restore security checks when appropriate.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If permission checks are enforced at all branch points, then access control is improved, but execution overhead increases

Engineering Contradiction:
Improveaccess controlVSAvoidexecution overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Permission checks are performed periodically at normal branch points during regular code execution, but are suspended during exception handling phases. The disabling circuitry creates periods where checks are active (normal execution) and periods where they are inactive (exception handling), reducing overall execution overhead while maintaining access control during critical security-sensitive operations.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The permission check enforcement is applied locally to different execution contexts rather than uniformly. Normal code execution paths maintain strict permission checking, while exception handling paths are granted temporary exemption. This localized differentiation allows the system to maintain high security where needed while reducing overhead in specific contexts where checks would be redundant or counterproductive.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20260080054A1Selectively disabling permissions
Publication Date: 2026.03.19 APPLE INC
  • US20260080054A1 patent drawing
  • US20260080054A1 patent drawing
  • US20260080054A1 patent drawing

AI summary

An apparatus is provided in which memory security circuitry responds to a branch by determining whether there is permission for the execution context that executes the branch to branch to the target of the branch and taking an error action in the absence of such permission. Exception handling circuitry responds to an exception by branching to an exception handling routine and disabling circuitry disables the memory security circuitry in response to the exception.