Windows 10 için hata ayıklama bilgilerinin kaydedilmesi, ne kurulacağı. BSOD'a neden olan sürücüyü belirlemek için bellek dökümü nasıl kullanılır? WinDBG'de hata ayıklama sembolü sunucusu kurma

Merhaba arkadaşlar, bugün size gelecekte işinize yarayacak ilginç bir konuyu tartışacağız. Mavi ekranölüm (BSoD).

Benim gibi pek çok kullanıcı da üzerinde bir şeyin yazılı olduğu (mavi üzerine beyaz) mavi arka plana sahip bir ekranın görünümünü gözlemlemek zorunda kaldı. Bu olgu, aşağıdaki gibi kritik bir soruna işaret etmektedir: yazılımörneğin bir sürücü çakışması veya bazı bilgisayar bileşenlerinin fiziksel arızası.

Yakın zamanda Windows 10'da yine mavi ekran sorunu yaşadım ancak kısa sürede kurtuldum ve yakında size anlatacağım.

Bu nedenle kullanıcıların çoğu, daha sonra kritik hata sorunlarını anlamak için BSoD'nin analiz edilebileceğinin farkında değil. Bunun için Windows kasaları diskte özel dosyalar oluşturur - bunları analiz edeceğiz.

Üç tür bellek dökümü vardır:

Tam bellek dökümü– bu işlev içeriği tamamen kaydetmenize olanak tanır rasgele erişim belleği. Nadiren kullanılır, çünkü 32 GB RAM'iniz olduğunu, tam dökümle birlikte tüm bu birimin diskte depolanacağını hayal edin.

Çekirdek dökümü– çekirdek modu bilgilerini kaydeder.

Küçük bellek dökümü– sistem arızasının meydana geldiği sırada mevcut olan az miktarda hata bilgisini ve yüklü bileşenleri kaydeder. Bu tür dökümü kullanacağız çünkü bize BSoD hakkında yeterli bilgi verecektir.

Hem küçük hem de tam dökümün konumu farklıdır; örneğin, küçük döküm şu yolda bulunur: %systemroot%\minidump.

Dökümün tamamı burada: %systemroot%.

Bellek dökümlerini analiz etmek için şunlar vardır: çeşitli programlar, ancak ikisini kullanacağız. Bunlardan ilki, adından da anlaşılacağı gibi Microsoft'un bir yardımcı programı olan Microsoft Kernel Debuggers'tır. Resmi web sitesinden indirebilirsiniz. İkinci program ise ücretsiz bir program olan BlueScreenView'dır, buradan indirebilirsiniz.

Microsoft Çekirdek Hata Ayıklayıcılarını Kullanarak Bellek Dökümünü Analiz Etme

Farklı sistem sürümleri için farklı türde bir yardımcı program indirmeniz gerekir. Örneğin 64 bit için işletim sistemi, 32 bitlik bir program için 64 bitlik bir programa ihtiyacınız var - 32 bitlik bir sürüm.

Hepsi bu kadar değil, program için gereken hata ayıklama simgeleri paketini indirip yüklemeniz gerekiyor. Buna Hata Ayıklama Sembolleri denir. Bu paketin her sürümü ayrıca belirli bir işletim sistemi altında indirilir, önce hangi sisteme sahip olduğunuzu öğrenin ve ardından indirin. Bu sembolleri hiçbir yerde aramanıza gerek kalmaması için indirme bağlantısını burada bulabilirsiniz. Kurulum tercihen şu yolda yapılmalıdır: %systemroot%\symbols.

Artık penceresi şöyle görünecek olan hata ayıklayıcımızı başlatabilirsiniz:

Dökümleri analiz etmeden önce yardımcı programda bir şeyler yapılandıracağız. Öncelikle programa hata ayıklama sembollerini nereye yüklediğimizi söylememiz gerekiyor. Bunu yapmak için, "Dosya" düğmesine tıklayın ve "Sembol Dosyası Yolu" öğesini seçin, ardından sembollerin yolunu belirtin.


Program, sembolleri doğrudan web'den çıkarmanıza olanak tanır, böylece bunları indirmenize bile gerek kalmaz (zaten indirmiş olanlardan özür dilerim). Bunlar bir Microsoft sunucusundan alınacak, böylece her şey güvende olacak. Bu nedenle, tekrar “Dosya”yı, ardından “Sembol Dosya Yolu”nu açmanız ve aşağıdaki komutu girmeniz gerekir:

SRV*%systemroot%\symbols*http://msdl.microsoft.com/download/symbols


Böylece sembollerin ağdan alınması gerektiğini programa belirttik. Bunu yaptıktan sonra "Dosya"ya tıklayın ve "Çalışma Alanını Kaydet"i seçin, ardından Tamam'a tıklayın.

Bu kadar. Programı doğru şekilde yapılandırdık, şimdi bellek dökümlerini analiz etmeye başlıyoruz. Programda düğmeye basın "Dosya", Daha sonra "Çökme Dökümünü Aç" ve istediğiniz dosyayı seçin.

Çekirdek Hata Ayıklayıcıları dosyayı analiz etmeye başlayacak ve ardından hatanın nedeni hakkında bir sonuç verecektir.


Açılan pencerede komutları girebilirsiniz. Eğer girersek !analiz –v, o zaman daha fazla bilgi alacağız.

