Bölüm 5: CPU Çizelgeleme

İşletim Sistemleri · Çalışma Soruları
Temel KavramlarAlgoritmaların ÖzellikleriGantt Şeması ve HesaplarRound Robin ve KuantumAçlık, Adalet ve Gerçek Zaman
Sercan KÜLCÜ · Giresun Üniversitesi

Giriş

Nasıl Çalışalım?

1 · Önce çözünHer slaytta bir soru var. Cevabı açmadan önce kâğıda kendi cevabınızı ve gerekçenizi yazın.
2 · Sonra açın“Cevabı göster” kutusu doğru seçeneği ve kısa bir açıklamayı verir. Yanlış seçeneklerin neden yanlış olduğunu da düşünün.
3 · Adım adım izleyinHesap ve kod sorularından sonra gelen “Adım Adım Çözüm” slaytında ‹ › düğmeleriyle çözümü ilerletin.

Kurallar (aksi belirtilmedikçe): süreler ms; bağlam değiştirme süresi 0; G/Ç yok; küçük öncelik sayısı = yüksek öncelik; eşitlikte önce gelen kazanır; RR’de aynı anda gelen yeni süreç, dilimi biten süreçten önce kuyruğa girer.

Soru 1 · Temel Kavramlar

Çizelgeleyici ve Dağıtıcı

Çoktan seçmeli

Kısa vadeli çizelgeleyici ile dağıtıcı (dispatcher) arasındaki iş bölümü için hangisi doğrudur?

  1. Dağıtıcı hazır kuyruğundaki süreçlerden hangisinin çalışacağına karar verir; çizelgeleyici yalnızca bağlamı kaydeder.
  2. Çizelgeleyici sıradaki süreci seçer; dağıtıcı seçilen sürecin bağlamını yükler, kullanıcı kipine geçirir ve kaldığı komuttan sürdürür.
  3. Dağıtıcı süreçlere bellek ayırır, çizelgeleyici ise G/Ç isteklerini sıraya koyar.
  4. İkisi de aynı bileşenin farklı adlarıdır; aralarında görev farkı yoktur.
  5. Dağıtıcı yalnızca çok çekirdekli sistemlerde bulunur ve süreçleri çekirdeklere dağıtır.
Cevabı göster

Doğru cevap: B) Çizelgeleyici sıradaki süreci seçer; dağıtıcı seçilen sürecin bağlamını yükler, kullanıcı kipine geçirir ve kaldığı komuttan sürdürür.

Karar (politika) çizelgeleyicinin, devir işlemi (mekanizma) dağıtıcının işidir. Dağıtıcının harcadığı süreye dağıtım gecikmesi denir; her bağlam değiştirmede ödenir.

Soru 2 · Temel Kavramlar

Hangisi Ölçüt Değil?

Çoktan seçmeli

Bir CPU çizelgeleme algoritmasını değerlendirirken aşağıdakilerden hangisi kullanılmaz?

  1. Birim zamanda tamamlanan süreç sayısı (verim)
  2. Hazır kuyruğunda geçen toplam süre (bekleme süresi)
  3. İlk yanıta kadar geçen süre (yanıt süresi)
  4. Sayfa tablosunun bellekte kapladığı alan
  5. CPU’nun boşta olmadığı zaman oranı (CPU kullanımı)
Cevabı göster

Doğru cevap: D) Sayfa tablosunun bellekte kapladığı alan

Çizelgeleme ölçütleri CPU kullanımı, verim, dönüş, bekleme ve yanıt süreleri ile adalettir. Sayfa tablosu boyutu bellek yönetiminin konusudur; çizelgeleme kararından etkilenmez.

Soru 3 · Temel Kavramlar

Kesmesizde Bağlam Değişimi

Doğru / Yanlış

Aşağıdaki ifade doğru mu, yanlış mı? Gerekçenizi yazın.

“Kesmesiz (non-preemptive) çizelgeleme kullanan bir sistemde bağlam değiştirme hiç gerçekleşmez.”

Cevabı göster

Yanlış. Kesmesiz çizelgelemede yalnızca çalışan süreç zorla CPU’dan alınmaz. Süreç bittiğinde ya da G/Ç için bloke olduğunda (çalışıyor → bekliyor) yine başka bir sürece geçilir; yani bağlam değiştirme olur, sadece daha seyrektir.

