table of contents
FORK(2) | Podręcznik programisty Linuksa | FORK(2) |
NAZWA¶
fork - utworzenie procesu potomnego
SKŁADNIA¶
#include <sys/types.h>
#include <unistd.h>
pid_t fork(void);
OPIS¶
fork tworzy proces potomny, który różni się od procesu macierzystego jedynie swoimi numerami PID i PPID oraz tym, że w rzeczywistości użycie przez niego zasobów jest ustawione na 0. Blokady plików i oczekujące sygnały nie są dziedziczone.
Pod Linuksem fork funkcja jest zaimplementowana za pomocą kopiowania stron pamięci przy zapisie, więc jedynymi mankamentami fork są czas i pamięć wymagane do powielenia tablic stron rodzica i utworzenia unikalnej struktury zadania dla potomka.
WARTOŚĆ ZWRACANA¶
Po pomyślnym zakończeniu, w procesie macierzystym zwracany jest PID procesu potomnego, a w procesie potomnym zwracane jest 0. Po błędzie zwracane jest -1 w kontekście rodzica, nie jest tworzony procesie potomny i odpowiednio ustawiane jest errno.
BŁĘDY¶
ZGODNE Z¶
Funkcja fork jest zgodna z SVr4, SVID, POSIX, X/OPEN, BSD 4.3.
ZOBACZ TAKŻE¶
1995-06-10 | Linux 1.2.9 |