Functions | Variables
sysmem.c File Reference

STM32CubeIDE System Memory calls file. More...

`#include <errno.h>`
`#include <stddef.h>`
`#include <stdint.h>`

Go to the source code of this file.

## Functions
void * | _sbrk (ptrdiff_t incr)
| _sbrk() allocates memory to the newlib heap and is used by malloc and others from the C library More...

## Variables
static uint8_t * | __sbrk_heap_end = NULL

## Detailed Description

STM32CubeIDE System Memory calls file.

Author
  Generated by STM32CubeIDE

             For more information about which C functions
             need which of these lowlevel functions
             please consult the newlib libc manual

Attention

##
© Copyright (c) 2020 STMicroelectronics. All rights reserved.

This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this file except in compliance with the License. You may obtain a copy of the License at: opensource.org/licenses/BSD-3-Clause

Definition in file sysmem.c.

## Function Documentation

## ◆ _sbrk()

void* _sbrk | ( | ptrdiff_t | incr | ) |

_sbrk() allocates memory to the newlib heap and is used by malloc and others from the C library

    * ############################################################################
    * #  .data  #  .bss  #       newlib heap       #          MSP stack          #
    * #         #        #                         # Reserved by _Min_Stack_Size #
    * ############################################################################
    * ^-- RAM start      ^-- _end                             _estack, RAM end --^
    *

This implementation starts allocating at the '_end' linker symbol The '_Min_Stack_Size' linker symbol reserves a memory for the MSP stack The implementation considers '_estack' linker symbol to be RAM end NOTE: If the MSP stack, at any point during execution, grows larger than the reserved size, please increase the '_Min_Stack_Size'.

Parameters

  incr | Memory size

Returns
  Pointer to allocated memory

Definition at line 55 of file sysmem.c.

## Variable Documentation

## ◆ __sbrk_heap_end

uint8_t* __sbrk_heap_end = NULL
| static

Pointer to the current high watermark of the heap usage

Definition at line 32 of file sysmem.c.