Hardware-Enforced Software Boundaries With Metadata Maps

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software systems lack the ability to enforce sufficient locality of causality, leading to bugs and security vulnerabilities due to unrestricted access to memory and instructions, making correctness and security intractable at scale.

Innovation Solution

Implementing a method for regulating program execution on a microprocessor using metadata maps, instruction pointers, and data addresses with annotations to enforce locality of causality through properties like structured control flow, object association, lifetime, modularity, and mutability, utilizing a lightweight hardware and software intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If hardware engineers eliminate all locality of causality within software to give software engineers freedom to write programs, then ease of operation is improved, but software correctness and security deteriorate

Engineering Contradiction:
Improveease of writing programsVSAvoidsoftware correctness and security
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the memory space into distinct objects with unique identifiers (object-ids). Each object is a self-contained unit with enforced boundaries, preventing unauthorized access from other objects. This segmentation restores locality of causality by ensuring that software components can only access their designated memory regions, thereby maintaining security and correctness while preserving programming flexibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces metadata maps as an intermediary layer between software and hardware. These maps store object-ids and boundary information, acting as mediators that enforce access control policies. When software attempts to access memory, the metadata map verifies the access is within authorized boundaries, thus maintaining both ease of operation and reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If software engineers are given unrestricted access to memory and instructions, then adaptability is improved, but harmful factors increase

Engineering Contradiction:
Improveaccess freedomVSAvoidbugs and security vulnerabilities
Core Design Contradiction:
Adaptability or versatilityVSObject-generated harmful factors

Solution Approach 1:

The patent applies local quality by giving each memory object unique properties through object-ids and associated metadata. Each object can have customized access controls, lifetime management, and mutability constraints tailored to its specific requirements. This allows software to maintain adaptability within objects while preventing harmful effects through localized boundary enforcement.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements preliminary anti-action by pre-establishing boundary constraints and access control rules before software execution. The hardware enforces these pre-defined boundaries, preventing software from performing harmful actions such as accessing unauthorized memory regions or corrupting other objects, thus eliminating bugs and security vulnerabilities while preserving adaptability.

Inventive Principle:
Principle #9Preliminary anti-action

3Reliability

If hardware enforcement of boundaries is implemented, then reliability is improved, but device complexity increases

Engineering Contradiction:
Improvememory safety and securityVSAvoidhardware and software intervention
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent adds another dimension to the memory address space by incorporating object-ids alongside traditional memory addresses. This dimensional extension allows the hardware to track and enforce object boundaries without fundamentally redesigning the entire memory system. The metadata maps store this additional dimensional information, enabling boundary enforcement with minimal increase in device complexity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS20250321739A1Hardware enforcement of boundaries on the control, space, time, modularity, reference, initialization, and mutability aspects of software
Publication Date: 2025.10.16 WHOLE SKY TECH CO
  • US20250321739A1 patent drawing
  • US20250321739A1 patent drawing
  • US20250321739A1 patent drawing

AI summary

Modifications to existing computer hardware, compiler changes or source-to-source transforms performed during the software build process, and a collection of libraries and modifications to existing standard system software and libraries. The invention allows a program author to enforce various kinds of locality of causality in software to provide enforcement of boundaries for the following aspects of a computer program: control, space, time, modularity, reference, initialization, and mutability. Where these properties do not suffice to guarantee a property at static time, dynamic checks may be added and the constraints on control flow prevent such dynamic checks from being avoided by the program.