"Yumuşak gerçek zamanlı" tanımlamak için, onu "zor gerçek zamanlı" ile karşılaştırmak en kolayıdır. Aşağıda, "gerçek zamanlı firma" teriminin, "yumuşak gerçek zamanlı" hakkında bir yanlış anlama oluşturduğunu göreceğiz.
Günlük konuşursak, çoğu insan, bilgiyi veya bir olayı "gerçek zamanlı" olarak gören resmi olmayan bir zihinsel modele sahiptir.
• Algılanan para birimiyle ilgili olabilecek bir gecikme (gecikme) ile onlara görünürse veya bu ölçüde
• yani, bilgi veya olayın kendileri için kabul edilebilir derecede tatmin edici değere sahip olduğu bir zaman çerçevesinde.
"Zor gerçek zaman" ın çok sayıda farklı geçici tanımı vardır, ancak bu zihinsel modelde, zor gerçek zamanlı "eğer" terimi ile temsil edilir. Spesifik olarak, gerçek zamanlı eylemlerin (görevler gibi) tamamlanma sürelerine sahip olduğunu varsayarsak, tüm görevlerin tamamlandığı olayın kabul edilebilir tatmin edici değeri, tüm görevlerin son tarihlerini karşıladığı özel durumla sınırlıdır.
Zor gerçek zamanlı sistemler, uygulama, sistem ve ortamla ilgili her şeyin statik olduğu ve önceden bilindiği konusunda çok güçlü varsayımlar yapar - örneğin, hangi görevler, periyodik oldukları, varış süreleri, süreleri, son tarihleri, kazandıkları Kaynak çatışmaları ve genel olarak sistemin zaman evrimi yok. Bir uçak uçuş kontrol sisteminde veya otomotiv fren sisteminde ve diğer birçok durumda, bu varsayımlar genellikle tüm son teslim tarihlerinin karşılanması için karşılanabilir.
Bu zihinsel model kasıtlı olarak ve çok yararlı bir şekilde hem sert hem de yumuşak gerçek zamanı kapsayacak kadar geneldir - yumuşak, "olduğu ölçüde" cümlesiyle uyumludur. Örneğin, görev tamamlamaları olayının yetersiz ancak kabul edilebilir bir değere sahip olduğunu varsayalım.
- görevlerin% 10'undan fazlası son teslim tarihlerini kaçırmaz
- veya hiçbir görev% 20'den fazla gecikmiyor
- veya tüm görevlerin ortalama gecikmesi% 15'ten fazla değildir
- veya tüm görevler arasında maksimum gecikme% 10'dan az
Bunların tümü, pek çok uygulamadaki yumuşak gerçek zamanlı vakaların yaygın örnekleridir.
Çocuğunuzu okuldan sonra tek görevli bir şekilde kucaklamayı düşünün. Muhtemelen bunun gerçek bir son tarihi yoktur, bunun yerine, o olayın ne zaman gerçekleştiğine bağlı olarak siz ve çocuğunuz için bir değer vardır. Çok erken, kaynakları (zamanınız gibi) boşa harcar ve çok geç, çocuğunuz yalnız bırakılabilir ve potansiyel olarak zarar görmesine neden olabilir (veya en azından rahatsız olabilir).
Statik zor gerçek zamanlı özel durumun aksine, yumuşak gerçek zamanlı, yalnızca görevler ve sistem hakkında gerekli minimum uygulamaya özgü varsayımları yapar ve belirsizlikler beklenir. Çocuğunuzu almak için, okula gitmeniz gerekir ve bunu yapmak için gereken zaman, hava durumuna, trafik koşullarına, vb. Bağlı olarak dinamiktir. en kötü durumda sürüş süresi) ama yine de kaynakları boşa harcamaktır (zamanınız ve aile aracını işgal etmek, muhtemelen diğer aile üyelerinin kullanımını reddetmek).
Bu örnek, boşa harcanan kaynaklar açısından maliyetli görünmeyebilir, ancak diğer örnekleri düşünün. Tüm askeri savaş sistemleri yumuşak gerçek zamanlıdır. Örneğin, hedef manevralar sırasında güncellemeler ile güdümlü bir füze kullanarak düşman bir kara aracına uçak saldırısı gerçekleştirmeyi düşünün. Kurs güncelleme görevlerini tamamlamak için maksimum tatmin, hedefe doğrudan yıkıcı bir vuruşla elde edilir. Ancak bu sonuçtan emin olmak için kaynakların gereğinden fazla sağlanması girişimi genellikle çok pahalıdır ve hatta imkansız bile olabilir. Bu durumda, füze hedefe onu etkisiz hale getirecek kadar yakın vurursa daha az ama yeterince tatmin olmuş olabilirsiniz.
Açıktır ki savaş senaryoları, kaynak yönetimi tarafından barındırılması gereken pek çok olası dinamik belirsizliğe sahiptir. Yumuşak gerçek zamanlı sistemler, endüstriyel otomasyon gibi birçok sivil sistemde de çok yaygındır, ancak açıkçası askeri olanlar kabul edilebilir düzeyde tatmin edici bir değer elde etmek için en tehlikeli ve acil olanlardır.
Gerçek zamanlı sistemlerin temel taşı "öngörülebilirlik" tir. Zor gerçek zamanlı durum, yalnızca bir özel öngörülebilirlik durumu ile ilgilenir - yani, görevlerin tamamının son tarihlerini karşılayacağı ve bu olay ile mümkün olan maksimum değere ulaşılacağı. Bu özel duruma "deterministik" adı verilir.
Bir öngörülebilirlik yelpazesi var. Deterministik (determinizm), öngörülebilirlik spektrumundaki bir uç noktadır (maksimum öngörülebilirlik); diğer son nokta, minimum öngörülebilirliktir (maksimum determinizm). Spektrumun metrik ve uç noktaları, seçilen bir öngörülebilirlik modeli açısından yorumlanmalıdır; bu iki uç nokta arasındaki her şey öngörülemezlik dereceleridir (= belirlenimsizlik dereceleri).
Çoğu gerçek zamanlı sistem (yani, yumuşak olanlar), örneğin, görevlerin tamamlanma süreleri ve dolayısıyla bu olaylardan kazanılan değerlerin deterministik olmayan tahmin edilebilirliğine sahiptir.
Genel olarak (teoride), öngörülebilirlik ve dolayısıyla kabul edilebilir tatmin edici değer, deterministik son noktaya gerektiği kadar yakın yapılabilir - ancak fiziksel olarak imkansız veya aşırı pahalı olabilecek bir fiyatla (savaşta olduğu gibi veya belki de çocuğunuzu okuldan almak).
Yumuşak gerçek zamanlı, uygulamaya özgü bir olasılık modeli seçimi (yaygın sıklık modeli değil) ve dolayısıyla olay gecikmeleri ve sonuç değerleri hakkında mantık yürütmek için öngörülebilirlik modeli gerektirir.
Kabul edilebilir değer sağlayan yukarıdaki olaylar listesine geri dönersek, şimdi aşağıdaki gibi deterministik olmayan durumlar ekleyebiliriz:
- hiçbir görevin son tarihini% 5'ten fazla kaçırmama olasılığı 0,87'den fazladır. (Burada ifade edilen programlama kriterlerinin sayısını not edin.)
Bir füze savunma uygulamasında, hücumun her zaman savunmaya göre avantaja sahip olduğu gerçeği göz önüne alındığında, bu iki gerçek zamanlı hesaplama senaryosundan hangisini tercih edersiniz:
Tüm düşman füzelerin mükemmel bir şekilde imha edilmesi çok olası veya imkansız olduğundan, en çok tehdit oluşturan (örneğin hedeflerine göre) düşman füzelerinin başarılı bir şekilde yakalanma olasılığını en üst düzeye çıkarmak için savunma kaynaklarınızı tahsis edin (yakın müdahale önemlidir, çünkü düşman füzeyi rotasının dışına hareket ettirebilir);
Bunun gerçek zamanlı bir hesaplama problemi olmadığından şikayet edin, çünkü statik yerine dinamiktir ve geleneksel gerçek zamanlı kavramlar ve teknikler uygulanmaz ve statik gerçek zamanlıdan daha zor göründüğünden, bununla ilgilenmezsiniz .
Gerçek zamanlı bilgi işlem topluluğundaki yumuşak gerçek zamanlıyla ilgili çeşitli yanlış anlamalara rağmen, yumuşak gerçek zamanlı, çok genel ve güçlüdür, ancak gerçek zamanlıya kıyasla potansiyel olarak karmaşıktır. Burada özetlendiği gibi yumuşak gerçek zamanlı sistemler, gerçek zamanlı bilgi işlem topluluğu dışında uzun ve başarılı bir kullanım geçmişine sahiptir .
OP sorusuna doğrudan cevap vermek için:
Zor gerçek zamanlı bir sistem belirleyici garantiler sağlayabilir - en yaygın olarak tüm görevler son teslim tarihlerini karşılayacaktır, kesinti veya sistem çağrısı yanıt süresi her zaman x'ten az olacaktır, vb. - YALNIZCA çok güçlü varsayımlar yapılırsa ve doğruysa önemli olan her şey statiktir ve a 'priori olarak bilinir (genel olarak, zor gerçek zamanlı sistemler için bu tür garantiler oldukça basit durumlar dışında açık bir araştırma problemidir)
Yumuşak gerçek zamanlı bir sistem deterministik garantiler vermez, uygulamaya özel kriterlere göre mevcut dinamik koşullar altında mümkün olan olası en iyi analitik olarak belirlenmiş ve başarılmış olasılıksal zamanlama ve zamanlama öngörülebilirliğini sağlamayı amaçlamaktadır.
Açıkçası zor gerçek zaman, yumuşak gerçek zamanın basit ve özel bir durumudur. Açıkçası yumuşak gerçek zamanlı analitik deterministik olmayan güvencelerin sağlanması çok karmaşık olabilir, ancak en yaygın gerçek zamanlı durumlarda (savaş gibi en tehlikeli güvenlik açısından kritik olanlar dahil) zorunludur çünkü çoğu gerçek zamanlı durum dinamik değildir statik.
"Gerçek zamanlı gerçek zamanlı", kötü tanımlanmış, "yumuşak gerçek zamanlı" özel bir durumdur. "Yumuşak gerçek zamanlı" terimi anlaşılır ve doğru kullanılırsa bu terime gerek yoktur.
Realtime.org web sitemde gerçek zamanlı, zor gerçek zamanlı, yumuşak gerçek zamanlı, öngörülebilirlik, belirlenimcilik ve ilgili konular hakkında çok daha ayrıntılı bir tartışmam var.