Люди помогите,раньше в yVision с компилеров CARM применял функцию malloc. А нынешний компилер RealView ругается на то, что функции init_mempool нет вообще,а писать malloc нельзя так как процессор повисает в SWI_handler даже если функцию не вызывали.
Подскажите функции:
static char allocbuf[1000];
static char *allocsize = allocbuf;
char *alloc(short n)
{
if(allocp+n <= allocbuf + allocsize){
allocp +=n;
return(allocp - n);
}
else return NULL;
}
free(char *p)
{
if(p >= allocbuf && p<allocbuf+allocsize)
allocp=p;
}
вроде делают тоже, что и библиотечные malloc и free? или всё намного сложнее чем передать следующий свободный указатель в массиве?