Clone (chiamata di sistema Linux)

Versione del 19 feb 2013 alle 12:44 di ValterVBot (discussione | contributi) (Bot: Elimino interlinks)

clone() è una chiamata di sistema del kernel Linux correlata al multithreading.

La sintassi per chiamare clone all'interno di un programma Linux program è:

#include <sched.h>
int clone (int (*fn) (void *), void *child_stack, int flags, void *arg);

clone avvia un nuovo thread che inizia con la funzione referenziata dall'argomento fn argument (laddove il comando fork() prosegue con l'istruzione immediatamente successiva al fork().) L'argomento child_stack è un puntatore allo spazio di memoria da usare come stack del nuovo thread (che dovrà essere stato creato tramite malloc; in quasi tutte le architetture lo stack 'cresce' verso il basso, per cui il puntatore dovrà puntare alla fine dello spazio a disposizione, flags specifica quali parti del processo sono ereditate dal processo genitore e arg è l'argomento passato alla funziona. Il valore di ritorno è l'ID del processo figlio, oppure -1 in caso di errore.

Template:Voci isolate