Soru 4 · Temel Kavramlar

Kesmeli ve Kesmesiz

Açık uçlu

Kesmeli (preemptive) ve kesmesiz çizelgelemeyi karşılaştırın. Her türe ikişer algoritma örneği verin ve öncelikli çizelgelemenin hangi türe girdiğini belirtin.

Cevabı göster
  • Kesmesiz: CPU’yu alan süreç bitene ya da kendi isteğiyle (G/Ç, bekleme) bırakana kadar çalışır. Örnek: FCFS, SJF (SJN).
  • Kesmeli: İS çalışan süreci zamanlayıcı kesmesiyle ya da daha uygun bir süreç hazır olunca keser. Örnek: RR, SRTF.
  • Öncelikli çizelgeleme her iki türde de gerçeklenebilir. SJF’nin kesmeli sürümü SRTF’dir; SJF’nin kendisi kesmesizdir.
  • Kesmeli çizelgeleme yanıt süresini iyileştirir ama bağlam değiştirme yükü ve paylaşılan veride yarış riski getirir.

Soru 5 · Temel Kavramlar

Kesme Ne Zaman Olur?

Çoktan seçmeli

Kesmeli öncelik çizelgelemesi kullanılıyor (küçük sayı = yüksek öncelik). Öncelik değeri 3 olan P2 çalışırken aşağıdaki olaylardan hangisi P2’nin hemen CPU’dan alınmasına yol açar?

  1. Öncelik değeri 5 olan yeni bir P7 süreci oluşturulur.
  2. Öncelik değeri 3 olan P5, G/Ç’sini bitirip hazır kuyruğuna döner.
  3. Öncelik değeri 1 olan P4, disk okumasını tamamlayıp hazır duruma geçer.
  4. P2 yerel bir değişkenin değerini okur.
  5. Hazır kuyruğu boşalır.
Cevabı göster

Doğru cevap: C) Öncelik değeri 1 olan P4, disk okumasını tamamlayıp hazır duruma geçer.

Kesmeli öncelikte hazır duruma geçen süreç çalışandan daha yüksek öncelikliyse çalışan kesilir. Eşit öncelik (3) genellikle kesmeye yol açmaz; düşük öncelikli süreç ise yalnızca kuyruğa girer.

Soru 6 · Temel Kavramlar

Karar Noktaları

Açık uçlu

Bir çizelgeleme kararı hangi dört durumda gerekir? Hangileri yalnızca kesmeli çizelgelemede ortaya çıkar?

Cevabı göster
  1. Süreç çalışıyor → bekliyor (G/Ç isteği, wait()).
  2. Süreç çalışıyor → hazır (zamanlayıcı kesmesi).
  3. Süreç bekliyor → hazır (G/Ç tamamlandı).
  4. Süreç sonlanır.

1 ve 4’te seçim zorunludur ve kesmesiz çizelgeleme yalnızca bunları kullanır. 2 ve 3’te çalışan süreci değiştirme kararı ancak kesmeli çizelgelemede verilir.

Soru 7 · Algoritmaların Özellikleri

Uzun İşin Arkasındaki Kuyruk

Çoktan seçmeli

Hazır kuyruğunun başında 200 ms’lik CPU yoğun bir iş, arkasında ise her biri 1 ms CPU kullanıp G/Ç’ye giden onlarca kısa iş var. Kısa işler uzun işin bitmesini beklerken diskler boşta kalıyor. Bu tablo en çok hangi algoritmaya özgüdür?

  1. Kuantumu 4 ms olan RR
  2. FCFS
  3. SRTF
  4. MLFQ
  5. EDF
Cevabı göster

Doğru cevap: B) FCFS

Bu, konvoy etkisidir: FCFS kesmesiz ve geliş sırasına bağlı olduğundan kısa işler uzun işin arkasında birikir; hem ortalama bekleme artar hem G/Ç aygıtları boşa kalır. RR ve SRTF uzun işi keserek bu etkiyi önler.

Soru 8 · Algoritmaların Özellikleri

Kim Aç Kalabilir?

Çoktan seçmeli

Yaşlanma (aging) gibi bir önlem eklenmezse, sürekli yeni işler gelen bir sistemde bir sürecin hiç CPU alamaması hangi algoritmalarda mümkündür?

  1. Yalnızca FCFS’de
  2. Yalnızca RR’de
  3. Statik öncelikli çizelgelemede ve SJF/SRTF’de
  4. FCFS ve RR’de
  5. Hiçbirinde; tüm algoritmalar sonunda herkese CPU verir