Bu programda hepsi bu. Hata ayıklayıcıyı durdurmak için "Hata Ayıkla" ve "Hata Ayıklamayı Durdur" öğesini seçin.

BlueScreenView kullanarak bellek dökümünü analiz etme

BlueScreenView programı aynı zamanda çeşitli hataları ve BSoD'leri analiz etmek için de uygundur, basit bir arayüze sahiptir, bu nedenle ustalaşmada herhangi bir sorun olmamalıdır.

Yukarıdaki linkten programı indirin ve kurun. Yardımcı programı başlattıktan sonra yapılandırmanız gerekir. Parametrelere gidin: “Ayarlar” – “ Ekstra seçenekler" Birkaç öğenin bulunduğu küçük bir pencere açılacaktır. İlk paragrafta bellek dökümlerinin yerini belirtmeniz gerekiyor. Genellikle C:\WINDOWS\Minidump yolunda bulunurlar. Daha sonra sadece "Varsayılan" butonuna tıklayın.


Programda neler görüyorsunuz? Pencerenin döküm dosyalarının adlarını içeren bir kısmı ve pencerenin ikinci kısmı olan bellek dökümlerinin içeriği olan menü öğelerimiz var.


Makalenin başında söylediğim gibi, dökümler sürücüleri, "ölüm ekranının" ekran görüntüsünü ve bizim için yararlı olabilecek diğer yararlı bilgileri saklayabilir.

Bu nedenle, döküm dosyalarının bulunduğu pencerenin ilk bölümünde ihtiyacımız olan bellek dökümünü seçin. Pencerenin bir sonraki bölümünde içeriğe bakıyoruz. Bellek yığınında bulunan sürücüler kırmızımsı renkle işaretlenmiştir. Onlar tam olarak mavi ölüm ekranının nedenidir.

İnternette BSoD'nin sorumlusu olabilecek hata kodu ve sürücü hakkında her şeyi bulabilirsiniz. Bunu yapmak için “Dosya”ya tıklayın ve ardından “Google'da hata kodunu + Sürücüyü bulun”.


Yalnızca hatanın oluştuğu sırada mevcut olan sürücüleri görüntüleyebilirsiniz. Bunu yapmak için, "Ayarlar" - "Alt pencere modu" - "Yalnızca kilitlenme yığınında bulunan sürücüler" seçeneğini tıklayın. Veya F7 tuşuna basın.

BSoD ekran görüntüsünü göstermek için F8 tuşuna basın.

Tüm sürücüleri ve dosyaları göstermek için F6 tuşuna basın.

İşte hepsi bu. Artık Ölümün Mavi Ekranı problemini nasıl öğreneceğinizi ve bir şey olursa internette veya bu sitede bir çözüm bulacağınızı biliyorsunuz. Hata kodlarınızı iletebilirsiniz, ben de sorunun çözümü için her yazı için yazmaya çalışacağım.

Ayrıca yorumlarda soru sormayı da unutmayın.

Başladığım ölümün mavi ekranından bahsetmeye devam edeceğim.

Dolayısıyla, bilgisayar aniden yeniden başlatılırsa veya donarsa ve mavi ölüm ekranı bir an için görünmez veya belirmezse, arızanın nedenleri hakkındaki bilgiler yine de geri yüklenebilir.

Gerçek şu ki, işletim sistemi arıza anında RAM içeriğini sözde kaydeder. döküm dosyası(uzantısı var .dmp). Gelecekte, döküm dosyası analiz edilebilecek ve mavi ekrandaki bilgilerin aynısını ve hatta biraz daha fazlasını elde edebileceksiniz.

Ancak dökümlerin oluşturulması sistemde devre dışı bırakılabilir, bu nedenle öncelikle sistemin çöktüğünde dökümler oluşturduğundan ve ikinci olarak bunların diskte kaydedildiği konumu bildiğinizden emin olmalısınız.

Bunu yapmak için bölüme gitmeniz gerekir. Sistem.

Windows 10'da bu arama yoluyla yapılabilir ve önceki sürümler Denetim Masası aracılığıyla işletim sistemi.

Burada olayların sistem günlüğüne kaydedilmesi etkinleştirilmelidir, ancak bilgisayarın otomatik olarak yeniden başlatılmasını ve mavi ölüm ekranının içeriğini bize göstermesini önlemek için, etkinleştirilmişse otomatik yeniden başlatmayı iptal etmeniz gerekir.

Dökümlerin yolu da burada görüntülenir - dökümün %SystemRoot% klasörüne kaydedildiğini görüyoruz - bu, Windows klasörünün adıdır.

Ayrıca burada “küçük hafıza dökümü” seçeneğini de seçebilirsiniz, bu da hata kodlarını aramak için oldukça yeterli olacaktır.

Böylece sistem mavi ölüm ekranına düştü ve ardından bir bellek dökümü oluşturuldu.

Döküm analizi için özel programlar ve en popülerlerinden biri BlueScreenView yardımcı programıdır.

Programın kullanımı çok kolaydır ve kurulum gerektirmez - resmi web sitesinden indirin ve sıkıştırın. Aynı zamanda resmi web sitesinden programı Ruslaştırabileceğiniz bir dosya indirebilirsiniz. Bunun için bu dosya sıkıştırılmış programın bulunduğu klasöre yerleştirmeniz gerekecektir.

