2009-05-16 21 views

risposta

10

Sì, system() è essenzialmente un fork() ed exec() "sh -c" per la stringa di comando passata. Un'implementazione di esempio (da eglibc, recentemente biforcuta da glibc) può essere trovata here.

+0

Grazie, quel link è stato davvero utile :) – user108127

1

Sì, il sistema ("foo bar") è equivalente a execv ("/ bin/sh", ["sh", "-c", "foo bar"]).

+1

Posix richiede che system() ignori SIGINT e SIGQUIT e blocchi SIGCHLD. –

+0

Sì. L'esempio di implementazione che Lance ha indicato fa. – user108127

Problemi correlati