Пустое приложение на FPC (2.3.1, objfpc) весит 27кб, но при запуске жрёт порядка полутора мегабайт памяти. Т.е. получается что RTL эту памят автоматически резервирует. Зачем ей столько я пока не понял...
Ситуацию конечно можно немного исправить, вызвая
SetProcessWorkingSetSize(GetCurrentProcess,-1,-1)
но это всё "заплатки"...
Я вот думаю... можно ли из RTL выкинуть эти веши, не выкидывая objpas...