Como posso executar comandos externos no C / Linux sem usar system, popen, fork, exec?

Eu gostaria de saber se existe alguma boa maneira de executar um comando externo no ambiente Linux usando a linguagem C sem usar system (), popen (), fork (), exec ()?

A razão pela qual não posso usar essas funções é que meu aplicativo principal usou a maior parte dos recursos do sistema (ou seja, memória) na minha placa integrada. Se eu fizer um fork, o conselho não poderá criar uma cópia do meu aplicativo principal. De eu li em um livro, system () e popen () realmente usando fork () embaixo, então eu não posso usá-los também.

A única idéia que tenho atualmente é criar um processo antes de executar meu aplicativo principal e usar IPC (pipe ou socket) para permitir que o novo processo saiba quais comandos externos ele precisa para executar com system () ou popen () e retornar os resultados para meu aplicativo quando estiver pronto.

questionAnswers(1)

yourAnswerToTheQuestion