Я не знаю о специфике ARM Linux; однако, предполагая, что вы говорите о приложении пользовательского пространства, а не о пространстве ядра, по сути нет «размера кучи». «Классический Unix-способ» управления памятью в пользовательском пространстве представляет собой «расширяющуюся кучу» - приложение имеет кучу конечного размера, и когда ему необходимо ее расширить, она вызывает функцию brk ().
Я полагаю, у вас нет свопа и отключенного overcommit на этой платформе - посмотрите в / proc / meminfo (или вывод 'top'), чтобы увидеть доступную память.