Sobes.tech
Junior — Middle

Spiega cos'è il processo di fork nel sistema operativo Linux e come funziona.

sobes.tech AI

Risposta dell'AI

In Linux, il processo fork (fork) è una chiamata di sistema che crea un nuovo processo copiando quello attuale (genitore). Il nuovo processo è chiamato figlio e inizialmente è una copia esatta del genitore, inclusi memoria, variabili e stato di esecuzione.

Funzionamento di fork:

  • Il genitore chiama fork()
  • Il sistema operativo crea un nuovo processo con un nuovo PID
  • Il processo figlio riceve una copia dello spazio di indirizzamento del genitore (nei sistemi moderni si utilizza copy-on-write per ottimizzare)
  • Dopo fork(), entrambi i processi continuano l'esecuzione dal punto di chiamata di fork(), ma fork() restituisce 0 nel processo figlio e il PID del processo figlio nel genitore.

Questo permette di creare processi paralleli per eseguire compiti diversi.