wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Process and Thread

Total questions: 30

Worksheet time: 15mins

Name
Class
Date
1.

Aşağıdakilerden hangisi “çalışmakta olan program” kavramını ifade eder?

a)

DosyaDosya

b)

Proses (process)

c)

Thread

d)

Kütüphane

2.

getpid() ve getppid() fonksiyonları sırasıyla neyi döndürür?

a)

Proses ID, Kullanıcı ID

b)

Thread ID, Proses ID

c)

Proses ID, Ebeveyn Proses ID

d)

Kullanıcı ID, Grup ID

3.

wait() Kullanımında ebeveyn prosesin wait(NULL) çağırmasının temel amacı nedir?

a)

Çocuğu öldürmek

b)

Çocuğun bitmesini bekleyip exit kodunu toplamak

c)

Yeni çocuk oluşturmakYeni çocuk oluşturmak

d)

Çocuğun önceliğini değiştirmek

4.

exec() ailesi fonksiyonlarının temel etkisi nedir?

a)

Yeni thread başlatır

b)

Aynı proses içinde yeni programı mevcut kodun yerine yükler

c)

Proses ID’yi sıfırlar

d)

Prosesin belleğini siler ve sonlandırır

5.

Öksüz proses (orphan) için aşağıdakilerden hangisi doğrudur?

a)

Prosesin hiç parent’i yoksa orphan olur

b)

Hem parent hem çocuk ölürse orphan olur

c)

Parent erken ölür, çocuk çalışmaya devam ederse orphan olur

d)

Çocuk ölür, parent beklerse orphan olur

6.

Zombi proses hangi durumda ortaya çıkar?

a)

Çocuk ölür, parent wait() ile çıkış durumunu toplamaz

b)

Parent ölür, çocuk çalışmaya devam eder

c)

Proses sonsuz döngüye girer

d)

Proses hiç çalıştırılamaz

7.

Thread tanımı için en uygun ifade hangisidir?

a)

Donanım kesmesi

b)

Kütüphane fonksiyonu

c)

Proses içindeki en küçük yürütme birimi

d)

Bellekteki fonksiyon adresi

8.

Thread dökümanındaki restoran benzetmesinde, proses ve thread sırasıyla neye benzetilmiştir?

a)

Restoran – Müşteri

b)

Aşçı – Müşteri

c)

Restoran – Aşçı

d)

Mutfak – Masa

9.

Thread Oluşturma’da hem ana hem çocuk thread getpid() çağırdığında ne olur?

a)

PID rastgele değişir

b)

Thread’ler PID kullanmaz

c)

Aynı PID’yi görürler

d)

Farklı PID’ler görürler

10.

Process ve thread arasındaki temel fark nedir?

a)

Thread disk üzerinde kalır, process bellekte

b)

Process tek işlem yapar, thread yapamaz

c)

Thread’ler aynı adres alanını paylaşır, process’ler paylaşmaz

d)

Process hafiftir, thread ağırdır

11.

Aynı proses içindeki iki thread aşağıdakilerden hangisini paylaşır?

a)

Ayrı yığın (stack)

b)

Ayrı kod segmenti

c)

Aynı adres alanı ve veri bölgesi

d)

Ayrı adres alanı

12.

Aşağıdakilerden hangisi yeni bir proses oluşturur?

a)

pthread_create()

b)

exec()

c)

malloc()

d)

fork()

13.

Bir prosesin PID’si nedir?

a)

Prosesin benzersiz kimliğidir

b)

Dosyanın fiziksel adresidir

c)

Thread sayısıdır

d)

Bellekteki boyutudur

14.

PPID neyi gösterir?

a)

Prosesin önceliğini

b)

Prosesin sahip olduğu thread sayısını

c)

rosesin çalıştığı CPU’yu

d)

Prosesin ebeveyninin PID’sini

15.

Ebeveyn proses erken biter ama çocuk çalışmaya devam ederse ne oluşur?

a)

Zombie

b)

Orphan

c)

Locked process

d)

Kernel thread

16.

Bir thread oluşturmak için kullanılan fonksiyon hangisidir?

a)

pthread_create()

b)

fork()

c)

exec()

d)

signal()

17.

Bir thread’in bitmesini beklemek için kullanılan fonksiyon hangisidir?

a)

pthread_kill()

b)

pthread_exit()

c)

pthread_join()

d)

pthread_detach()

18.

Bir thread detach edildiğinde ne olur?

a)

Tamamen yok olur ve çalışmaz

b)

Diğer thread'lere bağımlı çalışır

c)

Daha yüksek öncelikli olur

d)

join edilemez, kendi kendini temizler

19.

Mutex’in temel amacı nedir?

a)

Thread’leri uyutmak

b)

İşlemciyi kilitlemek

c)

Bellek tahsis etmek

d)

Kritik bölgeye aynı anda sadece bir thread'in girmesini sağlamak

20.

Thread’lerin process’e göre daha hafif (lightweight) olmasının nedeni nedir?

a)

Kütüphane gerektirmemeleri

b)

Aynı adres alanını paylaşmaları

c)

Daha az RAM kullanmaları

d)

Daha hızlı yazılmaları

21.

int main() {

fork();

fork();

return 0;

}

kodda kaç tane proses oluşur?

a)

1

b)

3

c)

2

d)

4

22.

fork();

printf("Merhaba\n");

Kod kaç kez "Merhaba" yazar?

a)

1

b)

2

c)

3

d)

4

23.

Race condition hangi durumda oluşur?

a)

Aynı değişkene aynı anda erişildiğinde

b)

Thread sayısı 1 iken

c)

exec() çağrıldığında

d)

fork() kullanıldığında

24.

Bir çocuk (child) process’in bitmesini beklemek için hangi fonksiyon kullanılır?

a)

exit()

b)

fork()

c)

exec()

d)

wait()

25.

Zombie process hangi durumun sonucudur?

a)

Parent beklemezse

b)

Child hiç başlamazsa

c)

Parent exec çağırırsa

d)

Process CPU bulamazsa

26.

Orphan process ne zaman oluşur?

a)

Process bellek taşınca

b)

CPU dolu olduğunda

c)

Child erken bittiğinde

d)

Parent erken bittiğinde, child çalışmaya devam ederse

27.

Thread’lerde kritik bölgeleri korumak için kullanılan yapı hangisidir?

a)

sleep

b)

malloc

c)

mutex

d)

exit

28.

Aşağıdakilerden hangisi thread kullanımına bir örnektir?

a)

Dosyayı masaüstüne taşımak

b)

Bilgisayarı yeniden başlatmak

c)

Bir web tarayıcısının aynı anda hem sayfa yüklemesi hem de video oynatması

d)

RAM takmak

29.

Bir thread'in işi bittiğinde kaynaklarını otomatik olarak serbest bırakmasını ve ana thread'in onu beklemesine gerek kalmamasını sağlayan fonksiyon hangisidir?

a)

pthread_exit

b)

pthread_join

c)

pthread_detach

d)

pthread_self

30.

Ortak bir değişkene birden fazla thread'in aynı anda erişimi sonucu oluşan ve hatalı sonuçlara yol açan "Yarış Durumu" (Race Condition) sorununu çözmek için hangi senkronizasyon mekanizması kullanılır?

a)

sleep()

b)

Thread-Specific Data (TSD)

c)

pthread_create()

d)

Mutex (Karşılıklı Dışlama)