I was doing some porting of components to SafeRTOS (the IEC 62304 certified version of FreeRTOS), and I noticed the pvPortMalloc and pvPortFree calls are no longer supported. SafeRTOS does not support (or need) any dynamic ram.
Given I want to use the FreeRTOS TCP stack on SafeRTOS, should I write a network allocator heap_xxx.c for my networkInterface code to use that allocates a fixed number of buffers?
Anything else in the stack that will make this port difficult/impossible?
SafeRTOS does not use dynamic memory allocation because, generally speaking, it is frowned upon in safety critical aps (non-deterministic and fragmentation being the main concerns).
After that there are some small allocations being made in FreeRTOS_socket() and vDNSSetCallBack(). It might be that you don’t use vDNSSetCallBack(), and as you suggest you could provide your own trivial implementation for FreeRTOS_socket() as it will only ever allocated two different sizes - one size of UDP sockets and one size for TCP sockets.