Programı başlattıktan sonra, sistem mavi ölüm ekranına düşmesine rağmen dökümler görüntülenmiyorsa, program ayarlarına gitmeli ve bellek dökümlerine giden yolun doğru belirtildiğinden emin olmalısınız, yani sistem ayarlarındakiyle aynı olmalıdır.

Bundan sonra program penceresindeki bilgileri güncellemeniz gerekir ve sistemde oluşturulan tüm dökümler görüntülenecektir. Birkaç döküm varsa, başarısızlık tarihine odaklanırız. İstediğiniz dökümü seçin, ardından görünecektir detaylı bilgiüstünde.

Burada hatanın adı, parametrelerle birlikte STOP kodu görüntülenir ve neden sürücü ise, ilgili alanda adını bulacağız.

Ayrıca program penceresinin alt kısmında, hataya neden olabilecek dosyalar da pembe renkle vurgulanacaktır. Her biriyle sırayla ilgilenmemiz gerekecek. Buradaki algoritma önceki yazıda tartışılana benzer; internette bir çözüm ararız ve dosya adını veya hata kodunu arama anahtarı olarak kullanırız.

Bu durumda, arama motoruna manuel olarak veri girmenize gerek yoktur. Döküm satırına sağ tıklarsanız, o zaman içerik menüsü Bu özel sorunun açıklamasını Google'da bulmanızı sağlayacak bir öğe seçebilirsiniz.

Google'da hata koduna, hata koduna ve sürücü adına veya hata kodu ve parametreye göre arama yapmayı seçebilirsiniz.

Ayrıca bu yardımcı programı kullanarak sorunlu dosyanın diskteki konumunu hızlı bir şekilde bulabilirsiniz.

Bazen soruna neden olan dosya bir programa veya oyuna ait olabilir. Dosyanın diskteki konumuna göre hangi programa veya oyuna ait olduğunu hızlı bir şekilde belirleyebilirsiniz.

Temizleyicilerin bellek dökümlerini sildiğini bilmekte fayda var, bu nedenle bu tür programları kullanıyorsanız, mavi ölüm ekranının nedenini belirlerken bunları kullanmaktan kaçınmalısınız.

Bu notun bir parçası olarak cevaplayacağım son soru ise şu: mavi ekran göründükten sonra bilgisayar artık başlamazsa ne yapmalı? Yani bilgisayar donuyor veya sürekli aşırı yükleniyor, bu da bellek dökümünü analiz etmenin bir yolu olmadığı anlamına geliyor.

Cevap mantıklı ve basit; önyüklenebilir USB flash sürücü döküm dosyasını "çıkarabileceğiniz" sabit disk ve başka bir bilgisayarda analiz edin. Bunu yapmak için, bir flash sürücüden ve klasördeki bilgisayarın sabit sürücüsünden önyükleme yapın pencereler veya bir alt klasörde mini döküm Flash sürücüye kopyaladığımız döküm dosyasını buluyoruz. Daha sonra yardımcı programı kullanarak başka bir bilgisayarda Mavi Ekran Görünümü Bu notta açıklandığı gibi dökümü analiz ediyoruz.

Windows 8'de Microsoft, otomatik bellek dökümü seçeneği olan yeni bir bellek dökümü sundu. Bu ayar işletim sisteminde varsayılan olarak ayarlanmıştır. Windows 10 yeni bir tür döküm dosyası sundu - aktif bellek dökümü. Bilmeyenler için Windows 7'de küçük döküm, çekirdek dökümü ve tam çekirdek dökümü bulunmaktadır. Microsoft'un neden bunu oluşturmaya karar verdiğini merak ediyor olabilirsiniz. yeni parametre hafıza dökümü? Kıdemli destek mühendisi Robert Simpkins'e göre otomatik bellek dökümü, yapılandırma dosyasındaki "sistem" sayfası için destek oluşturabilir.
Disk belleği dosyası yapılandırma yönetim sistemi, disk belleği dosyasının boyutunu yönetmekten sorumludur; bu, gereksiz boşluğu veya disk belleği dosyası boyutunu önler. Bu seçenek esas olarak, boyutları daha küçük olan ancak büyük miktarda RAM'e sahip olan SSD sürücüleri üzerinde çalışan bilgisayarlar için sunulmuştur.

Bellek dökümü seçenekleri

"Otomatik bellek dökümü"nün temel avantajı, süreç yöneticisindeki alt sistem oturumunun sayfa dosyasını otomatik olarak RAM boyutundan daha küçük bir boyuta küçültmesine izin vermesidir. Bilmeyenler için alt sistem yöneticisi oturumu, sistemin başlatılmasından, kullanıcının sisteme giriş yapması için gereken hizmet ve işlemler için başlangıç ​​​​ortamından sorumludur. Temel olarak dosyalar sayfasını şu şekilde ayarlar: sanal bellek ve winlogon.exe işlemini başlatır.

Otomatik bellek dökümü ayarlarınızı değiştirmek istiyorsanız bunu nasıl yapacağınız aşağıda açıklanmıştır. Windows tuşu + X'e basın ve - Sistem'i seçin. Daha sonra “Gelişmiş sistem ayarları -” düğmesine tıklayın. İlerlemek Sistem Ayarlar”.