Cevabı göster

Doğru cevap: C) Statik öncelikli çizelgelemede ve SJF/SRTF’de

Öncelik çizelgelemesinde düşük öncelikli süreç, SJF/SRTF’de ise uzun iş, sürekli daha “iyi” adaylar geldikçe süresiz bekleyebilir (açlık). FCFS ve RR’de her süreç sınırlı süre sonra sırasını alır.

Soru 9 · Algoritmaların Özellikleri

Sınırlı Bekleme Garantisi

Çoktan seçmeli

Hazır kuyruğunda n süreç varken, her sürecin en geç (n − 1)·q zaman birimi içinde yeniden CPU alacağını garanti eden algoritma hangisidir? (q: zaman dilimi)

  1. SJF
  2. Kesmesiz öncelik
  3. Round Robin
  4. SRTF
  5. FCFS
Cevabı göster

Doğru cevap: C) Round Robin

RR her sürece sırayla en fazla q kadar süre verir; kuyruktaki diğer n − 1 sürecin her biri en çok q kullanacağından bekleme üstten sınırlıdır. CPU zamanını süreçler arasında eşit paylaştırmayı amaçlayan algoritma budur.

Soru 10 · Algoritmaların Özellikleri

En Küçük Ortalama Bekleme

Çoktan seçmeli

Tüm işler t = 0’da hazır, CPU süreleri tam olarak biliniyor ve bir iş başladıktan sonra kesilemiyor. Ortalama bekleme süresini en küçük yapan algoritma hangisidir?

  1. FCFS
  2. SJF (en kısa iş önce)
  3. Kuantumu 1 olan RR
  4. En uzun iş önce
  5. Rastgele seçim
Cevabı göster

Doğru cevap: B) SJF (en kısa iş önce)

Kısa işi uzundan önce çalıştırmak, kısa işin bekleme azalmasını uzun işin bekleme artışından fazla yapar; bu yüzden aynı anda hazır işler için SJF kanıtlanmış en iyi (optimal) kesmesiz politikadır.

Soru 11 · Algoritmaların Özellikleri

SJF Her Zaman Optimal mi?

Doğru / Yanlış

Aşağıdaki ifade doğru mu, yanlış mı? Gerekçenizi yazın.

“SJF, varış zamanları farklı olsa bile her süreç kümesi için en küçük ortalama bekleme süresini verir.”

Cevabı göster

Yanlış. SJF’nin en iyiliği yalnızca işler aynı anda hazırken ve kesme yokken geçerlidir. Varışlar farklıysa uzun bir iş başladıktan sonra gelen kısa iş bekler; kesmeli sürüm SRTF daha küçük ortalama verebilir (bu destedeki Gantt sorularının kümesinde SJF 4,5 ms, SRTF 3,5 ms verir).

Soru 12 · Algoritmaların Özellikleri

SJF’nin Pratik Sorunu

Çoktan seçmeli

SJF’nin genel amaçlı bir İS’de olduğu gibi uygulanamamasının temel nedeni nedir?

  1. Bağlam değiştirme sayısını çok artırması
  2. Bir sonraki CPU patlamasının süresinin önceden bilinmemesi
  3. Kısa işleri sürekli aç bırakması
  4. Yalnızca çok çekirdekli işlemcilerde çalışabilmesi
  5. Hazır kuyruğunun FIFO tutulmasını gerektirmesi
Cevabı göster

Doğru cevap: B) Bir sonraki CPU patlamasının süresinin önceden bilinmemesi

Algoritma her sürecin bir sonraki CPU patlama süresine ihtiyaç duyar; bu bilinemez, ancak geçmiş patlamalardan üstel ortalama ile tahmin edilir. Ayrıca uzun işler açlık riski taşır.

Soru 13 · Algoritmaların Özellikleri

Üstel Ortalama

Hesaplama

Patlama tahmini τn+1 = α·tn + (1 − α)·τn ile yapılıyor; α = 0,5 ve ilk tahmin τ0 = 12 ms. Ölçülen ilk üç patlama sırasıyla 8, 6 ve 10 ms’dir. τ3 kaçtır?

  1. 8 ms
  2. 9 ms
  3. 10 ms
  4. 11 ms
  5. 12 ms
