Processo (informatica): differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Riga 77:
=== Genesi di processi e thread ===
Al [[Boot|bootstrap]] del sistema operativo ci sono in esecuzione uno o più processi creati dal sistema operativo stesso. Durante l'avvio del sistema, in base alla configurazione, possono essere creati numerosi processi. Durante la normale operatività, in base alle richieste degli utenti, possono essere creati nuovi processi e altri possono terminare. Quando il sistema operativo inizia l'esecuzione di un programma, crea un processo dotato di un solo thread. Durante l'esecuzione di tale thread, detto thread principale, il codice può creare altri thread o altri processi con apposite [[chiamata di sistema|chiamate di sistema]].
La creazione di un processo differisce tra i vari sistemi operativi. In ambiente [[Windows]], si usa la chiamata di sistema "CreateProcess", con cui si specifica il nome del file contenente il programma eseguibile; tale file viene caricato in memoria ed eseguito. In ambiente [[Unix]], si usa la chiamata di sistema "[[fork (programmazione)|fork]]" per creare un nuovo [[processo figlio]] identico al chiamante ([[processo padre]]) eccetto che per il valore reso dalla chiamata stessa; e si usa poi la chiamata "exec" in uno dei due per caricare il codice eseguibile di un nuovo programma nel processo corrente, e mandarlo in esecuzione.
|