Что тут беспредметного? За тебя код написать? Что смешного я тоже
не понимаю, у первых юниксов было 64кБайта и как-то крутились.
Проблема, догадываюсь, в том что "программисты проф. уровня" знают
страшное слово "фрагментация" и не используют динамический
аллокатор памяти, поэтому у них всё в compile time распределено
(когда оно надо, и когда не надо) в итоге нужны титанические объёмы
ОЗУ. Тебе уже готовую ссылку на ELF-лоадер давали. Брать как есть
не надо, но подсмотреть можно.
Возьми для начала свой код, собери с указанными ключами, сделай readelf -a и покажи сюда. Вот увидим, какие релокации там есть и что куда грузить. Заодно через objdump -S (собирать с -g) посмотри насколько код страшен.