Je cherche un programme qui fait les choses suivantes:programme avec la plus petite empreinte mémoire possible (sous Linux)
- Waits indéfiniment, alias ne quittez pas par elle-même lorsqu'elle est appelée avec
./prog &
- A l'plus faible empreinte de mémoire possible en cours d'exécution, comme mesurée, par exemple, par l'outil
pmap
, le programme et les champs[stack]
.
Cette question n'est pas purement académique, je travaille sur un memory scanner et j'ai besoin d'un exemple minimal pour travailler avec.
Le plus petit que je pouvais venir avec (en pur C) est:
#include <unistd.h>
int main(int argc, char **argv)
{
pause();
return 0;
}
mais je suis sûr que cela peut être éclipsée avec un certain montage/compilateur/C magie arcanique, comme celui-ci mange plus de 180 Ko de programme + pile.
En fait, vous voulez de la magie de l'éditeur de liens, avec un script d'éditeur de liens personnalisé pour réduire autant que possible les espaces de mémoire. –
'#include int principal (int argc, char ** argv) { return pause(); } 'sera * marginalement * plus petit ;-) –
wildplasser
@wildplasser: Je ne pense vraiment pas que la taille de la source affectera la taille d'exécution. – 12345ieee