SORU
26 Ocak 2011, ÇARŞAMBA


Nasıl gerçek bellek kullanımı ile en üst süreçleri görmek için mi?

Bellek 12 G ile bir sunucu var. Üst parçası aşağıdaki gibidir:

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME   COMMAND                                                                                                                                                                                                                                                      
12979 frank  20   0  206m  21m  12m S   11  0.2  26667:24 krfb                                                                                                                                                                                                                                                          
13 root      15  -5     0    0    0 S    1  0.0  36:25.04 ksoftirqd/3                                                                                                                                                                                                                                                   
59 root      15  -5     0    0    0 S    0  0.0   4:53.00 ata/2                                                                                                                                                                                                                                                         
2155 root      20   0  662m  37m 8364 S    0  0.3 338:10.25 Xorg                                                                                                                                                                                                                                                          
4560 frank  20   0  8672 1300  852 R    0  0.0   0:00.03 top                                                                                                                                                                                                                                                           
12981 frank  20   0  987m  27m  15m S    0  0.2  45:10.82 amarok                                                                                                                                                                                                                                                        
24908 frank  20   0 16648  708  548 S    0  0.0   2:08.84 wrapper                                                                                                                                                                                                                                                       
1 root      20   0  8072  608  572 S    0  0.0   0:47.36 init                                                                                                                                                                                                                                                          
2 root      15  -5     0    0    0 S    0  0.0   0:00.00 kthreadd

free -m aşağıdakileri gösterir:

             total       used       free     shared    buffers     cached
Mem:         12038      11676        362          0        599       9745
-/  buffers/cache:       1331      10706
Swap:         2204        257       1946

Doğru anladıysam sistem kullanılabilir bellek sadece 362). Soru ne kadar bellek en alıcı bulabilir miyim?

Sadece bilgi için, sistem 64bit OpenSuse 12 çalışıyor.

CEVAP
26 Ocak 2011, ÇARŞAMBA


İlk olarak, bir süre için bu mantra tekrar: "kullanılmayan bellek boşa". Linux çekirdeği etrafında tutarbüyükdaha önemli görünen dosya meta veri miktarı ve istenen dosyaları, bir şey kadar veri dışarı iter. Çalıştırabilirsiniz bu yüzden:

find /home -type f -name '*.mp3'
find /home -type f -name '*.aac'

ve find ikinci derece saçma hızda çalışır.

Linux sadece hafıza 'özgür' çok çaba olmadan bellek kullanımı ani işlemek için. biraz bırakır

İkinci olarak, tüm bellek yiyor bu süreçleri bulmak istediğiniz; top M komutu bellek kullanımı sıralamak için kullanın. Sadece seni ne kadar tahsis edilmiştir, ne kadar süreci kullanmıyor söyler VIRT sütun, görmezden çekinmeyin. RES bellek ne kadar bildirirresidentveya ram şu anda diske takas ya da aslında hiç talep olmasına rağmen ilk etapta ayrılan, farklı olarak).

Ama, RES örneğin /lib/libc.so.6 bellek bir zamanlar neredeyse her işlem için geçerli olacaktır bu yana, tam olarak ne kadar bir süreç kullanarak harika bir ölçü değil. SHR sütun bellek ne kadar bildirirpaylaştıdiğer işlemler ile, ama başka bir işlem bir başka paylaşmak istiyor sadece aslında paylaşılabilir olabilir paylaşım, garanti yok.

smem araç kullanıcıları bir bellek gerekir sadece daha iyi gage yardımcı olmak için tasarlanmıştırgerçektenher bir süreç için ayrı sorumlu tutulamaz. Paylaşılan ne akıllıca bir iş gerçekten benzersiz olduğunu anlamak için ne yapar, ve orantılı süreçler paylaşmak için paylaşılan bellek hesaplar. smem hafıza top daha iyi nereye gittiğini anlamamıza yardımcı olabilir, ama top mükemmel bir araçtır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ash100HD

    Ash100HD

    29 EKİM 2011
  • David Tedeyev

    David Tedeye

    20 AĞUSTOS 2011
  • katherine gomez

    katherine go

    1 Aralık 2011