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.