it-swarm.asia

Windows sunucumun değişip değişmediğini nasıl anlarım?

Bazı verileri yeniden yapılandırırken Windows sunucumu izlemek için Process Explorer kullanıyorum. Öncelikle CPU yoğun bir işlemdir, ancak takas olmadığından emin olmak istiyorum. Process Explorer kullanıp kullanmadığını nasıl anlayabilirim? İlk tahminim Sistem Bilgileri penceresinde, Disk belleği dosyası yazma deltası. Evet? Hayır? Ben bir aptalım?

* Ekran görüntüsü sunucunun değil ... sadece bir örnek.

alternatif metin http://www.malwareinfo.org/bootcamp/img/ProcessExplorer2.jpg

30
churnd

"Pages Input/sec izlenecek sayaçtır, ancak pencereler * nixes gibi sayfa dosyasını kullanmadığı için" takas "konusunda endişelenmemelisiniz.

Öncelikle, Windows sayfalarının dışarıda olmadığını anlamalısınız. Ben kendim daha iyi söyleyemeyiz çünkü Eric Lipperts blog yazısı (hafifçe düzenlenmiş) ilgili bölümünü alıntı yapacağım:

"RAM sadece bir performans optimizasyonu olarak görülebilir. Bilginin ışık hızına yakın bir hızla yayılan elektrik alanlarında depolandığı RAM'deki verilere erişmek, bilginin muazzam, ağır olarak depolandığı diskteki verilere erişmekten çok daha hızlıdır demirli metal molekülleri

İşletim sistemi, işlemlere en sık hangi depolama sayfalarına erişildiğini takip eder ve hız artışını elde etmek için RAM'de bir kopyasını oluşturur. Bir işlem şu anda RAM'de önbelleğe alınmamış bir sayfaya karşılık gelen bir işaretçiye eriştiğinde, işletim sistemi bir "sayfa hatası" yapar, diske gider ve makul bir varsayım yaparak sayfanın diskten RAM'e bir kopyasını oluşturur bir süre sonra tekrar erişilmek üzere olduğunu.

İşletim sistemi ayrıca salt okunur kaynakları paylaşma konusunda çok zekidir. İki işlemin ikisi de aynı DLL sayfasından aynı DLL dosyasını yüklerse, işletim sistemi iki işlem arasında RAM önbelleği paylaşabilir) Kod büyük olasılıkla biri tarafından değiştirilmeyeceği için işleminin yinelenen RAM sayfasını paylaşarak kaydedilmesi çok mantıklıdır).

Ancak akıllı paylaşımda bile, sonunda bu önbellek sistemi RAM'in tükenecektir. Bu olduğunda, işletim sistemi yakında hangi sayfalara erişmenin en az olası olduğunu tahmin eder, değiştiyse bunları diske yazar ve RAM yakında tekrar erişilmesi daha olası bir şey.

İşletim sistemi yanlış tahmin ettiğinde veya büyük olasılıkla, sıkça erişilen tüm sayfaları çalışan tüm işlemlerde depolamak için yeterli değilse RAM), makine “çöpe” başlar. İşletim sistemi tüm zamanını pahalı disk depolama alanını yazmaya ve okumaya harcıyor, disk sürekli çalışıyor ve hiçbir iş yapamıyorsunuz.

Bu aynı zamanda, "RAM'in bitmesi" nadiren "bellek yetersiz" hatasına neden olduğu anlamına gelir. Bir hata yerine, kötü performans ile sonuçlanır, çünkü depolamanın aslında diskte olduğu gerçeğinin tam maliyeti aniden alakalı hale gelir.

Buna bakmanın bir başka yolu, programınızın kullandığı toplam sanal bellek miktarının performansı ile gerçekten ilgili olmadığıdır. İlgili olan, tüketilen toplam sanal bellek miktarı değil, (1) bu belleğin ne kadarının diğer işlemlerle paylaşılmadığı, (2) yaygın olarak kullanılan sayfaların "çalışma kümesinin" ne kadar büyük olduğu ve ( 3) tüm aktif proseslerin çalışma setlerinin mevcut RAM'den büyük olup olmadığı.

Şimdiye kadar, “bellek yetersiz” hatalarının neden ne kadar fiziksel belleğe veya ne kadar depolama alanına sahip olduğuyla hiçbir ilgisi olmadığı açık olmalıdır. Neredeyse her zaman 32 bit Windows'ta nispeten küçük ve kolayca parçalanan adres alanı ile ilgilidir. "

