Bölüm 5: CPU Çizelgeleme
Giriş
Nasıl Çalışalım?
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ı
Kısa vadeli çizelgeleyici ile dağıtıcı (dispatcher) arasındaki iş bölümü için hangisi doğrudur?
- Dağıtıcı hazır kuyruğundaki süreçlerden hangisinin çalışacağına karar verir; çizelgeleyici yalnızca bağlamı kaydeder.
- Ç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.
- Dağıtıcı süreçlere bellek ayırır, çizelgeleyici ise G/Ç isteklerini sıraya koyar.
- İkisi de aynı bileşenin farklı adlarıdır; aralarında görev farkı yoktur.
- 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?
Bir CPU çizelgeleme algoritmasını değerlendirirken aşağıdakilerden hangisi kullanılmaz?
- Birim zamanda tamamlanan süreç sayısı (verim)
- Hazır kuyruğunda geçen toplam süre (bekleme süresi)
- İlk yanıta kadar geçen süre (yanıt süresi)
- Sayfa tablosunun bellekte kapladığı alan
- 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
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
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?
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?
- Öncelik değeri 5 olan yeni bir P7 süreci oluşturulur.
- Öncelik değeri 3 olan P5, G/Ç’sini bitirip hazır kuyruğuna döner.
- Öncelik değeri 1 olan P4, disk okumasını tamamlayıp hazır duruma geçer.
- P2 yerel bir değişkenin değerini okur.
- 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ı
Bir çizelgeleme kararı hangi dört durumda gerekir? Hangileri yalnızca kesmeli çizelgelemede ortaya çıkar?
Cevabı göster
- Süreç çalışıyor → bekliyor (G/Ç isteği,
wait()). - Süreç çalışıyor → hazır (zamanlayıcı kesmesi).
- Süreç bekliyor → hazır (G/Ç tamamlandı).
- 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
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?
- Kuantumu 4 ms olan RR
- FCFS
- SRTF
- MLFQ
- 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?
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?
- Yalnızca FCFS’de
- Yalnızca RR’de
- Statik öncelikli çizelgelemede ve SJF/SRTF’de
- FCFS ve RR’de
- 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
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)
- SJF
- Kesmesiz öncelik
- Round Robin
- SRTF
- 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
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?
- FCFS
- SJF (en kısa iş önce)
- Kuantumu 1 olan RR
- En uzun iş önce
- 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?
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
SJF’nin genel amaçlı bir İS’de olduğu gibi uygulanamamasının temel nedeni nedir?
- Bağlam değiştirme sayısını çok artırması
- Bir sonraki CPU patlamasının süresinin önceden bilinmemesi
- Kısa işleri sürekli aç bırakması
- Yalnızca çok çekirdekli işlemcilerde çalışabilmesi
- 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
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?
- 8 ms
- 9 ms
- 10 ms
- 11 ms
- 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
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?
- Hız monoton (RM)
- EDF (en erken son teslim önce)
- FCFS
- SJF
- Ç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?
Aşağıdakilerden hangisi bir CPU çizelgeleme algoritması değildir?
- Piyango (lottery) çizelgeleme
- Stride çizelgeleme
- Çok düzeyli geri beslemeli kuyruk (MLFQ)
- En seyrek kullanılan sayfayı değiştirme (LFU)
- 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ı
MLFQ çizelgeleyicisinde bir iş, bulunduğu kuyruğun zaman payını her seferinde sonuna kadar kullanıyor. Çizelgeleyici bu işi ne yapar?
- En üst öncelikli kuyruğa taşır.
- Sonlandırır.
- Bir alt (daha düşük öncelikli, daha uzun kuantumlu) kuyruğa indirir.
- Aynı kuyrukta bırakıp kuantumunu yarıya indirir.
- 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
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 bekleme | SJF bitiş | SJF bekleme |
|---|---|---|---|---|
| P1 | 6 | 0 | 6 | 0 |
| P2 | 9 | 5 | 11 | 7 |
| P3 | 17 | 7 | 19 | 9 |
| P4 | 19 | 13 | 8 | 2 |
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.
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.
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).
t = 8: P4 bitti. Kalan adaylardan P2 (3) P3’ten (8) kısadır.
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
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 |
|---|---|---|---|
| P1 | 11 | 11 | 5 |
| P2 | 4 | 3 | 0 |
| P3 | 19 | 17 | 9 |
| P4 | 6 | 2 | 0 |
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.
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.
t = 2: P3 gelir ama 8 ms ister; çalışan P2’nin kalanı 2 olduğundan devam eder.
t = 4: P2 biter ve aynı anda P4 gelir. En küçük kalan süre P4’te (2).
t = 6: P4 bitti. P1 kalan 5 ile P3’ten (8) önce gelir; 11’de biter, ardından P3 11–19 çalışır.
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
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üş | Bekleme | Yanıt |
|---|---|---|---|---|
| P1 | 15 | 15 | 9 | 0 |
| P2 | 11 | 10 | 7 | 1 |
| P3 | 19 | 17 | 9 | 2 |
| P4 | 10 | 6 | 4 | 4 |
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.
t = 0–2: P1 çalışır. Bu arada P2 (t = 1) ve P3 (t = 2) geldi; P1 kuyruğun sonuna döner.
t = 2–4: P2 çalışır (kalan 1). t = 4’te gelen P4, dilimi biten P2’den önce kuyruğa girer.
t = 4–6 P3, 6–8 P1, 8–10 P4. P4 iki birimini bitirip t = 10’da çıkar.
t = 10–11: P2’nin son birimi. 11–13 P3, 13–15 P1 (bitti). Geriye yalnız P3 kalır.
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
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 |
|---|---|---|---|
| P1 | 12 | 12 | 7 |
| P2 | 6 | 4 | 0 |
| P3 | 14 | 11 | 9 |
| P4 | 9 | 4 | 1 |
| P5 | 15 | 9 | 8 |
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.
t = 0–2: yalnız P1 var. t = 2’de gelen P2’nin önceliği daha yüksek → P1 kesilir (kalan 3).
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.
t = 6–9: P4 çalışır. Ardından sıra öncelik değerine göre: P1, P3, P5.
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
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?
- %0,1
- %1,6
- %16,7
- %50
- %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
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üş
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üş
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ı
Ö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?
- 63 saniye
- 6,3 dakika
- 10,5 dakika
- 63 dakika
- 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
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?
- 50 kuantum; %20
- 60 kuantum; %33
- 60 kuantum; %40
- 66 kuantum; %33
- 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ı
Üç 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)
- U ≈ 0,58; garanti edilir
- U ≈ 0,708; garanti edilir
- U ≈ 0,708; garanti edilmez
- U ≈ 0,83; garanti edilmez
- 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
İ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
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
| Algoritma | Seçim kuralı | Kesmeli? | Temel zaaf |
|---|---|---|---|
| FCFS | Kuyruğa ilk giren | Hayır | Konvoy etkisi, uzun ortalama bekleme |
| SRTF | Kalan CPU süresi en kısa olan | Evet | Süre tahmini gerekir; uzun işlerde açlık |
| RR | Sırayla, her birine en çok q | Evet | q’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.