Fork (Unix)

From Wikipedia, the free encyclopedia

Remove ads

fork() er et systemkall i Unix-liknende operativsystemer som en prosess kan bruke for å kopiere seg selv. fork() kallet oppretter en ny barneprosess (child), som er en eksakt kopi av den prosessen det blir kalt fra (parent), men med sitt eget separate adresseområde. Man kan så benytte den nye tråden til å utføre en annen oppgave, f.eks starte et delprogram eller lignende.

fork() har vært tilgjengelig siden den første utgaven av Unix i 1971.[1]

Remove ads

Kode-eksempel

/* Kodeeksempel i C med bruk av fork()- hvor ny prosess starter firefox */

 #include <stdio.h>
 #include <unistd.h>

  pid_t = pid; // oppretter variabel som holder parent-pid (prosess identification number)

  pid = fork();    // lager kopi av nåværende prosess

  if (pid == 0 ) // forutsetning for at man er i child. 
   {
     printf("This is Child talking, child will now start Firefox for you..."); 
     system("Firefox");  
   }
  }
Remove ads

Referanser

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads