Bazı zamanlama kavramlarını öğrendim. Şu anda benim anlayış şimdiye kadar.
- Gerçek zamanlı süreçler ve gerçek zamanlı olmayan süreçler vardır.
- Gerçek zamanlı olmayan işlemler
niceöncelik sırasına göre -20 ila +20 aralığında değerlere sahip olabilir . Yüksek pozitif değer, işlemin daha düşük önceliğe sahip olduğunu gösterir. - Gerçek zamanlı süreçler,
-bu cevapta burada açıklandığı gibi listelenen bir hoşluğa sahip olacaktır . Bunun nedeni, gerçek zamanlı işlemlerin gerçek zamanlı olmayan işlemlerden daha yüksek öncelikleri olması ve bunlar için nezaket değeri için geçerli olmamasıdır. - Şimdi
chrtbir sürecin gerçek zamanlı özelliklerini görmek için kullanabilirim .
Gerçek zamanlı bir süreç için chrt, çıktı verir,
chrt -p 5
pid 5's current scheduling policy: SCHED_FIFO
pid 5's current scheduling priority: 99
İşlem 5 için görebileceğimiz gibi , öncelik en yüksek olan 99'dur. Ayrıca, zamanlama politikasıSCHED_FIFO
Şimdi, gerçek zamanlı olmayan bir süreç için, aşağıdaki chrtgibi çıktılar verir:
chrt -p 22383
pid 22383's current scheduling policy: SCHED_OTHER
pid 22383's current scheduling priority: 0
22383 işleminde görebileceğimiz gibi, öncelik 0, zamanlama politikası ise SCHED_OTHER.
Sorular
- Herhangi bir işlemi gerçek zamanlı işlem olarak yapabilmem mümkün mü?
SCHED_OTHERGerçek zamanlı olmayan bir işlem dışında başka bir zamanlama algoritması ayarlamam mümkün mü ?Gönderen burada , Ben de bir çalışan süreç için niteliğini değiştirebilir görüyoruz,
chrt -p prio pidAyrıca,
chrt -mbana zamanlama algoritmalarının listesini verir. Komut bana çıktısını verir.SCHED_OTHER min/max priority : 0/0 SCHED_FIFO min/max priority : 1/99 SCHED_RR min/max priority : 1/99 SCHED_BATCH min/max priority : 0/0 SCHED_IDLE min/max priority : 0/0Şimdi, yukarıda önerildiği gibi,
chrt -p 55 22383hangi algoritmanın kullanılacağını ayarlarsam ?