Innehållsförteckning:
Definition - Vad betyder Fork?
Fork är en funktion i Unix som används för att generera ett duplikat av en viss process genom att skapa två samtidigt exekverande processer för ett program. Dessa två processer kallas vanligtvis processen "förälder" och "barn". De använder multitasking-protokoll för att dela systemresurser.
Techopedia förklarar Fork
Ett stort element i hur gaffel implementeras är det copy-on-write-system som används för att lagra progressiva förändringar i en process efter forking. Vanligtvis dupliceras inte den statiska koden utan delas. Vid en tidpunkt då en process modifierar delad kod skapas och lagras ändringarna separat. Detta främjar effektiviteten i användningen av gaffelprocesser.
Utvecklare måste också vara medvetna om vissa problem med att använda gaffel för att generera en duplikatprocess. Ett av dessa är frågan om multithread-program; eftersom barnprocessen bara ärver en enda tråd kan det finnas problem relaterade till vad som händer med flera trådar när gaffelfunktionen kallas. Dessa och andra överväganden nämns ofta av dem som har arbetat med gaffelfunktionen.
