Inhoudsopgave:
Definitie - Wat betekent Fork?
Fork is een functie in Unix die wordt gebruikt om een duplicaat van een bepaald proces te genereren door twee gelijktijdig uitgevoerde processen van een programma te maken. Deze twee processen worden typisch de "ouder" en "kind" processen genoemd. Ze gebruiken multitasking-protocollen om systeembronnen te delen.
Techopedia legt Fork uit
Een groot element van de manier waarop vorken wordt geïmplementeerd, is het copy-on-write systeem dat wordt gebruikt om progressieve veranderingen in een proces na het vorken op te slaan. Doorgaans wordt de statische code niet gedupliceerd, maar gedeeld. Op het moment dat een proces gedeelde code wijzigt, worden de wijzigingen afzonderlijk gemaakt en opgeslagen. Dit bevordert de efficiëntie bij het gebruik van gevorkte processen.
Ontwikkelaars moeten zich ook bewust zijn van enkele problemen met het gebruik van vork om een dubbel proces te genereren. Een daarvan is het probleem van multithread-programma's; omdat het onderliggende proces slechts één thread overneemt, kunnen er problemen zijn met betrekking tot wat er gebeurt met meerdere threads wanneer de vorkfunctie wordt aangeroepen. Deze en andere overwegingen worden vaak genoemd door degenen die met de vorkfunctie hebben gewerkt.