File: clone.2

package info (click to toggle)
manpages-fr 0.5-3
  • links: PTS
  • area: main
  • in suites: slink
  • size: 4,236 kB
  • ctags: 4
  • sloc: makefile: 55
file content (101 lines) | stat: -rw-r--r-- 2,747 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
.\" Hey Emacs! This file is -*- nroff -*- source.
.\"
.\" Copyright (c) 1992 Drew Eckhardt (drew@cs.colorado.edu), March 28, 1992
.\" May be distributed under the GNU General Public License.
.\" Modified by Michael Haardt (u31b3hs@pool.informatik.rwth-aachen.de)
.\" Modified Sat Jul 24 13:22:07 1993 by Rik Faith (faith@cs.unc.edu)
.\" Modified 21 Aug 1994 by Michael Chastain (mec@shell.portal.com):
.\"   New man page (copied from 'fork.2').
.\" Modified 10 June 1995 by Andries Brouwer (aeb@cwi.nl)
.\"
.\" Traduction 14/10/1996 par Christophe Blaess (ccb@club-internet.fr)
.\"
.TH CLONE 2 "14 Octobre 1996" "Linux 1.2.9" "Manuel du programmeur Linux"
.SH NOM
clone \- Creer un processus fils (child).
.SH SYNOPSIS
.B #include <linux/sched.h>
.br
.B #include <linux/unistd.h>
.sp
.BI "pid_t clone(void *" "sp" ", unsigned long " "flags" ")"
.SH DESCRIPTION
.B clone
est une alternative pour 
.BR fork ,
proposant des options supplementaires.
.B fork
est equivalent a 
.BR "clone(0, SIGCLD|COPYVM)" "."

Si l'argument 
.I sp
est non\-nul, le processus fils utilisera
.I sp
comme pointeur de pile initial.


Les octets de poids faibles de
.I flags
contiennent le numero du signal a envoyer au processus parent
lors de la mort du processus fils.
.I flags
peut aussi contenir un OU binaire ( | ) avec les options
.B COPYVM
et
.BR COPYFD .

Si l'attribut
.B COPYVM
est choisi, les pages memoires du fils sont des images des pages
du pere qui seront dupliquees lors de l'ecriture (copy-on-write).
Sinon, le fils partage les memes pages que le pere, et les deux
processus peuvent ecrire sur la meme zone de donnees.

Si 
.B COPYFD
est choisi, les descripteurs de fichiers du fils sont des
copies de ceux du pere.
Sinon le pere et le fils partagent les memes descripteurs de
fichiers.
.BR
.SH "VALEUR RENVOYEE"
.BR clone
S'il reussit, renvoie le PID du processus fils au processus
pere, et 0 au processus fils.
En cas d'echec  
.BR clone 
renvoie \-1 au processus pere, aucun processus fils n'est cree, et
.I errno
contient le code d'erreur.
.SH ERREURS
.TP
.B ENOSYS
.B clone
declenchera toujours cette erreur a moins que le noyau n'ait ete
compile avec la constante symbolique 
.B CLONE_ACTUALLY_WORKS_OK
definie.
.TP
.B EAGAIN
Pas assez de memoire pour copier les tables de pages du
processus parent et allouer une structure de tache pour
le processus fils.
.SH BUGS
Par defaut
.B CLONE_ACTUALLY_WORKS_OK
n'est pas defini.
.br
Il n'y a pas de definition pour
.B clone
dans
.BR libc.so.4.5.26 .
.br
Les commentaires dans le noyau (1.1.46) indiquent que le cas ou
.B COPYVM
n'est pas defini est mal gere.
.SH CONFORMITE
Cet appel-systeme est specifique a Linux et ne doit pas etre
employe dans des programmes portables.
.SH "VOIR AUSSI"
.BR fork (2)