Birkaç ek nokta:

  1. dll'ler ve program dosyaları her zaman yalnızca diskte olduğu gibi asla disk belleği olarak ayrılır (ve fiziksel ram azaldığında genellikle ilk sayfalar serbest bırakılır)
  2. boş sayfa tablosu girişlerinin tükenmesine veya belleğinizin diğer bellek sorunlarından (daha önce bahsedildiği gibi genel olarak düşük performansın dışında) çok fazla parçalanmasına daha çok benziyorsunuz
  3. sayfa dosyası olmadan çalışsanız bile sayfa hataları alabilirsiniz
  4. genel olarak, sözü edilen belleğe bakmak, bir sürecin belleği nasıl kullandığını daha iyi anlatır

pencerelerde bellek yönetiminin nasıl çalıştığının tam bir resmi için bkz.

Windows NT'deki Sanal Bellek Yöneticisi

bir bellek sorununuz olduğunu düşünüyorsanız ilk önce bu sunumu izlemeyi öneririm Windows belleğinde sorun giderme

Hafıza parçalanması sayesinde neden bazen "hafızanın yetersiz kaldığını" gösteren harika bir açıklama:

Ayrıca bkz Windows'un Sınırlarını Zorlamak: Fiziksel Bellek

Sanal Bellek, Bellek Parçalanması ve Sızıntıları ve WOW64 hakkında daha fazla bilgi

RAM, Sanal Bellek, Pagefile ve diğer şeyler (Microsoft desteği)

Güncelleme:

Windows 10 bellekle biraz farklı bir şey yapar ve zamanla "Sistem ve sıkıştırılmış bellek" adlı bir işlem görürsünüz Windows 10 disk belleği çıkış listesine bir "sıkıştırma deposu" ekler. Bu koç, sisteme ait olan KULLANICI hafızasıdır (tipik olarak sistemde sadece çekirdek hafızası vardır) Bu hafıza yaklaşık% 30'a kadar ortalama bir azalma için yerinde sıkıştırılır. Bu, bellekte daha fazla sayfanın depolanmasına izin verir (% 70 daha fazla alan olan matematiği yapanlarınız için) Bellek hala baskıya sahipse, sıkıştırma deposundaki sayfaların (kullanıcı modu Sistem işlem alanı) değiştirilene yerleştirilebileceğini unutmayın. Liste (sıkıştırılmış), daha sonra fiziksel sayfa dosyasına yazılabilir. Sistem, sistem kullanıcı modu alanından olduklarını ve sıkıştırıldıklarını görecek ve bunları tekrar mağazaya koymaya çalışmaz. Windows 10 sistemlerinde, sistem ram soluyor gibi görünebilir, ancak aslında ram kullanımında daha verimli olmaya çalışır. Mac kullanıcıları 2013'ten beri benzer bir özellik kullanıyor ve Linux çekirdeğinin daha yeni sürümlerinde bir bellek sıkıştırma sürümü kullanılıyor. Belleği korumanın bu yöntemi sadece daha iyi değil, aynı zamanda diğer işletim sistemleri arasında zaten yaygındır.

32
Jim B

Evet, disk belleği deltaları size sunucunun ne kadar disk belleği (ya da "takas") olduğunu, ancak o anda canlı olarak gösterir. Bunu daha yakından izlemek ve tarihsel bir görünüm görmek için Performans İzleyicisi ( perfmon.exe ) bu deltaları (ve belirli etkinlikleri veya etkinlikleri disk belleği etkinliğindeki ani artışlarla ilişkilendirmeye yardımcı olabilecek diğer performans sayaçlarını) grafik olarak kaydedin veya kaydedin.

6
Jessica McKinnon

Performans İzleyicisi (perfmon) burada arkadaşınız. Sabit sayfa hataları (yani, isteği yerine getirmek için gereken bellek sayfasının diskten okunması gerektiğinde sayfa hataları) arıyorsunuz, bu nedenle hem sert hem de yumuşak sayfa hatalarını izlemek en uygunudur.

Ne kadar zor sayfa hatası oluştuğuna dair fikir edinmek için perfmon kullanarak "Memory" nesnesindeki "Pages Input/sec" sayacını izleyin.

5
Evan Anderson

Önemli bir kural, taahhüt ücretiniz fiziksel belleğinizden yüksekse, kesinlikle sayfalama yaparsınız bir şey, ancak uygulamanız her zaman kullanımda olan tek bir sabit veri arabelleği kullanıyorsa, genellikle hiç sayfalandırılmaz. Bunun için yer açmak üzere başka bellekler çağrılırken başlangıçta biraz gecikme olabilir.

0
Maximus Minimus