Gelişmiş sistem ayarları düğmesine tıklayın.

Burada “Gelişmiş” yazan bir açılır menü görebilirsiniz.

Burada istediğiniz seçeneği seçebilirsiniz. Önerilen seçenekler:

Bellek dökümü yok.
Küçük bellek dökümü.
Çekirdek bellek dökümü.
Bellek dökümünü tamamlayın.
Otomatik bellek dökümü. Windows 8'e eklendi.
Aktif bellek dökümü. Windows 10'a eklendi.
Bellek dökümü dosyasının konumu %SystemRoot%\MEMORY.DMP dosyasındadır.

Eğer kullanıyorsanız SSD sürücüsü, o zaman onu "Otomatik hafıza dökümü" konumunda bırakmak daha iyidir; ancak bir kilitlenme dökümü dosyasına ihtiyacınız varsa, onu "küçük bellek dökümü" olarak ayarlamak daha iyidir; bununla, eğer isterseniz, ona bakabilmesi için onu birine gönderebilirsiniz.

Bazı durumlarda, tam bellek dökümüne sığabilmesi için sayfa dosyasının boyutunu RAM'den daha büyük hale getirmeniz gerekebilir. Bu gibi durumlarda bir kayıt defteri anahtarı oluşturmanız gerekir:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

buna "LastCrashTime" denir.

Bu, takas dosyasının boyutunu otomatik olarak artıracaktır. Daha sonra azaltmak için bu anahtarı kaldırabilirsiniz.

Windows 10'da tanıtıldı yeni dosya etkin bellek dökümünü boşaltın. Yalnızca temel öğeleri içerir ve bu nedenle boyutu daha küçüktür.

Bunu test etme yolum yok ama bu anahtarı oluşturdum ve sayfa dosyası boyutunu izledim. Er ya da geç kritik bir hata alacağımı biliyorum. Sonra kontrol edeceğim.

WhoCrashed'ı kullanarak Windows.dmp dosyalarının bellek dökümünü analiz edebilirsiniz. WhoCrashed Home, bilgisayarınıza yüklenen sürücüleri tek tıklamayla sağlayan ücretsiz bir yardımcı programdır. Çoğu durumda, bilgisayarınızda sorunlara neden olan hatalı bir sürücüyü tespit edebilir. Bu bir sistem analizi kilitlenme dökümü, bellek dökümüdür ve toplanan tüm bilgiler burada erişilebilir bir biçimde sunulmaktadır.

Tipik olarak hata ayıklama araç seti bir analiz kilitlenme dökümü açar. Bu yardımcı programla, hangi sürücülerin bilgisayarınızda sorunlara neden olduğunu bulmak için herhangi bir bilgiye veya hata ayıklama becerisine ihtiyacınız yoktur.

WhoCrashed, Microsoft'un bir hata ayıklama paketine (windbg programı) güveniyor. Bu paket kurulu değilse WhoCrashed bu paketi sizin için indirecek ve otomatik olarak çıkaracaktır. Programı çalıştırın ve Analiz Et butonuna tıklayın. Sisteminizde WhoCrashed yüklüyse ve beklenmedik bir şekilde çökerse veya kapanırsa program, bilgisayarınızda kilitlenme dökümünün etkin olup olmadığını size bildirecek ve bunları nasıl etkinleştireceğiniz konusunda size öneriler sunacaktır.

Bu kısa not, acil bir duruma müdahale etmek için sistemi nasıl yapılandırabileceğinizi göstermeyi amaçlamaktadır. Windows bellek dökümü yani, mavi bir ölüm ekranının (BSOD) ortaya çıkmasıyla karakterize edilen, kritik bir arıza meydana gelirse oluşturulabilecek bir döküm. Genel olarak çöplük nedir, neden buna ihtiyacımız var ve nedir, hangi sorunları çözmeyi amaçlıyor ve hangi bilgileri içeriyor?

Bellek dökümü - çalışma alanlarına ek olarak bir işlemin, çekirdeğin veya tüm işletim sisteminin çalışma belleğinin içeriği, Ek Bilgiler işlemci kayıtlarının durumu, yığının içeriği ve diğer hizmet yapıları hakkında.

Bu içeriğe neden ihtiyacımız olabilir? Windows bellek dökümü? Belki de bellek dökümünün en yaygın kullanımı, işletim sisteminin tamamen durmasına neden olan sistem arızasının () nedenlerini incelemektir. Buna ek olarak hafıza durumu başka amaçlar için de kullanılabilir. Bellek dökümünün kelimenin tam anlamıyla olması da önemlidir. tek yol herhangi bir arıza hakkında bilgi alın! Ve bir sistem bellek dökümü almak (elde etmek), aslında sistemin fiziksel belleğinin içeriğinin anında parmak izini (kopyasını) almanın tek doğru yöntemidir.

