C++  ile fork sistem çağrısı

C++ ile fork sistem çağrısı

Fork işlem cağrısı kendi işinin aynısını yapan bir çoçuk süreç oluşturmadır. Yeni bir çocuk süreç oluşturulduktan sonra, her iki süreç fork () sistem çağrısının ardından sonraki talimatı göre yürütülür. Bir çocuk süreç, üst süreçte kullanılan aynı bilgisayarı , aynı CPU kayıtlarını, aynı açık dosyalar ile klonlanır.

Tam sayı döndürür ve parametre almaz Aşağıda fork () tarafından döndürülen farklı değerler bulunmaktadır.

Negatif Değer :

Çocuk sürecinin oluşturulması başarısız olduğunda negatif değer döner

Sıfır :

Çoçuk başarılı bir şekilde oluşturuldu.

Pozitif değer :

Ebeveyn veya arayana iade edilir. Değer, yeni oluşturulan alt sürecin işlem kimliğini içerir.

Hadi beraber örneği inceleyelim ki fork un ne olduğunu anlayalım.

Not:Yaptığımız işlemler linux ile çalışmaktadır.


#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
  
    // make two process which run same
    // program after this instruction
    fork();
  
    printf("Kodsuzluk!\n");
    return 0;
}

Çıktı

KodSozluk
Kodsozluk

Kod da da gördüğümüz gibi fork fonksiyonu çağırdımızda işlemimizi 2 kere yaparak ekrana 2 defa yazmamızı sağladı.

Aşağıdaki kod parçacığınıda sizin için bırakıyorum.
sizce kaç defa Kodsozluk yazıcak çıktımız ?

int main()
{
    fork();
    fork();
    fork();
    printf("Kodsozluk\n");
    return 0;
}

Yorumlar

Bu gönderi için yorum yapılmadı.