Cevabı göster

Doğru cevap: B) 9 ms

τ1 = 0,5·8 + 0,5·12 = 10; τ2 = 0,5·6 + 0,5·10 = 8; τ3 = 0,5·10 + 0,5·8 = 9 ms. α büyüdükçe tahmin son ölçüme, küçüldükçe geçmişe daha çok ağırlık verir.

Soru 14 · Algoritmaların Özellikleri

Teslim Zamanına Göre

Çoktan seçmeli

Gerçek zamanlı bir sistemde her an, son teslim zamanı (deadline) en yakın olan hazır görevi çalıştıran ve bu yüzden öncelikleri çalışma sırasında değişen algoritma hangisidir?

  1. Hız monoton (RM)
  2. EDF (en erken son teslim önce)
  3. FCFS
  4. SJF
  5. Çok düzeyli kuyruk (MLQ)
Cevabı göster

Doğru cevap: B) EDF (en erken son teslim önce)

EDF dinamik önceliklidir: öncelik o anki son teslim zamanından gelir. RM ise önceliği periyoda göre sabit atar (kısa periyot = yüksek öncelik).

Soru 15 · Algoritmaların Özellikleri

Hangisi Çizelgeleme Algoritması Değil?

Çoktan seçmeli

Aşağıdakilerden hangisi bir CPU çizelgeleme algoritması değildir?

  1. Piyango (lottery) çizelgeleme
  2. Stride çizelgeleme
  3. Çok düzeyli geri beslemeli kuyruk (MLFQ)
  4. En seyrek kullanılan sayfayı değiştirme (LFU)
  5. Hız monoton (RM) çizelgeleme
Cevabı göster

Doğru cevap: D) En seyrek kullanılan sayfayı değiştirme (LFU)

LFU bir sayfa değiştirme politikasıdır (Bölüm 9): bellekten hangi sayfanın atılacağını seçer. Diğerleri CPU’yu hangi sürecin kullanacağını belirler.

Soru 16 · Algoritmaların Özellikleri

MLFQ’nun Kararı

Çoktan seçmeli

MLFQ çizelgeleyicisinde bir iş, bulunduğu kuyruğun zaman payını her seferinde sonuna kadar kullanıyor. Çizelgeleyici bu işi ne yapar?

  1. En üst öncelikli kuyruğa taşır.
  2. Sonlandırır.
  3. Bir alt (daha düşük öncelikli, daha uzun kuantumlu) kuyruğa indirir.
  4. Aynı kuyrukta bırakıp kuantumunu yarıya indirir.
  5. G/Ç bekleme kuyruğuna gönderir.
Cevabı göster

Doğru cevap: C) Bir alt (daha düşük öncelikli, daha uzun kuantumlu) kuyruğa indirir.

MLFQ geçmiş davranıştan öğrenir: payını tüketen iş CPU yoğun sayılıp aşağı iner; payını bitirmeden CPU’yu bırakan etkileşimli iş üstte kalır. Açlığa karşı belirli aralıklarla tüm işler en üste yükseltilir (öncelik yükseltme).

Soru 17 · Gantt Şeması ve Hesaplar

FCFS ve SJF

Hesaplama

P1 (geliş 0, CPU 6), P2 (geliş 1, CPU 3), P3 (geliş 2, CPU 8), P4 (geliş 4, CPU 2). FCFS ve kesmesiz SJF için ortalama bekleme süresini hesaplayın. Hangisi daha iyidir?

Cevabı göster
SüreçFCFS bitişFCFS beklemeSJF bitişSJF bekleme
P16060
P295117
P3177199
P4191382

FCFS: (0 + 5 + 7 + 13) / 4 = 6,25 ms; SJF: (0 + 7 + 9 + 2) / 4 = 4,5 ms. SJF, t = 6’da kısa P4’ü öne aldığı için daha iyidir. Bekleme = dönüş − CPU süresi = bitiş − geliş − CPU.

Soru 17 · Çözüm

Adım Adım Çözüm

FCFS ve SJF aynı kümede. Bekleme = bitiş − geliş − CPU süresi.

P1P2P3P4P1P2P3P40691719FCFS: P1 0–6, P2 6–9, P3 9–17, P4 17–19

