GNU / Linux ve diğer çoklu görev sistemleri bu şekilde çalışır, işlemciyi çalışan süreçler arasında paylaşırlar, dot% 99'una sahip olmazlar, ancak% 99'unda% 100'ü vardır. Her işlem, belirli bir süre için işlemciye hükmeder.
Bu, zamanlayıcılar tarafından yönetilir (linux'un birkaç zamanlayıcı vardır, bazıları sadece normal stratejiyi kullanır, bazıları kullanıcı arayüzlerine daha fazla zaman vermeye çalışır, vb.).
Şimdi, sizin durumunuzda, sorun - muhtemelen - bu dotçok fazla işlemci zamanı değil, çok fazla bellek gerektiriyordu. Ve bir programın kullandığı çok fazla bellek, olduğunda dayak tam da değil, sistem donma kılan bir süreçtir, dotbir çok yapıyor ama çekirdek taşımak zorunda olduğu için bellek sayfalarını diske arasında ileri ve geri (swap bölümü) ve sistem belleği.
Bile dotsadece işlemci% 99 zaman alıyordu, büyük ihtimalle bir metin terminaline değişen neredeyse anında olacağını vardır, ne olur çekirdek taşımak olmasıdır doto koymak böylece belleği yetersiz malzeme Xböylece bellekte geri Xtuşları görebilirsiniz sadece metin terminaline vurup hareket edersiniz, sonra çekirdek hala çalışmakta olan Xbellekten dışarı çıkmak zorunda kalır dotve sonra da dotmetin terminali işlemlerini (belki sadece login?) belleğe taşımak için dışarı çıkar . (Bu dağınık görünüyorsa, sadece örnek dağınık olduğu için değil - gerçek bu dağınıktır.)
Örnek olarak metin terminalinde oturum açarsanız, sadece tuşlara basabilir, geri tuşuna basabilirsiniz ve mutlu bir şekilde gerçek zamanlı olur, ancak küçük bir aracı çalıştırmak kadar basit bir şey yaparsanız ps, "donacaktır" "bir süreliğine yüklenecek belleği boşaltması gerektiğinden ps(ve ayrıca psdosya sisteminden talep edene kadar verileri belleğe ve bellekten taşımak için kullanılan disk G / Ç kuyruğunda da beklemesi gerekir ) .