Gabel

Definition - Was bedeutet Gabel?

Fork ist eine Funktion in Unix, mit der ein Duplikat eines bestimmten Prozesses generiert wird, indem zwei gleichzeitig ausgeführte Prozesse eines Programms erstellt werden. Diese beiden Prozesse werden normalerweise als "übergeordnete" und "untergeordnete" Prozesse bezeichnet. Sie verwenden Multitasking-Protokolle, um Systemressourcen gemeinsam zu nutzen.

Technische.me erklärt Fork

Ein wichtiges Element bei der Implementierung des Forkings ist das Copy-on-Write-System, mit dem progressive Änderungen an einem Prozess nach dem Forking gespeichert werden. In der Regel wird der statische Code nicht dupliziert, sondern gemeinsam genutzt. Zu dem Zeitpunkt, an dem ein Prozess gemeinsam genutzten Code ändert, werden die Änderungen separat erstellt und gespeichert. Dies fördert die Effizienz bei der Verwendung von Gabelprozessen.

Entwickler müssen sich auch einiger Probleme bei der Verwendung von Fork bewusst sein, um einen doppelten Prozess zu generieren. Eines davon ist das Problem der Multithread-Programme. Da der untergeordnete Prozess nur einen einzelnen Thread erbt, kann es zu Problemen kommen, wenn mehrere Threads aufgerufen werden, wenn die Fork-Funktion aufgerufen wird. Diese und andere Überlegungen werden häufig von Personen erwähnt, die mit der Gabelfunktion gearbeitet haben.