FCFS geliş sırasını izler: P1, P2, P3, P4. Bekleme: P1 0, P2 6 − 1 = 5, P3 9 − 2 = 7, P4 17 − 4 = 13 → ortalama 6,25 ms.

P1P2P3P4P10619CPU: P4 · 2Hazır:P2 · 3P3 · 8

SJF: t = 0’da yalnız P1 var, kesilmeden 6 ms çalışır. t = 6’da üç aday var; en kısa CPU süresi P4’te (2).

P1P2P3P4P1P406819CPU: P2 · 3Hazır:P3 · 8

t = 8: P4 bitti. Kalan adaylardan P2 (3) P3’ten (8) kısadır.

P1P2P3P4P1P4P2P30681119SJF: P1 0–6, P4 6–8, P2 8–11, P3 11–19

Bekleme: P1 0, P2 8 − 1 = 7, P3 11 − 2 = 9, P4 6 − 4 = 2 → ortalama 4,5 ms. Toplam bitiş zamanı (19) değişmez; değişen sıradır.

Soru 18 · Gantt Şeması ve Hesaplar

SRTF

Hesaplama

Aynı küme: P1 (geliş 0, CPU 6), P2 (geliş 1, CPU 3), P3 (geliş 2, CPU 8), P4 (geliş 4, CPU 2). SRTF (en kısa kalan süre önce) için Gantt şemasını çizin; ortalama dönüş ve bekleme sürelerini bulun.

Cevabı göster

Gantt: P1 0–1, P2 1–4, P4 4–6, P1 6–11, P3 11–19.

SüreçBitişDönüşBekleme
P111115
P2430
P319179
P4620

Ortalama dönüş 33 / 4 = 8,25 ms, ortalama bekleme 14 / 4 = 3,5 ms; 4 bağlam değiştirme.

Soru 18 · Çözüm

Adım Adım Çözüm

SRTF: her varışta ve her bitişte kalan süresi en küçük süreç seçilir; gerekirse çalışan kesilir.

P1P2P3P4P10119CPU: P2 · kalan 3Hazır:P1 · 5

t = 0–1: yalnız P1 çalışır. t = 1’de P2 gelir; kalan süresi (3) P1’in kalanından (5) küçük → P1 kesilir.

P1P2P3P4P1P201219CPU: P2 · kalan 2Hazır:P1 · 5P3 · 8

t = 2: P3 gelir ama 8 ms ister; çalışan P2’nin kalanı 2 olduğundan devam eder.

P1P2P3P4P1P201419CPU: P4 · kalan 2Hazır:P1 · 5P3 · 8

t = 4: P2 biter ve aynı anda P4 gelir. En küçük kalan süre P4’te (2).

P1P2P3P4P1P2P4014619CPU: P1 · kalan 5Hazır:P3 · 8

t = 6: P4 bitti. P1 kalan 5 ile P3’ten (8) önce gelir; 11’de biter, ardından P3 11–19 çalışır.

P1P2P3P4P1P2P4P1P301461119Bekleme: P1 5, P2 0, P3 9, P4 0 → ortalama 3,5 ms

Dönüş = bitiş − geliş: P1 11, P2 3, P3 17, P4 2 → ortalama 8,25 ms. Bekleme = dönüş − CPU süresi.

Soru 19 · Gantt Şeması ve Hesaplar

RR, q = 2

Hesaplama

Aynı küme: P1 (geliş 0, CPU 6), P2 (geliş 1, CPU 3), P3 (geliş 2, CPU 8), P4 (geliş 4, CPU 2). Round Robin (q = 2) için Gantt şemasını çizin; ortalama bekleme ve ortalama yanıt sürelerini bulun.

Cevabı göster
SüreçBitişDönüşBeklemeYanıt
P1151590
P2111071
P3191792
P410644

Ortalama bekleme 29 / 4 = 7,25 ms, ortalama yanıt 7 / 4 = 1,75 ms. SRTF’ye göre bekleme kötü, yanıt çok iyidir; 8 bağlam değiştirme yapılır.

Soru 19 · Çözüm

Adım Adım Çözüm

Her dilim sonunda: önce o ana kadar gelenler kuyruğa girer, sonra dilimi biten süreç kuyruğun sonuna eklenir.

P1P2P3P4P10219CPU: P2 · kalan 3Hazır:P3 · 8P1 · 4