Dökümün içeriği arıza anındaki hafıza durumunu ne kadar doğru yansıtırsa, acil durumu o kadar ayrıntılı analiz edebileceğiz. Bu nedenle, sistemin fiziksel belleğinin güncel bir kopyasını, arızadan hemen önce kesin olarak tanımlanmış bir zamanda elde etmek son derece önemlidir. Ve bunu yapmanın tek yolu tam bir kilitlenme dökümü oluşturmaktır. Bunun nedeni oldukça önemsizdir - bir arızanın sonucu olarak veya yapay olarak simüle edilmiş bir durumun sonucu olarak sistem belleğinde bir çökme dökümü meydana geldiğinde, sistem şu anda acil durum işlevlerinin (KeBugCheckEx) kontrolünü alma aşamasındadır. kesinlikle değişmeyen (statik) durum, dolayısıyla, arızanın meydana geldiği an ile verinin ortama yazıldığı an arasında, fiziksel belleğin içeriğini hiçbir şey değiştirmez ve diske orijinal durumunda yazılır. Bu teoride böyledir, ancak bazen hayatta, ancak hatalı donanım bileşenleri nedeniyle bellek dökümünün kendisinin zarar görebileceği veya dökümü kaydederken istasyonun donabileceği durumlar vardır.

Çoğu durumda, kilitlenme hafıza dökümü oluşturma sürecinin başladığı andan hafıza içeriklerinin diske yazılmasının sonuna kadar, hafızadaki bilgiler değişmeden kalır.

