Tek bir işlemin kaynaklarını kısıtlama konusunda birçok soru ve cevap vardır; örneğin, RLIMIT_AS, benzerlerinde VIRT olarak görülebilen bir işlem tarafından ayrılan maksimum belleği kısıtlamak için kullanılabilir top
. Konu hakkında daha fazla bilgi Burada belirli bir işlemin Unix'te kullanabileceği bellek miktarını sınırlamanın bir yolu var mı?
setrlimit(2)
belgeler diyor ki:
Fork (2) ile oluşturulan bir alt süreç, üst öğesinin kaynak sınırlarını devralır. Kaynak sınırları yürütme (2) boyunca korunur.
Aşağıdaki şekilde anlaşılmalıdır:
Bir işlemin RLIMIT_AS değeri 2GB ise, 2GB'den fazla bellek ayıramaz. Bir çocuk doğurduğunda, 2GB adres alanı sınırı çocuğa aktarılır, ancak sayım 0'dan başlar. 2 işlem birlikte 4GB'a kadar bellek alabilir.
Ancak, tüm süreçler ağacı tarafından ayrılan toplam bellek miktarını sınırlamanın yararlı yolu ne olabilir?