t = 0–2: P1 çalışır. Bu arada P2 (t = 1) ve P3 (t = 2) geldi; P1 kuyruğun sonuna döner.

P1P2P3P4P1P202419CPU: P3 · kalan 8Hazır:P1 · 4P4 · 2P2 · 1

t = 2–4: P2 çalışır (kalan 1). t = 4’te gelen P4, dilimi biten P2’den önce kuyruğa girer.

P1P2P3P4P1P2P3P1P4024681019CPU: P2 · kalan 1Hazır:P3 · 6P1 · 2

t = 4–6 P3, 6–8 P1, 8–10 P4. P4 iki birimini bitirip t = 10’da çıkar.

P1P2P3P4P1P2P3P1P4P2P3P1024681011131519CPU: P3 · kalan 4Hazır:(boş)

t = 10–11: P2’nin son birimi. 11–13 P3, 13–15 P1 (bitti). Geriye yalnız P3 kalır.

P1P2P3P4P1P2P3P1P4P2P3P1P3024681011131519Bekleme: P1 9, P2 7, P3 9, P4 4 → ortalama 7,25 ms

P3 15–19 arasında tek başına çalışır. Yanıt = ilk çalışma − geliş: P1 0, P2 1, P3 2, P4 4 → ortalama 1,75 ms.

Soru 20 · Gantt Şeması ve Hesaplar

Kesmeli Öncelik

Hesaplama

P1 (geliş 0, CPU 5, öncelik 3), P2 (2, 4, 1), P3 (3, 2, 4), P4 (5, 3, 2), P5 (6, 1, 5). Kesmeli öncelik çizelgelemesiyle Gantt şemasını çizin; ortalama bekleme ve dönüş sürelerini bulun.

Cevabı göster
SüreçBitişDönüşBekleme
P112127
P2640
P314119
P4941
P51598

Ortalama bekleme 25 / 5 = 5 ms, dönüş 40 / 5 = 8 ms. (Kesmesiz öncelikte ortalama bekleme 4,8 ms çıkar: kesme her zaman ortalamayı iyileştirmez, ama yüksek öncelikli P2’yi hemen çalıştırır.)

Soru 20 · Çözüm

Adım Adım Çözüm

Kesmeli öncelik: yeni gelen, çalışandan yüksek öncelikliyse (küçük sayı) onu keser.

P1P2P3P4P5P10215CPU: P2 (ö1) · 4Hazır:P1 ö3 · 3

t = 0–2: yalnız P1 var. t = 2’de gelen P2’nin önceliği daha yüksek → P1 kesilir (kalan 3).

P1P2P3P4P5P1P202615CPU: P4 (ö2) · 3Hazır:P1 ö3 · 3P3 ö4 · 2P5 ö5 · 1

t = 3’te P3, t = 5’te P4 gelir ama P2’yi kesemez. P2 t = 6’da biter; en yüksek öncelikli hazır süreç P4.

P1P2P3P4P5P1P2P4026915CPU: P1 (ö3) · 3Hazır:P3 ö4 · 2P5 ö5 · 1

t = 6–9: P4 çalışır. Ardından sıra öncelik değerine göre: P1, P3, P5.

P1P2P3P4P5P1P2P4P1P3P50269121415Bekleme: P1 7, P2 0, P3 9, P4 1, P5 8 → ortalama 5 ms

P1 9–12, P3 12–14, P5 14–15. Dönüş: 12, 4, 11, 4, 9 → ortalama 8 ms.

Soru 21 · Round Robin ve Kuantum

Çok Küçük Kuantum

Hesaplama

Bir sistemde RR kuantumu 100 ms’den 0,5 ms’ye düşürülüyor. Her bağlam değiştirme 0,1 ms sürüyor ve süreçler dilimlerini hep sonuna kadar kullanıyor. Yeni durumda CPU zamanının yaklaşık ne kadarı bağlam değiştirmeye gider?

  1. %0,1
  2. %1,6
  3. %16,7
  4. %50
  5. %83,3
Cevabı göster

Doğru cevap: C) %16,7

Her döngüde 0,5 ms yararlı iş + 0,1 ms değiştirme: 0,1 / 0,6 ≈ %16,7 boşa gider (100 ms’de yalnızca 0,1 / 100,1 ≈ %0,1 idi). Kuantum çok küçülünce yanıt hızlanır ama bağlam değiştirme yükü artar, verim düşer; aşırı durumda sistem işten çok değiştirme yapar.