Teorik olarak, bellek "parmak izinin" statikliği (değişmezliği), arıza hakkında bilgi görüntüleyen ve bellek dökümü oluşturma sürecini başlatan KeBugCheckEx işlevi çağrıldığında sistemin zaten tamamen durdurulmuş olması ve fiziksel belleğin içeriği, disk belleği dosyasının diskte kapladığı bloklara yazılır, ardından işletim sisteminin sonraki yüklenmesi sırasında sistem ortamındaki bir dosyaya sıfırlanır. Neredeyse bir kez hatalı bir durum gözlemledim anakart bellek dökümü kaydetmemi engelledi: a) döküm kaydetme mantığı çalışırken donma (işlem %100'e ulaşmadı), b) bellek dökümü dosyasına zarar verme (hata ayıklayıcı yapılardan şikayetçiydi), c) hafıza.dmp dökümü yazma sıfır uzunlukta dosyalar. Bu nedenle, bellek dökümü oluşturulduğunda sistem zaten tamamen durmuş olmasına ve yalnızca acil durum kodunun çalışmasına rağmen, hatalı donanım, operasyonun herhangi bir aşamasında istisnasız herhangi bir mantıkta ayarlamalar yapabilir.
Geleneksel olarak, ilk aşamada, disk belleği dosyasına tahsis edilen disk blokları bir Windows bellek dökümünü kaydetmek için kullanılır. Ardından, mavi ekran ve yeniden başlatmanın ardından veriler ayrı bir dosyaya taşınır ve ardından dosya, döküm türüne bağlı olarak bir kalıp kullanılarak yeniden adlandırılır. Ancak, başlayarak Windows sürümleri Vista'da bu durum değiştirilebilir; artık kullanıcıya seçilen dökümü bir takas dosyasının katılımı olmadan kaydetme ve başarısızlıkla ilgili bilgileri geçici bir dosyaya yerleştirme fırsatı veriliyor. Bu, disk belleği dosyasının boyutu ve konumuyla ilgili yanlış ayarlarla ilişkili yapılandırma hatalarını ortadan kaldırmak için yapıldı; bu, genellikle bellek dökümünü kaydetme işlemi sırasında sorunlara yol açtı.
Windows işletim sisteminin ne tür dökümler oluşturmamıza izin verdiğini görelim:

  • İşlem (uygulama) bellek dökümü;
  • Çekirdek bellek dökümü;
  • Tam bellek dökümü (sistemin fiziksel belleğinin kullanılabilir kısmının dökümü).

Tüm kilitlenme dökümleri iki ana kategoriye ayrılabilir:

  • Meydana gelen istisna hakkında bilgi içeren kilitlenme dökümleri. Genellikle oluşturulur otomatik mod, uygulamada/çekirdekte işlenmeyen bir istisna oluştuğunda ve buna göre sistem (yerleşik) hata ayıklayıcı çağrılabilir. Bu durumda, istisna hakkındaki bilgiler bir döküme kaydedilir; bu, sonraki analiz sırasında istisnanın türünün ve nerede oluştuğunun belirlenmesini kolaylaştırır.
  • İstisnai durum bilgileri olmadan kilitlenme dökümleri. Daha sonraki analiz için bir sürecin anlık görüntüsünün oluşturulması gerektiğinde genellikle kullanıcı tarafından manuel olarak oluşturulur. Bu analiz, hiçbir istisna meydana gelmediği için istisna türünün belirlenmesini değil, tamamen farklı türden bir analizi, örneğin bir sürecin veri yapılarının incelenmesini vb. ima eder.

Çekirdek bellek dökümü yapılandırması

Yönetici altında oturum açmalısınız hesap Bu bölümde açıklanan adımları gerçekleştirmek için.

Doğrudan Windows kilitlenme dökümü ayarlarını yapılandırmaya geçelim. Öncelikle aşağıdaki yollardan biriyle sistem özellikleri penceresine gitmemiz gerekiyor:

  1. "Bilgisayarım" simgesine - "Özellikler" - "Gelişmiş sistem ayarları" - "Gelişmiş" seçeneğine sağ tıklayın.
  2. "Başlat" düğmesi - "Denetim Masası" - "Sistem" - "Gelişmiş sistem ayarları" - "Gelişmiş".
  3. Klavye kısayolu "Windows" + "Duraklat" - "Gelişmiş sistem ayarları" - "Gelişmiş".

  4. kontrol sistemi.cpl,3
  5. Yürütme süresi Komut satırı(cmd):
    Sistem ÖzellikleriGelişmiş

Açıklanan eylemlerin sonucu "Sistem Özellikleri" penceresini açmak ve "Gelişmiş" sekmesini seçmektir:

Bundan sonra, "Önyükleme ve Kurtarma" bölümünde tıklayıp "Seçenekler"i seçip "İndirme ve Kurtarma" adlı yeni bir pencere açıyoruz:

Tüm kilitlenme dökümü parametreleri "Sistem Arızası" adı verilen bir parametre bloğunda gruplandırılır. Bu blokta aşağıdaki parametreleri ayarlayabiliriz:

  1. Olayları sistem günlüğüne yazın.
  2. Otomatik yeniden başlatma gerçekleştirin.
  3. Hata ayıklama bilgilerinin kaydedilmesi.
  4. Dosyayı boşalt.
  5. Mevcut bir döküm dosyasını değiştirin.

Gördüğünüz gibi listedeki parametrelerin çoğu oldukça önemsiz ve anlaşılması kolaydır. Ancak "Dump File" parametresini biraz daha detaylandırmak istiyorum. Parametre bir açılır liste olarak sunulur ve dört olası değere sahiptir:

Küçük bellek dökümü

Küçük bellek dökümü (mini döküm), hatayla ilgili en az miktarda bilgiyi içeren bir dosyadır. Olası tüm bellek dökümlerinin en küçüğü. Bariz dezavantajlara rağmen, mini dökümler genellikle daha sonraki çalışmalar için üçüncü taraf sürücü satıcılarına aktarılacak bir başarısızlıkla ilgili bilgi olarak kullanılır.
Birleştirmek:

  • Hata mesajı.
  • Hata değeri.
  • Hata parametreleri.
  • Arızanın meydana geldiği işlemci bağlamı (PRCB).
  • Çökme süreci ve tüm iş parçacıkları için süreç bilgileri ve çekirdek bağlamı (EPROCESS).
  • Çökmeye neden olan iş parçacığına ilişkin işlem bilgileri ve çekirdek bağlamı (ETHREAD).
  • Çökmeye neden olan iş parçacığının çekirdek modu yığını.
  • Yüklenen sürücülerin listesi.

Konaklama: %SystemRoot%\Minidump\MMDDYY-XXXXX-NN.dmp. MMDDYY sırasıyla ay, gün ve yılı gösterirken, NN dökümün seri numarasıdır.
Birim: Boyut, işletim sisteminin bitliğine bağlıdır: disk belleği dosyasında (veya DedicatedDumpFile'da belirtilen dosyada) 32 bit için yalnızca 128 kilobayt ve 64 bit işletim sistemi için 256 kilobayt gereklidir. Bu kadar küçük bir boyut belirleyemediğimiz için bunu 1 megabayta yuvarlıyoruz.

Çekirdek bellek dökümü

Bu tür döküm, çökme anındaki tüm çekirdek belleğinin bir kopyasını içerir.
Birleştirmek:

  • Çalışan işlemlerin listesi.
  • Geçerli iş parçacığının durumu.
  • Kilitlenme anında fiziksel bellekte bulunan çekirdek modu bellek sayfaları: çekirdek modu sürücü belleği ve çekirdek modu program belleği.
  • Donanıma bağımlı düzey (HAL) belleği.
  • Yüklenen sürücülerin listesi.

Çekirdek bellek dökümünde ayrılmamış bellek sayfaları ve kullanıcı modu sayfaları eksik. Katılıyorum, sistem arızası genellikle çekirdek modu kodu tarafından başlatıldığından, bir sistem arızası (BugCheck) sırasında kullanıcı modu işlem sayfalarının bizi ilgilendirmesi pek olası değildir.

Boyut: İşletim sistemi tarafından ayrılan çekirdek adres alanının boyutuna ve çekirdek modu sürücülerinin sayısına bağlı olarak değişir. Genellikle takas dosyasında (veya DedicatedDumpFile'da belirtilen dosyada) fiziksel belleğin yaklaşık üçte biri gerekir. Değişebilir.

Bellek dökümünü tamamla

Tam bellek dökümü, arıza anında tüm fiziksel belleğin (RAM) bir kopyasını içerir. Buna göre sistem belleğinin tüm içeriği dosyaya dahil edilir. Bu hem bir avantaj hem de büyük bir dezavantajdır, çünkü boyutu büyük miktarda RAM'e sahip bazı sunucularda önemli olabilir.
Birleştirmek:

  • "Görünür" fiziksel belleğin tüm sayfaları. Bu, donanım tarafından kullanılan alanlar dışında neredeyse tüm sistem belleğidir: BIOS, PCI alanı vb.
  • Arıza anında sistemde çalışmakta olan işlemlere ait veriler.
  • Sanal adres alanıyla eşlenmeyen ancak hatanın nedeninin araştırılmasına yardımcı olabilecek fiziksel bellek sayfaları.

Varsayılan olarak, tam bellek dökümü, BIOS tarafından kullanılan fiziksel bellek alanlarını içermez.
Konum: %SystemRoot%\MEMORY.DMP . Önceki dökümün üzerine yazılır.
Birim: Disk belleği dosyası (veya DedicatedDumpFile'da belirtilen dosya), fiziksel bellek boyutuna + 257 megabayta eşit bir birim gerektirir (bu 257 MB, belirli bir başlık + sürücü verisine bölünmüştür). Aslında bazı işletim sistemlerinde disk belleği dosyasının alt eşiği tam olarak fiziksel bellek boyutunun değerine ayarlanabilir.

Otomatik bellek dökümü

Windows 8/Windows Server 2012'den başlayarak, varsayılan tür olarak ayarlanan Otomatik Bellek Dökümü adı verilen yeni bir döküm türü sisteme eklenmiştir. Bu durumda, belirli bir arıza durumunda hangi bellek dökümünün kaydedileceğine sistemin kendisi karar verir. Üstelik seçimin mantığı, işletim sisteminin "çökme" sıklığı da dahil olmak üzere birçok kritere bağlıdır.

Windows bellek dökümü yapılandırmasını değiştirdikten sonra bilgisayarınızı yeniden başlatmanız gerekebilir.

Kayıt Defteri Ayarları

Kilitlenme dökümü parametrelerini tanımlayan kayıt defteri bölümü:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

Seçenekler:

Parametre Tip Tanım
Otomatik yeniden başlatma REG_DWORD BSOD oluştuğunda otomatik yeniden başlatmayı etkinleştirin/devre dışı bırakın.
CrashDumpEtkin REG_DWORD Oluşturulan dökümün türü.
  • 0 - bellek dökümü oluşturmayın;
  • 1 - tam bellek dökümü;
  • 2 - çekirdek bellek dökümü;
  • 3 - küçük bellek dökümü;
Döküm Dosyası REG_EXPAND_SZ Çekirdek bellek dökümü ve tam bellek dökümünün yolu ve adı.
Döküm Filtreleri REG_MULTI_SZ Bellek dökümü sürücü yığınındaki sürücü filtresi. Kilitlenme dökümleri oluşturma aşamasında yeni işlevler eklemenizi sağlar. Örneğin, dökümün içeriğini şifrelemek. Değerin değiştirilmesi önerilmez.
GünlükEtkinliği REG_DWORD Sistem günlüğüne bir olayın kaydedilmesi.
MinidumpDir REG_EZPAND_SZ Küçük bellek dökümünün yolu ve adı.
MinidumpsCount REG_DWORD Maksimum sayıda küçük bellek dökümü. Aşıldığında eski sürümlerin üzerine yazılmaya başlar.
Üzerine yaz REG_DWORD Mevcut bir döküm dosyasını değiştirin. Yalnızca çekirdek bellek dökümü ve tam bellek dökümü için.
Sayfa Dosyası Boyutunu Yoksay REG_DWORD Geçici (ara) bellek dökümü depolama yeri olarak standart sayfa dosyasını yok sayar. Bellek dökümünün ayrı bir dosyaya yazılması gerektiğini belirtir. DedicatedDumpFile seçeneğiyle birlikte kullanılır.
Adanmış Döküm Dosyası REG_EZPAND_SZ Bellek dökümünü kaydetmek için geçici alternatif dosyanın yolu ve adı. İkinci geçişte veriler yine de DumpFile/MinidumpDir'e taşınacaktır.

El ile bellek dökümü oluşturma

Yukarıda, kritik bir hata, yani çekirdek kodunda işlenmeyen bir istisna durumunda otomatik olarak sistem kilitlenme dökümleri oluşturmaya yönelik ayarları açıkladık. Ama içinde gerçek hayatİşletim sistemi çökmesine ek olarak, belirli bir zamanda sistem bellek dökümü almanın gerekli olduğu durumlar da vardır. Bu durumda nasıl olunur? Tüm fiziksel belleğin anlık görüntüsünü elde etmeye yönelik yöntemler vardır; örneğin WinDbg/LiveKD hata ayıklayıcılarındaki .dump komutunu kullanmak. LiveKD, çalışan bir sistemde Kd çekirdek hata ayıklayıcısını yerel modda çalıştırmanıza izin veren bir programdır. WinDbg hata ayıklayıcısının da benzer bir özelliği vardır. Ancak, anında döküm yöntemi doğru değildir çünkü bu durumda oluşturulan döküm "tutarsızdır" çünkü dökümü oluşturmak zaman alır ve çekirdek modu hata ayıklayıcısının kullanılması durumunda sistem çalışmaya ve hata ayıklamaya devam eder. hafıza sayfalarında değişiklik yapar.

Tüm Windows sistemleri, önemli bir hata tespit edildiğinde, RAM içeriğinin kilitlenme dökümünü (anlık görüntüsünü) oluşturur ve bunu belleğe kaydeder. Sabit disk. Üç tür bellek dökümü vardır:

Tam bellek dökümü – RAM'in tüm içeriğini kaydeder. Görüntü boyutu RAM + 1 MB (başlık) boyutuna eşittir. Büyük miktarda belleğe sahip sistemlerde döküm boyutu çok büyük olacağından çok nadiren kullanılır.

Çekirdek bellek dökümü – yalnızca çekirdek moduyla ilgili RAM bilgilerini kaydeder. Kullanıcı modu bilgileri, sistem çökmesinin nedeni hakkında bilgi içermediğinden kaydedilmez. Döküm dosyasının boyutu RAM'in boyutuna bağlıdır ve 50 MB (128 MB RAM'li sistemler için) ila 800 MB (8 GB RAM'li sistemler için) arasında değişir.

Küçük bellek dökümü (mini döküm) - oldukça az miktarda bilgi içerir: parametreler içeren bir hata kodu, sistem çökmesi sırasında RAM'e yüklenen sürücülerin listesi vb., ancak bu bilgi hatalı sürücüyü tanımlamak için yeterlidir. . Bu tür dökümün bir diğer avantajı da küçük dosya boyutudur.

Sistem kurulumu

Buna sebep olan sürücüyü tespit etmek için küçük bir hafıza dökümü kullanmamız yeterli olacaktır. Sistemin bir çökme sırasında mini dökümü kaydetmesi için aşağıdaki adımları uygulamanız gerekir:

Windows XP için Windows 7 için
  1. Benim bilgisayarım Özellikler
  2. Sekmeye git Bunlara ek olarak;
  3. Seçenekler;
  4. Tarlada Hata Ayıklama Bilgilerini Yazma seçmek Küçük bellek dökümü (64 KB).
  1. Simgeye sağ tıklayın Bilgisayar içerik menüsünden seçim yapın Özellikler(veya Kazan+Duraklat tuş birleşimi);
  2. Soldaki menüde öğeye tıklayın Gelişmiş sistem Ayarları;
  3. Sekmeye git Bunlara ek olarak;
  4. İndirme ve kurtarma alanında düğmeye tıklamanız gerekir. Seçenekler;
  5. Tarlada Hata Ayıklama Bilgilerini Yazma seçmek Küçük bellek dökümü (128 KB).

Tüm manipülasyonlar tamamlandıktan sonra, her BSoD'den sonra .dmp uzantılı bir dosya C:\WINDOWS\Minidump klasörüne kaydedilecektir. "" materyalini okumanızı tavsiye ederim. Ayrıca “kutucuğunu da işaretleyebilirsiniz. Mevcut döküm dosyasını değiştir" Bu durumda, her yeni kilitlenme dökümü eskisinin üzerine yazılacaktır. Bu seçeneği etkinleştirmenizi önermiyorum.

BlueScreenView kullanarak kilitlenme dökümünü analiz etme

Böylece, Ölümün Mavi Ekranı ortaya çıktıktan sonra sistem yeni bir kilitlenme hafıza dökümü kaydetti. Dökümü analiz etmek için BlueScreenView programını kullanmanızı öneririm. Ücretsiz olarak indirilebilir. Program oldukça kullanışlıdır ve sezgisel bir arayüze sahiptir. Kurduktan sonra yapmanız gereken ilk şey, sistemdeki bellek dökümlerinin depolanacağı konumu belirtmektir. Bunu yapmak için “ menü öğesine gidin Seçenekler” ve “ seçeneğini seçin GelişmişSeçenekler" Radyo düğmesini seçin “ Yükitibarenthetakip etmeMini Boşaltmadosya”ve dökümlerin depolandığı klasörü belirtin. Dosyalar C:\WINDOWS\Minidump klasöründe saklanıyorsa “ Varsayılan" Tamam'a tıklayın ve program arayüzüne gidin.

Program üç ana bloktan oluşur:

  1. Ana menü bloğu ve kontrol paneli;
  2. Döküm listesi bloğunun çökmesi;
  3. Seçilen parametrelere bağlı olarak şunları içerebilir:
  • mavi ekran görünmeden önce RAM'deki tüm sürücülerin listesi (varsayılan olarak);
  • RAM yığınında bulunan sürücülerin listesi;
  • BSoD ekran görüntüsü;
  • ve kullanmayacağımız diğer değerler.

Bellek dökümü listesi bloğunda (şekilde 2 numarayla işaretlenmiştir), ilgilendiğimiz dökümü seçin ve RAM'e yüklenen sürücülerin listesine bakın (şekilde 3 numarayla işaretlenmiştir). Bellek yığınındaki sürücüler pembe renktedir. Onlar BSoD'nin nedenidir. Daha sonra sürücünün Ana Menüsüne gidin, hangi cihaza veya programa ait olduklarını belirleyin. Öncelikle şuna dikkat edin sistem dosyalarıçünkü sistem dosyaları her durumda RAM'e yüklenir. Resimdeki hatalı sürücünün myfault.sys olduğunu görmek kolaydır. Bu programın özellikle Durdurma hatasına neden olmak için başlatıldığını söyleyeceğim. Arızalı sürücüyü belirledikten sonra güncellemeniz veya sistemden kaldırmanız gerekir.

Bir BSoD oluştuğunda programın bellek yığınında bulunan sürücülerin bir listesini göstermesi için “ menü öğesine gitmeniz gerekir. Seçenekler“menüye tıklayın” Daha düşükBölmeMod” ve “ seçeneğini seçin SadeceSürücülerKurmakİçindeYığın” (veya F7 tuşuna basın) ve hatanın ekran görüntüsünü göstermek için “ MaviEkraniçindeXPStil” (F8). Tüm sürücülerin listesine geri dönmek için “ TümSürücüler” (F6).




Tepe