Safe API Framework 0.1.0 build 384e6ae
Layered API framework for safety-related applications (ERTMS RBC reference targeting CENELEC EN 50128 SIL 4)
Loading...
Searching...
No Matches
rte_memory.c File Reference

Memory pool service: validates parameters, then dispatches to the OSAdapter registered via rte_osadapter_memory_register() (ADR-005). More...

Include dependency graph for rte_memory.c:

Go to the source code of this file.

Functions

rte_status_t rte_osadapter_memory_register (const rte_osadapter_memory_t *osadapter)
 Registers the OSAdapter memory implementation.
rte_status_t rte_mem_pool_create (rte_mem_pool_storage_t *storage, const rte_mem_pool_config_t *config, rte_mem_pool_handle_t *out_handle)
 Reserves a fixed-size-block memory pool.
rte_status_t rte_mem_pool_acquire (rte_mem_pool_handle_t handle, void **out_block)
 Acquires one fixed-size block from the pool.
rte_status_t rte_mem_pool_release (rte_mem_pool_handle_t handle, void *block)
 Returns a previously acquired block to its pool.
rte_status_t rte_mem_pool_stats (rte_mem_pool_handle_t handle, size_t *out_free_blocks, size_t *out_used_blocks)
 Reports current free/used block counts for diagnostics.

Variables

static const rte_osadapter_memory_t * s_osadapter = NULL
 Currently registered OSAdapter, or NULL if none (ADR-005).

Detailed Description

Memory pool service: validates parameters, then dispatches to the OSAdapter registered via rte_osadapter_memory_register() (ADR-005).

Definition in file rte_memory.c.

Function Documentation

◆ rte_osadapter_memory_register()

rte_status_t rte_osadapter_memory_register ( const rte_osadapter_memory_t * adapter)

Registers the OSAdapter memory implementation.

Global variables declarations Local function declarations Global functions

Parameters
adapterPointer to memory operations vtable.
Returns
RTE_STATUS_OK on success, RTE_STATUS_INVALID_PARAM if adapter is NULL, or RTE_STATUS_INVALID_STATE if the setup phase is already locked (REQ-LIFECYCLE-001, ADR-026; the previous registration, if any, is kept).

REQ-OAL-MEM-014: Follows the OSAdapter-registration contract (ADR-005 section 2.1): a NULL adapter is rejected with RTE_STATUS_INVALID_PARAM; re-registering replaces the previous OSAdapter.

Definition at line 25 of file rte_memory.c.

Variable Documentation

◆ s_osadapter

const rte_osadapter_memory_t* s_osadapter = NULL
static

Currently registered OSAdapter, or NULL if none (ADR-005).

Local makros Local types declarations Local variables declarations

Definition at line 17 of file rte_memory.c.