Soru 22 · Round Robin ve Kuantum

Çok Büyük Kuantum

Açık uçlu

RR’de kuantum, süreçlerin CPU patlamalarının hemen hepsinden büyük seçilirse ne olur? Kuantum seçimi için pratik kural nedir?

Cevabı göster
  • Her süreç patlamasını tek dilimde bitirir; zamanlayıcı kesmesi neredeyse hiç kesmez. RR fiilen FCFS’e dönüşür ve konvoy etkisi geri gelir.
  • Etkileşimli süreçlerin yanıt süresi kötüleşir; kısa işler uzunların arkasında bekler.
  • Kural: kuantum, bağlam değiştirme süresinden çok büyük olmalı ve CPU patlamalarının yaklaşık %80’i bir kuantumdan kısa olmalıdır (tipik değerler 10–100 ms).

Soru 23 · Round Robin ve Kuantum

Kuantum Küçüldükçe Dönüş

Doğru / Yanlış

Aşağıdaki ifade doğru mu, yanlış mı? Gerekçenizi yazın.

“RR’de kuantum küçültüldükçe ortalama dönüş süresi her zaman azalır.”

Cevabı göster

Yanlış. Karşı örnek: t = 0’da gelen ve her biri 10 ms isteyen A, B, C. q = 10’da bitişler 10, 20, 30 → ortalama dönüş 20 ms; q = 1’de işler dönüşümlü çalışıp 28, 29, 30’da biter → 29 ms. Küçük kuantum yanıtı iyileştirir; dönüş süresi ise kuantumla düzenli biçimde değişmez.

Soru 24 · Round Robin ve Kuantum

Yanıt ve Dönüş

Hesaplama

A, B, C, D t = 0’da sırayla geliyor ve her biri 4 ms CPU istiyor. q = 1 ile RR ve FCFS için ortalama yanıt süresini (ilk çalışma − geliş) ve ortalama dönüş süresini karşılaştırın.

Cevabı göster
  • FCFS: bitişler 4, 8, 12, 16 → dönüş (4 + 8 + 12 + 16) / 4 = 10 ms; yanıt (0 + 4 + 8 + 12) / 4 = 6 ms.
  • RR q = 1: bitişler 13, 14, 15, 16 → dönüş 14,5 ms; yanıt (0 + 1 + 2 + 3) / 4 = 1,5 ms.

Eşit uzunluktaki işlerde RR yanıtta en iyi, dönüşte en kötü seçeneklerdendir.

Soru 25 · Açlık, Adalet ve Gerçek Zaman

Yaşlanma Hesabı

Hesaplama

Öncelikler 0 (en yüksek) ile 63 (en düşük) arasında. Yaşlanma uygulanıyor: hazır kuyruğunda bekleyen her sürecin öncelik değeri her 10 saniyede 1 azaltılıyor. Önceliği 63 olan bir süreç, hiç çalışmasa bile en geç ne kadar sürede en yüksek önceliğe ulaşır?

  1. 63 saniye
  2. 6,3 dakika
  3. 10,5 dakika
  4. 63 dakika
  5. Hiçbir zaman; öncelik sabittir
Cevabı göster

Doğru cevap: C) 10,5 dakika

63 adım × 10 s = 630 s = 10,5 dakika. Yaşlanma, düşük öncelikli sürecin önceliğini zamanla yükselterek açlığa sonlu bir üst sınır koyar.

Soru 26 · Açlık, Adalet ve Gerçek Zaman

Piyango Çizelgeleme

Hesaplama

Piyango çizelgelemesinde A’nın 50, B’nin 30, C’nin 20 bileti var. Her kuantumda bir bilet rastgele çekiliyor. 200 kuantum sonra B’nin yaklaşık kaç kuantum çalışması beklenir? C’ye 20 bilet daha verilirse C’nin beklenen CPU payı ne olur?

  1. 50 kuantum; %20
  2. 60 kuantum; %33
  3. 60 kuantum; %40
  4. 66 kuantum; %33
  5. 30 kuantum; %25
Cevabı göster

Doğru cevap: B) 60 kuantum; %33

