Proces
macierzysty
fork() —> wait().
Proces
-:-1
macierzysty
Proces potomny cxcc(...)—►—>cxit()
\vait() - oczekiwanie procesu macierzystego na zakończenie procesu potomka exit() - proces potomny kończy pracę (budzi się wtedy proces macierzysty)
np. powłoka UNIX
S polecenie [ENTER]
S Is - wyświetla zawartości katalogu
*— proces potomny wyświetla dane na ekranie «— proces macierzysty wait()
S
druga możliwość
Proces macierzysty
fork() —> exit()
zakończył wcześniej działanie
Proces potomny
proces osierocony adoptowany przez proces Init (pid— 1)
Są to dwa niezależne procesy (jeden robi swoje a drugi swoje),
Są różne przypadki:
> gdy macierzysty wykona się szybciej, wtedy potomny jest osierocony i adoptowany przez proces Init (schemat powyżej)
> ale może być odwrotnie: