А свой malloc/new написать не выход разве? Который учтывает многозадачность? PS. Задача стандартная для плюсов (из учебников и из жизни)- пишем свой менагер кучи. Вторая стандартная задача - пишем многопоточный манагер кучи.
Или идея фикс - "ничего от себя, strok-errno-и тп наше всё и без глюков это написать самому никак невозможно"?