B’nin olasılığı 30 / 100 = 0,3 → 200 × 0,3 ≈ 60 kuantum. C 40 bilete çıkınca toplam 120 olur: C’nin payı 40 / 120 ≈ %33. Pay bilet oranıyla orantılıdır; kısa sürelerde şans nedeniyle sapma görülür.

Soru 27 · Açlık, Adalet ve Gerçek Zaman

RM Kullanım Sınırı

Hesaplama

Üç periyodik görev: T1 (C = 1, T = 4), T2 (C = 2, T = 6), T3 (C = 1, T = 8); son teslim periyot sonu. Toplam kullanım U kaçtır ve RM ile çizelgelenebilirlik garanti edilir mi? (n = 3 için Liu–Layland sınırı ≈ 0,780)

  1. U ≈ 0,58; garanti edilir
  2. U ≈ 0,708; garanti edilir
  3. U ≈ 0,708; garanti edilmez
  4. U ≈ 0,83; garanti edilmez
  5. U ≈ 1,08; hiçbir algoritma çizelgeleyemez
Cevabı göster

Doğru cevap: B) U ≈ 0,708; garanti edilir

U = 1/4 + 2/6 + 1/8 = 17/24 ≈ 0,708 ≤ 0,780 → RM ile tüm son teslimler garanti karşılanır. U sınırı aşsaydı RM için kesin hüküm verilemezdi (ayrıca sınanmalıydı); EDF’de ise U ≤ 1 yeterlidir.

Soru 28 · Açlık, Adalet ve Gerçek Zaman

Ortama Göre Hedefler

Açık uçlu

İyi bir çizelgeleyiciden beklenen özellikler nelerdir? Toplu iş, etkileşimli ve gerçek zamanlı sistemlerde öne çıkan hedefleri birer cümleyle yazın.

Cevabı göster
  • Tüm sistemler: adalet (benzer süreçlere benzer pay), politikanın tutarlı uygulanması, CPU ve G/Ç aygıtlarını meşgul tutma (denge), düşük ek yük.
  • Toplu iş: yüksek verim, kısa dönüş süresi, yüksek CPU kullanımı.
  • Etkileşimli: kısa yanıt süresi, kullanıcı beklentisiyle orantılılık.
  • Gerçek zamanlı: son teslim zamanlarını kaçırmamak, öngörülebilirlik (ör. çoklu ortamda kalite kaybını önlemek).

Soru 29 · Açlık, Adalet ve Gerçek Zaman

Üç Algoritma Tablosu

Açık uçlu

FCFS, SRTF ve RR algoritmalarını seçim kuralı, kesmeli mi ve temel zaafı başlıklarıyla bir tabloda karşılaştırın.

Cevabı göster
AlgoritmaSeçim kuralıKesmeli?Temel zaaf
FCFSKuyruğa ilk girenHayırKonvoy etkisi, uzun ortalama bekleme
SRTFKalan CPU süresi en kısa olanEvetSüre tahmini gerekir; uzun işlerde açlık
RRSırayla, her birine en çok qEvetq’ya duyarlı: küçükse yük, büyükse FCFS gibi

Özet

Özet: Sık Yapılan Hatalar

  • SJF’yi kesmeli sanmak: SJF (SJN) kesmesizdir; kesmeli sürümü SRTF’dir. Öncelikli çizelgeleme ise iki türde de olabilir.
  • Bekleme süresini “ilk çalışmaya kadar geçen süre” sanmak: o yanıt süresidir. Bekleme = bitiş − geliş − CPU süresi (kesilen süreçte tüm bekleme parçaları toplanır).
  • RR’de t anında gelen süreç ile dilimi biten süreci kuyruğa yanlış sırada koymak; kuralı soruda okuyun (burada yeni gelen önce girer).
  • Kuantum küçüldükçe her şeyin iyileştiğini düşünmek: yanıt iyileşir, bağlam değiştirme yükü artar, dönüş süresi kötüleşebilir.
  • Açlığı kilitlenmeyle karıştırmak: açlıkta sistem ilerler, yalnızca bir süreç süresiz bekler; çözüm yaşlanmadır.
  • Liu–Layland sınırını aşan kümeyi “çizelgelenemez” saymak: sınır yeterli koşuldur, gerekli değildir.

Son

Bölüm 5: CPU Çizelgeleme
Sonraki: Bölüm 6 Çalışma Soruları
1 / 1