2011-03-17 6 views
3

Je souhaite supprimer un exécutable après avoir lancé le processus.Processus auto-destructeur Unix C

J'ai essayé en mettant unlink et cela fonctionne très bien, mais je veux que mon exécutable continue à fonctionner. L'approche unlink est-elle correcte? Y a-t-il des problèmes avec l'utilisation de cette approche?

+0

Demandez-vous de l'aide pour écrire des logiciels malveillants? –

+0

Non, je n'écris pas de logiciels malveillants. – Avinash

Répondre

8

Sous Unix, il ne devrait pas y avoir de problèmes pour dissocier l'exécutable d'un processus en cours. Lorsque vous dissociez un fichier, l'entrée du répertoire est supprimée, mais l'inode et les données sous-jacentes ne sont pas libérés tant que toutes les références existantes au fichier (liaisons permanentes et poignées ouvertes) ne sont pas libérées.