SKŁADNIA
#include <sys/types.h>#include <unistd.h>
pid_t fork(void);
OPIS
Uwaga! To tłumaczenie może być nieaktualne!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
- EAGAIN
- fork nie mógł zaalokować ilości pamięci wystarczającej do skopiowania tablic stron rodzica i dla struktury zadania dla potomka.
- ENOMEM
- fork nie potrafił zaalokować niezbędnych struktur jądra z powodu niedostatecznej ilości pamięci.
ZGODNE Z
Funkcja fork jest zgodna z SVr4, SVID, POSIX, X/OPEN, BSD 4.3.INFORMACJE O TŁUMACZENIU
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:- man --locale=C 2 fork
Prosimy o pomoc w aktualizacji stron man - więcej informacji można znaleźć pod adresem http://sourceforge.net/projects/manpages-pl/.