Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
k_mem_domain Struct Reference

Memory Domain. More...

#include <mem_domain.h>

Data Fields

struct k_mem_partition partitions [CONFIG_MAX_DOMAIN_PARTITIONS]
 partitions in the domain
 
sys_dlist_t mem_domain_q
 Doubly linked list of member threads.
 
uint8_t num_partitions
 number of active partitions in the domain
 

Detailed Description

Memory Domain.

A memory domain is a collection of memory partitions, used to represent a user thread's access policy for the linear address space. A thread may be a member of only one memory domain, but any memory domain may have multiple threads that are members.

Supervisor threads may also be a member of a memory domain; this has no implications on their memory access but can be useful as any child threads inherit the memory domain membership of the parent.

A user thread belonging to a memory domain with no active partitions will have guaranteed access to its own stack buffer, program text, and read-only data.

Field Documentation

◆ mem_domain_q

sys_dlist_t k_mem_domain::mem_domain_q

Doubly linked list of member threads.

◆ num_partitions

uint8_t k_mem_domain::num_partitions

number of active partitions in the domain

◆ partitions

struct k_mem_partition k_mem_domain::partitions[CONFIG_MAX_DOMAIN_PARTITIONS]

partitions in the domain


The documentation for this struct was generated from the following file: