Önleyici ve Önleyici Olmayan Planlama: Temel Farklılıklar

İçindekiler:

Anonim

Önleyici Planlama nedir?

Önleyici Çizelgeleme, görevlerin çoğunlukla öncelikleriyle atandığı bir çizelgeleme yöntemidir. Bazen, düşük öncelikli görev hala çalışıyor olsa bile, daha düşük öncelikli bir görevden önce daha yüksek önceliğe sahip bir görevi çalıştırmak önemlidir.

O sırada, düşük öncelikli görev bir süre tutulur ve daha yüksek öncelikli görev yürütmeyi bitirdiğinde kaldığı yerden devam eder.

Bu İşletim sistemi eğitiminde şunları öğreneceksiniz:

  • Önleyici Planlama nedir?
  • Önleyici Olmayan Planlama nedir?
  • İşletim Sisteminde Önlemli ve Önleyici Olmayan Planlama Arasındaki Fark
  • Önleyici Planlamanın Avantajları
  • Önleme Amaçlı Olmayan Planlamanın Avantajları
  • Önleyici Planlamanın Dezavantajları
  • Preemptif Olmayan Planlamanın Dezavantajları
  • Önleme Amaçlı Olmayan Planlama Örneği
  • Önleyici Planlama Örneği

Önleyici Olmayan Planlama nedir?

Bu tür planlama yönteminde, CPU belirli bir sürece tahsis edilmiştir. CPU'yu meşgul tutan süreç ya bağlamı değiştirerek ya da sonlandırarak CPU'yu serbest bırakacaktır.

Çeşitli donanım platformları için kullanılabilen tek yöntemdir. Bunun nedeni, önleyici Planlama gibi özel donanıma (örneğin, bir zamanlayıcı) ihtiyaç duymamasıdır.

Önleyici Olmayan Planlama, bir süreç gönüllü olarak bekleme durumuna girdiğinde veya sona erdiğinde gerçekleşir.

İşletim Sisteminde Önlemli ve Önleyici Olmayan Planlama Arasındaki Fark

İşte, İşletim Sisteminde Önleme ve Önleme Amaçlı Olmayan Planlama

Önleyici Planlama Önleyici Olmayan Planlama
Bir işlemci, herhangi bir mevcut işlem yürütmesinin ortasında farklı işlemleri yürütmek için öncelikli olarak alınabilir. İşlemci yürütmeye başladığında, diğerini çalıştırmadan önce onu bitirmelidir. Ortada duraklatılamaz.
CPU kullanımı, Önlemesiz Planlamaya göre daha verimlidir. CPU kullanımı, önleyici Planlamaya kıyasla daha az verimlidir.
Önleyici Planlamanın bekleme ve yanıt süresi daha azdır. Önleme amaçlı olmayan Planlama yönteminin bekleme ve yanıt süresi daha yüksektir.
Öncelikli Planlama önceliklidir. En yüksek öncelikli süreç, şu anda kullanılan bir süreçtir. Herhangi bir işlem çalışma durumuna girdiğinde, işini bitirene kadar bu işlemin durumu zamanlayıcıdan asla silinmez.
Önleyici Planlama esnektir. Önleyici Olmayan Planlama katıdır.
Örnekler: - İlk Kalan En Kısa Süre, Round Robin vb. Örnekler: İlk Gelen İlk Servis, Önce En Kısa İş, Öncelik Planlama vb.
Önleyici Planlama algoritması önceden planlanabilir, yani süreç Planlanabilir Önleme amaçlı olmayan planlama sürecinde Planlanamaz
Bu süreçte CPU, belirli bir süre için süreçlere tahsis edilir. Bu süreçte CPU, sona erene veya bekleme durumuna geçene kadar sürece tahsis edilir.
Önleme algoritması, süreci hazır durumdan çalışma durumuna ve tersi şekilde değiştirme ek yüküne sahiptir. Önlemsiz Zamanlama, işlemin hazır duruma geçmesini sağlamak için böyle bir ek yüke sahip değildir.

Önleyici Planlamanın Avantajları

Önleme Planlama yönteminin artıları / faydaları şunlardır:

  • Önleyici zamanlama yöntemi daha sağlamdır, bu nedenle bir işlem CPU'yu tekeline alamaz.
  • Her kesintiden sonra tekrar gözden geçirilen görevin seçimi.
  • Her olay, çalışan görevlerin kesintiye uğramasına neden olur
  • İşletim sistemi, CPU kullanımının tüm çalışan süreçler tarafından aynı olmasını sağlar.
  • Bunda CPU kullanımı aynıdır, yani çalışan tüm işlemler CPU'dan eşit şekilde faydalanacaktır.
  • Bu programlama yöntemi aynı zamanda ortalama yanıt süresini de doğaçlamaktadır.
  • Öncelikli Planlama, onu çoklu programlama ortamı için kullandığımızda faydalıdır.

Önleme Amaçlı Olmayan Planlamanın Avantajları

Önlemsiz Planlama yönteminin artıları / faydaları şunlardır:

  • Düşük programlama ek yükü sunar
  • Yüksek verim sağlama eğilimindedir
  • Kavramsal olarak çok basit bir yöntem
  • Planlama için daha az hesaplama kaynağı ihtiyacı

Önleyici Planlamanın Dezavantajları

Önleme Planlama yönteminin eksileri / dezavantajları şunlardır:

  • Planlama için sınırlı hesaplama kaynaklarına ihtiyaç var
  • Çalışan görevi askıya almak, bağlamı değiştirmek ve yeni gelen görevi göndermek için zamanlayıcı daha fazla zaman alır.
  • Düşük önceliğe sahip olan sürecin, bazı yüksek öncelikli süreçlerin sürekli olarak gelmesi durumunda daha uzun süre beklemesi gerekir.

Preemptif Olmayan Planlamanın Dezavantajları

Önleme Amaçlı Olmayan Planlama yönteminin eksileri / dezavantajları şunlardır:

  • Özellikle gerçek zamanlı görevler için açlıktan ölmeye neden olabilir
  • Hatalar bir makinenin donmasına neden olabilir
  • Gerçek zamanlı ve öncelikli Planlamayı zorlaştırabilir
  • Süreçler için zayıf yanıt süresi

Önleme Amaçlı Olmayan Planlama Örneği

Önleyici olmayan SJF zamanlamasında, CPU döngüsü işleme tahsis edildiğinde, süreç onu bekleme durumuna gelene veya sonlandırılana kadar tutar.

Her biri kendi benzersiz patlama zamanına ve varış saatine sahip olan aşağıdaki beş işlemi düşünün.

İşlem Sırası Patlama zamanı Varış zamanı
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

Adım 0) Zaman = 0'da P4 gelir ve yürütmeye başlar.

Adım 1) = 1 anında, Süreç P3 gelir. Ancak P4'ün tamamlanması için hala 2 yürütme birimine ihtiyacı var. Yürütmeye devam edecek.

Adım 2) Zaman = 2'de, P1 işlemi gelir ve bekleme kuyruğuna eklenir. P4 yürütmeye devam edecek.

Adım 3) Zaman = 3 olduğunda, P4 süreci yürütmeyi bitirecektir. P3 ve P1'in patlama zamanı karşılaştırılır. Proses P1, çoğuşma süresi P3'e kıyasla daha az olduğu için yürütülür.

Adım 4) Zaman = 4'te, P5 süreci gelir ve bekleme kuyruğuna eklenir. P1 yürütmeye devam edecek.

Adım 5) Zaman = 5'te, P2 süreci gelir ve bekleme kuyruğuna eklenir. P1 yürütmeye devam edecek.

Adım 6) Zaman = 9'da, P1 işlemi yürütmeyi bitirecektir. P3, P5 ve P2'nin patlama zamanları karşılaştırılır. İşlem P2, çoğuşma süresi en düşük olduğu için yürütülür.

Adım 7) Zaman = 10'da P2 yürütülmektedir ve P3 ve P5 bekleme kuyruğundadır.

Adım 8) Zaman = 11 olduğunda, P2 işlemi yürütmeyi bitirecektir. P3 ve P5'in patlama zamanı karşılaştırılır. Proses P5, çoğuşma süresi daha düşük olduğu için yürütülür.

Adım 9) Zaman = 15 olduğunda, P5 süreci yürütmeyi bitirecektir.

Adım 10) Zaman = 23 olduğunda, P3 süreci yürütmeyi bitirecektir.

Adım 11) Yukarıdaki örnek için ortalama bekleme süresini hesaplayalım.

Wait timeP4= 0-0=0P1= 3-2=1P2= 9-5=4P5= 11-4=7P3= 15-1=14Average Waiting Time= 0+1+4+7+14/5 = 26/5 = 5.2

Önleyici Planlama Örneği

Round-robin'deki üç işlemi izleyerek bunu düşünün

İşlem Sırası Patlama zamanı
P1 4
P2 3
P3 5

Adım 1) Yürütme, patlama zamanı 4'e sahip olan P1 işlemi ile başlar. Burada, her işlem 2 saniye boyunca yürütülür. P2 ve P3 hala bekleme kuyruğunda.

Adım 2 ) Zaman = 2 olduğunda, P1 Kuyruğun sonuna eklenir ve P2 yürütülmeye başlar

Adım 3) Zaman = 4 olduğunda, P2 önceden tutulur ve kuyruğun sonuna eklenir. P3 çalışmaya başlar.

Adım 4) Zaman = 6'da, P3 önceden tutulur ve kuyruğun sonuna eklenir. P1 çalışmaya başlar.

Adım 5) Zaman = 8'de, P1'in patlama süresi 4'tür. Yürütmeyi tamamlamıştır. P2 yürütmeyi başlatır

Adım 6) P2'nin patlama süresi 3'tür. Zaten 2 aralık için yürütülmüştür. Time = 9'da P2 yürütmeyi tamamlar. Ardından P3, tamamlanana kadar yürütmeye başlar.

Adım 7) Yukarıdaki örnek için ortalama bekleme süresini hesaplayalım.

Wait timeP1= 0+ 4= 4P2= 2+4= 6P3= 4+3= 7

ANAHTAR FARKLAR

  • Önleyici Çizelgelemede, CPU belirli bir süre için işlemlere tahsis edilir ve önleyici olmayan zamanlama CPU'su, sona erene kadar sürece tahsis edilir.
  • Preemptive Scheduling'de görevler önceliğe göre değiştirilirken, preemptive Schedulign'de geçiş yapılmaz.
  • Önleme algoritması, süreci hazır durumdan çalışma durumuna geçirme ek yüküne sahipken, Önlemesiz Zamanlamanın böyle bir anahtarlama ek yükü yoktur.
  • Önleyici Planlama esnektir, Önleyici Olmayan Planlama ise katıdır.