Öyleyse, tekrarlayan bir mavi ölüm ekranınız var ve birçok BSoD gibi, bunun nedeni kötü bir sürücünün suçlanmasıdır. Ancak, ekran size doğru bilgileri vermez, çünkü hiçbir sürücü içermez veya yanlış olarak davranan bir sistem sürücüsünü listelediği için.

Sürücü Doğrulayıcı, Windows XP'den tüm Windows sürümlerinde bulunan ücretsiz bir yardımcı programdır. Soruna neden olan sorunla karşılaşana kadar PC'nizdeki sürücülerin her birini tam anlamıyla denetler, kasıtlı olarak aynı mavi ekranı oluşturur, ancak daha sonra bilgileri bir günlük dosyasına yazarak sorunu saptamanıza yardımcı olur.

Sürücü sürücüsünü çalıştır

Aynı mavi ekranı çok kullanıyorsanız ve aktif olmak ve düzeltmek istiyorsanız, Sürücü Doğrulayıcıyı nasıl kullanacağınız aşağıda açıklanmıştır.

  1. Düğmeye bas Başlat
  2. Tıklayın " Yürüt "...
  3. Giriş CMD ve bas Giriş.
  4. Yeni pencerede girin doğrulayıcı ve bas Giriş.


Windows Vista ve 7'de:

  1. Düğmeye bas Başlat
  2. Giriş CMD kutuya girin ve tıklayın Giriş.
  3. Yeni pencerede girin doğrulayıcı ve bas Giriş.


Windows 8 ve 8.1'de:

  1. Tuşuna basın Windows + X
  2. Tıklayın " Komut satırı "(" Yönetici ") (Windows PowerShell (Yönetici) Windows 8.1'de)
  3. Yeni pencerede girin doğrulayıcı ve bas Giriş.


Tüm Windows sürümleri:

  1. Seçtiğinizden emin olun özel ayarları özelleştirme (kod geliştiriciler için) .
  2. Tıklayın " Daha ileri" .
  3. "Seçin" Tam listeden özel ayarları seçin " .
  4. Tıklayın " Daha ileri" .
  5. Seçimi kaldır düşük kaynak sistem modellemesi ve bekleme G / Ç istekleri ... (Bu ikisi bilgisayarınızda gereksiz iş yüküne neden oluyor.) Diğer her şeyin seçili olduğundan emin olun.
  6. Çift tıklama " Daha ileri" .
  7. "Seçin" Listeden sürücü adlarını seçin " .
  8. Tıklayın " Daha ileri" .
  9. Bu ekranda yazanların dışındaki tüm sürücüleri seçin. Microsoft şirketi Tedarikçi altında. Bir Microsoft sürücüsünün bu soruna neden olması pek olası değildir.
  10. Tıklayın " Bitti " .


Not. Mavi ekran oluşmaya devam ettiği için yukarıdaki adımları tamamlayamıyorsanız, önce indirmeyi deneyin.

Bu noktada bilgisayarınızı yeniden başlatmalısınız. Ardından daha önce yaptığınız şeyi yaparak BSoD'yi tekrar çağırmayı deneyin. Windows size yardımcı olmak için sürücülerinize fazladan bir yük bindirir. BSoD'yi yeniden üretemiyorsanız, bilgisayarınızı gece boyunca başlatmayı deneyin. BSoD yeniden görünür görünmez bilgisayarınızı yeniden başlatın ve Minidump dosyasını okuyun.


Bir döküm dosyasını okumak

Sürücü Doğrulayıcı başlayacak, mavi ekran ve bir günlük dosyası yazacaktır. Bu günlük dosyası C: \\ Windows \\ Minidump \\ konumunda bulunur. Okuyun ve hangi sürücünün bu soruna neden olduğunu göreceksiniz. Bilgisayarınızın hangi donanım parçasını kullandığını görmek için sürücü adını aramayı deneyin.

Peki nasıl okuyorsunuz? Microsoft'tan indirebileceğiniz bir hata ayıklama aracına ihtiyacınız var.

VE . SDK'yı indirin, kurun, Hata Ayıklama Araçları'nı seçin ve diğer her şeyin seçimini kaldırın.

Windows'un önceki sürümleri için hata ayıklama araçlarının artık mevcut olmadığını unutmayın; döküm dosyasını analiz için bir Microsoft teknisyenine göndermeniz gerekecektir.


Kurduktan sonra, başlangıç \u200b\u200bekranında bulun. Windbg (x64) olarak adlandırılır. Çalıştırın.

  1. Tıklayın " Dosya" , sonra " Kilitlenme aç " .
  2. Çevirmek C: \\ Windows \\ Minidump \\ ve içindeki .dmp dosyasını açın.
  3. Ortaya çıkan dosyanın altına bakın, burada satırda " Muhtemelen neden oldu " ... Bu, hangi sürücünün soruna neden olduğunun iyi bir göstergesidir.

Sürücüyü düzelt

Bu donanımla ilişkili sürücüyü güncelleyin:

  1. Düğmeye bas Başlat
  2. Tıklayın Kontrol Paneli
  3. Tıklayın " Klasik görünüme geç "
  4. Çift tıklama Sistem
  5. Git "Ekipman" sekmesi
  6. Tıklayın aygıt Yöneticisi
  7. Tıklayın " Sürücüyü güncelle ".

Windows Vista ve 7'de:

  1. Düğmeye bas Başlat
  2. Tıklayın Kontrol Paneli
  3. Çift tıklama aygıt Yöneticisi
  4. Soruna neden olan cihazı bulun
  5. Sağ tıklayın
  6. Tıklayın " Sürücüyü güncelle ".


Windows 8 ve 8.1'de:

  1. Tuşuna basın Windows + X
  2. Tıklayın Kontrol Paneli
  3. Görüntüle küçük ikonlar
  4. Tıklayın aygıt Yöneticisi
  5. Soruna neden olan cihazı bulun
  6. Sağ tıklayın
  7. Tıklayın " Sürücüyü güncelle ".

Veya Sürücü Doğrulayıcı ile karışıklığı önlemek için uygulamamızı kullanın. Driver Reviver, bilgisayarınızdaki tüm mevcut sürücüleri otomatik olarak günceller ve özellikle bunun gibi etkisiz sürücüleri en son ve en iyi sürüme güncellemek için iyidir.

Sürücü sorununu çözdükten sonra, Sürücü Doğrulayıcıyı devre dışı bırakmak isteyeceksiniz.

Sürücü doğrulayıcıyı devre dışı bırakın

Sürücü Doğrulayıcı'yı kullanmayı tamamladıktan sonra, çalışırken PC'nizde oldukça zor olduğu için devre dışı bırakmak isteyeceksiniz.

Tüm Windows sürümlerinde:

  1. Yukarıdaki adımları kullanarak Sürücü Doğrulayıcıyı tekrar başlatın.
  2. "Seçin" Mevcut ayarları silin " .
  3. Tıklayın " Bitti " .
  4. Bilgisayarınızı yeniden başlatın.


Lütfen ileride başvurmak üzere bu makaleyi yer imlerine ekleyin, böylece mavi ekranınız olduğunda sorunu çözebilirsiniz. Ayrıca, özel mavi ölüm ekranınızla nasıl mücadele edeceğiniz konusunda daha fazla ipucu için etkileşimli bölümümüze göz atın ve hata adınızı girin. İyi şanslar!

8021

Mavi ölüm ekranının en olası nedenlerinden biri, yanlış çalışan sürücülerdir. Daha sonra döküm dosyasını analiz ederek hatanın kesin nedenini belirleyebilirsiniz. BSOD, ancak bu her zaman böyle değildir. Bazı durumlarda, çöplüklerin en kapsamlı analizi ile bile sorunun kaynağını belirlemek mümkün değildir. Bu tür durumlarda, gelişmiş sürücü testleri için tasarlanmış standart bir Windows yardımcı programı yardımcı olabilir.

Arka planda çalışırken, yalnızca sürücülerin çalışmasını izlemekle kalmaz, aynı zamanda çeşitli "Stresli" durumlar, örneğin, RAM eksikliği. Test sırasında elde edilen bilgiler "İlave" dosyayı dökmek için DMP... Sürücü Doğrulayıcı, G / Ç hatalarını analiz etmenize, arabellek taşmalarını kontrol etmenize, mekanizmadaki hataları belirlemenize olanak tanır IRQL vb. Kısacası, program, bir sürücünün sistem çökmesine neden olabileceği durumları belirlemenizi sağlar. BSOD.

Yardımcı programın özgüllüğü, sıradan kullanıcılar tarafından kullanımını hiçbir şekilde dışlamaz. Herkes onun yardımıyla bir rapor oluşturabilir; kod çözme ile uğraşmak bambaşka bir konudur. Ancak, sonuçta ortaya çıkan çöplükte olduğu gibi, bunu sıradan kullanıcılardan kimse istemez, o zaman analizi, bazı tanınmış bilgisayar forumlarında yardım isteyerek profesyonellerin omuzlarına emanet edilebilir.

Önemli Not: yardımcı programı kullanmadan önce şiddetle tavsiye edilir bir sistem geri yükleme noktası oluştur veya tam bir yedek. Windows 8 ve 8.1'de, modu da etkinleştirmeniz gerekecektir. güvenli Önyükleme... Bu, Sürücü Doğrulayıcı'nın çalışması sırasında beklenmeyen hatalar olması durumunda gereklidir. Bu, önyüklemenizi, test modunu devre dışı bırakmanızı ve sistemi geri almanızı sağlayacaktır.

Yardımcı programı şu komutla çalıştırabilirsiniz doğrulayıcı.

Yöneticinin bir sonraki penceresinde, testin gerçekleştirileceği parametreleri işaretleyin. (tümü eksiksizlik için seçilebilir).

Üçüncü pencerede hiçbir şey bırakamazsınız.

Dördüncü pencerede, yardımcı program test için bir sürücü grubu seçmeyi teklif edecektir.

Varsayılan olarak, tüm imzasız sürücüler risk grubuna ait olarak seçilir, ancak ayrıca Tarama Yöneticisinin beşinci penceresinde onları işaretleyerek sürücüleri kendiniz de belirtebilirsiniz.

Hepsi bu. Bilgisayarı yeniden başlattıktan sonra, sürücü kontrol modu etkinleştirilecektir. Bunca zaman, bilgisayar göründüğü ana kadar her zamanki gibi kullanılabilir. BSOD... Bundan sonra, döküm dosyasını dizinden kopyalayın C: / Windows / Minidump ve analiz için gönderin. Sürücü testi etkinleştirilmiş bir bilgisayarı başlatmak biraz daha uzun sürebilir, bu yüzden paniğe kapılmayın. Bu normal. Tüm verileri aldıktan sonra, yardımcı programın grafik arayüzündeki öğe seçilerek hata ayıklama modu manuel olarak devre dışı bırakılmalıdır. "Mevcut parametreleri silin".

Sürücü Doğrulayıcı yardımcı programı (verifier.exe), BSOD'den sonra bellek dökümlerinin analizi sorunlu sürücüyü bulmaya izin vermediğinde sorunlu sürücüleri analiz etmek için tasarlanmıştır. Sürücü Doğrulayıcı, en sorunlu durumlarda bir "cankurtaran" dır.

Sürücü Doğrulayıcı ile şunları yapabilirsiniz:

    sürücü stres testi (kaynak eksikliğini simüle eder);

    arabellek taşma denetimi;

    belirli bir IRQL'de yanlış işlem sırasında ortaya çıkan hataların kontrolü;

    girdi-çıktı hatalarının analizi;

    kilitlenme durumlarının tespiti vb.

Sürücü Doğrulayıcı şu durumlarda yararlıdır:

    yönetici (kullanıcı) sistemin çökmesine neden olanın bu sürücü olduğundan şüphelenir ve bunun gerçekten böyle olup olmadığını ayrıca kontrol etmek ister;

    sürücülerini test etmek isteyen sürücü geliştiricileri;

    bSOD'den sonra bir dökümü analiz ederken, sorunlu bir sürücü bulamazsınız.

Bellek dökümlerini analiz etmenin en zor durumlarından biri, bir sürücünün kendisi tarafından ayrılan arabelleğin bitiminden önce veya sonra yanlışlıkla verilerin üzerine yazmasıdır. Bu gibi durumlarda, işletim sistemi çekirdeğinde hatalar oluşur (örneğin, BSOD, hatanın ntoskrnl.exe dosyasında oluştuğunu gösterdikten sonra dökümün analizi).

Belirli bir örnekle benzer bir durumu görelim. NotMyfault yardımcı programını kullanarak BSOD - "Tampon taşması" diyoruz.

Windbg kullanılarak yapılan döküm analizinin sonucu aşağıdaki ekte yer almaktadır.

Aldığımız döküm analizine göre.

1. Arg1: 00000007, Zaten serbest bırakılmış olan serbest havuz girişimi (zaten serbest bırakılmış bir havuzu serbest bırakma girişimi vardı)

2. IMAGE_NAME: ntkrpamp.exe (sistemin özünün bununla ilgisi var)

Bu tür hatalarla doğrulayıcı kurtarmaya gelir.

Doğrulayıcıyı çalıştırın.

"Standart olmayan parametreler oluştur" u seçiyoruz. Ardından, "Listeden parametreleri seçin" i seçin.

“Kaynak eksikliğinin taklidi” dışında her şeyi seçiyoruz.

Daha sonra “Bu listeye yüklenmemiş sürücüleri seç” i seçip NotMyfault.exe programı ile aynı dizinde bulunan myfault.sys sürücüsünün yolunu belirtiyoruz.

Sonra sürücüyü işaretleriz ve "Bitir" i tıklarız. Bundan sonra bilgisayarı yeniden başlatmamız gerekiyor.

Başlangıçta olduğu gibi aynı eylemleri gerçekleştiriyoruz. NotMyfault.exe'yi çalıştırın, "Buffer overflow" u seçin ve "Crash" e basın. Fark ettiğiniz gibi, çökme hemen gerçekleşmeyebilir, çünkü bu bellekle kimin ve ne zaman çalışmaya çalışacağı önceden bilinmemektedir. Aşağıdaki görselde görebileceğiniz gibi, doğrulayıcı sayesinde sistem sorunlu sürücüyü belirleyebilir.

BSOD'den sonra belleği boşaltmak için windbg.exe'de! Analyze –v kullanarak size bir analiz vereyim.

Doğrulayıcı program, çekirdekte bulunan normal bellek yerine kontrol edilen sürücünün böyle bir hatayı algılamak için tasarlanmış özel bir havuz kullanmasını sağlar. Bu sayede BSOD'ye giden sürücüyü bulabilirsiniz.

Analiz sonuçlarına bakarsak aşağıdakileri görüyoruz.

1.DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION (d6) - bu, doğrulayıcının oluşturduğu hatalardan biridir

2. IMAGE_NAME: myfault.sys - soruna yol açan sürücü.

Bu nedenle, BSOD'den sonraki bellek dökümü analizi "suçlu sürücüyü" bulmaya izin vermiyorsa, verifier.exe programını kullanın (bellek eksikliği dışında tüm kontrolleri kurun).

Sürücü Doğrulayıcı'yı (verifier.exe) kullanmanın en kolay yolu, aşağıdaki parametrelerle çalıştırmaktır:

doğrulayıcı / standart / sürücü sürücü dosya adı

Gönderi Görüntüleme: 1042

Sürücülerle yapılacak herhangi bir deneyin tehlikeli olduğu ve sisteme zarar verebileceği konusunda sizi uyarıyoruz. Önceden sistemin bir yedeğini almak ve ardından başka bir şüpheli sürücüyü Windows'tan silerek parmaklarınızı çaprazlamamak daha iyidir.

Ve azarlamazlar da pencereler itibaren Microsoft, zavallı şeyi aynı zamanda inek ve buggy ve hatta dengesiz olarak adlandırmak. Ancak şimdi kimse bundan vazgeçmek için acele etmiyor ve genel olarak bundan vazgeçmeleri pek olası değil. Bu nedenle, zayıf geliştiricileri azarlamak ve anlamsız bir alev atmak yerine, şunu bulmak iyi olur: aslında, sistem neden buggy? Sana küçük bir sır vereyim. Kötü şöhretli ölüm ve güvencesiz çalışma ekranlarında pencereler vakaların büyük çoğunluğunda üçüncü taraf sürücüler suçludur ve işletim sisteminin kendisinin bununla kesinlikle hiçbir ilgisi yoktur. Şimdi size bu tür sürücüleri nasıl bulacağınızı ve sistemden nasıl kaldıracağınızı anlatacağız.

Sürücü tasarımındaki kusurlar çok farklı nitelikte olabilir: mavi ölüm ekranına düşmekten ( BSOD - Ölümün Mavi Ekranı) ve bilgisayarın yavaşlamasına ve bazı uygulamaların sürücüyle tamamen ilgisiz garip davranışlarına.

Mavi Ölüm Ekranı dikkat çekicidir (ironi olmadan!) Çünkü ciddi bir sorunun varlığını açıkça işaret ediyor ve nerede kazılacağına dair bir ipucu veriyor. Genellikle (ama her zaman değil) "suçlu" sürücünün adı doğrudan mavi ölüm ekranının sağ üst köşesinde görüntülenir. Bununla birlikte, orada olmayabilir veya daha da kötüsü, tamamen gereksiz bir sürücünün adı orada olabilir.

Yani, örneğin, bir ekran kartından oldukça yaygın bir sürücü Matrox G450 grafik alt sisteminin temelini oluşturan yapıları yok etme eğilimindedir pencereler 2000 , bunun sonucunda sistem sürücüsünün adı BSOD'de görüntüleniyor win32k.sys, KULLANICI ve GDI işlevlerinin önemli bir bölümünü uygulayan ve elbette bununla hiçbir ilgisi olmayan. Öyleyse, mavi ölüm perdesinin tanıklığının yorumlanması sihir, sezgi, bilim ve sanattır - her şeyden biraz.

Sürücü kusurlarına ek olarak, mavi ölüm ekranlarına demir arızaları da neden olabilir; örneğin, hız aşırtmalı işlemci, hatalı RAM, çarpık sabit disk denetleyicisi, yuvaya tam olarak takılmamış bir PCI kartı, konektörlerden birinde temassız, kötü bir güç kaynağı, şişmiş elektrolitik kondansatör anakart. Ve sonuncusu çeşitli nedenlerle patladı: yakındaki bir işlemcinin aşırı ısınması nedeniyle, üretici tarafından "uygun olmayan" seramik kondansatör eksikliği (bunun sonucunda RF bileşeni elektrolitten geçer ve onu güçlü bir şekilde ısıtır), son olarak düğümdeki anahtar transistörlerin sızıntısı nedeniyle dengeleyici. Bu nedenle, odun kesmeden önce, üzerinde oturduğumuz ütünün tamamen sağlam olduğundan emin olmanız gerekir. Bu nasıl yapılabilir?

Demir ile hesaplaşma

Donanım arızalarının neden olduğu mavi ölüm ekranları, doğası gereği kendiliğinden olup, öngörülemez ve belirli kullanıcı eylemlerinden bağımsız olarak görünür. Uygulamalar ayrıca birçok farklı yerde kritik hatalar üretmeye başlıyor ve sistem tarafından sağlanan hata kodları, adresler ve diğer bilgiler her durumda farklı olacak! Bu arada, kablosuz ağlar gibi G / Ç aygıtlarından gelen eşzamansız istekleri işleyen sürücüler hemen hemen aynı şekilde davranır. Kusurlu sürücülerin neden olduğu mavi ölüm ekranları, kural olarak, belirli bir dizi eylemi gerçekleştirirken meydana gelir ve az çok sabit bilgi içerir.

Donanımdan tüm şüpheleri gidermek için, sisteme başka bir sabit sürücü bağlamak, bakire kurmak yeterlidir. pencereler ve bir süre üzerinde çalışın. Mavi ölüm ekranları kaybolmazsa, o zaman gerçekten de demir suçludur ve onu değiştirme zamanı gelmiştir. Arızalı bileşenleri bulmak, bir dahaki sefere bırakacağımız ayrı bir görüşme konusu, ancak şimdilik kollarımızı sıvayarak bu sinsi sürücüleri yakından ele alacağız.

Doğrudan ateş kutusuna sertifikası olmayan yakacak odun

Sürücü geliştirme için gerekli tüm araç seti ( DDK - Sürücü Geliştirme Kiti), Microsoft, beraberindeki belgelerle birlikte ücretsiz olarak dağıtır. Sürücüler, bazen çok hatalı ve dengesiz.

Böyle bir kaosun olmasını önlemek için, Microsoft eski zamanlarda, sürücülerin kendilerine dayatılan gereksinimlere uygunluklarını onaylamak için bir prosedür başlattı ve ardından sürücüye dijital bir imza verildi. Veya ... yayınlanmadı ve revizyon için gönderildi. Ve sertifikasyon, ölümcül hataların ve geliştirme kusurlarının olmayacağını garanti etmeyen resmi bir prosedür olsa da, açıkçası "öncü" sürücülerin bazılarını yine de filtreler.

İdeal olarak, sistemde yalnızca dijital olarak imzalanmış sürücüler tutulmalıdır. Dijital imza bir sigorta poliçesi olmasa da, varlığı halihazırda belirli bir gelişme kültürüne işaret etmektedir. Dijital imzası olmayan sürücüler, çantasında kedisi olan bir kediden daha kötüdür ve mümkün olduğunda imha edilmelidir (özellikle birçoğu sistemin derinliklerine nüfuz eden ve istikrarsızlığına neden olan rootkit'ler veya agresif savunma mekanizmaları tarafından yüklenen kötü amaçlı programlardır. ). Kısacası, demagojiyi üretmeyecek, ancak basit bir soruyu yanıtlamaya çalışacağız: dijital imza olmadan bir sürücü listesi nasıl yapılır?

Yardımcı program bize bu konuda yardımcı olacaktır. sigverif.exe, işletim sisteminin standart teslimat setinde bulunur ve WINNT \\ System32 dizininde bulunur. Başlatıyoruz ve bir iletişim kutusu görüyoruz. "Gelişmiş" düğmesine basın ve "Ara" sekmesinde, radyo düğmesini "İmzasız sistem dosyaları hakkında bilgilendir" konumundan (varsayılan olarak durduğu yer) "Dijital imza ile imzalanmamış diğer dosyaları ara" konumuna taşıyarak seçim kriterlerini ayarlayın. Bundan sonra, "Arama parametreleri" içinde "Aşağıdaki türdeki dosyaları ara" kutusunu açın ve "* .sys" öğesini seçin ve aşağıda "C: \\ WINNT" araması için klasörü belirtiriz, "Alt klasörler dahil" kutusunu işaretlediğinizden emin olun.

Aslında, tam anlamıyla, sürücülerin sys uzantısına sahip olmaları gerekmez ve her zaman WINNT dizini ile sınırlı değildirler, "kendi" uygulamalarının dizinlerinde bulunurlar ve hatta bazı uygulamalar sürücüleri kendi içlerinde saklarlar! Başladıktan hemen sonra (veya başka bir zamanda) dosyayı geçerli veya geçici dizindeki diske kaydederler, sürücüyü belleğe yükler ve ... hemen diskten silin! Bu sadece kötü amaçlı virüsler tarafından değil, aynı zamanda ünlü Windows gezgini Mark Russinovich'in bazı yardımcı programları gibi oldukça saygın programlar tarafından da yapılmaktadır.

Bu nedenle, deneyin saflığı için, şu anda bellekte bulunan sürücülerin bir listesini almak ve bunları diskte bulunan sürücülerle karşılaştırmak hiç zarar vermez. Sürücülerin yüklenmesi / kaldırılması işletim sistemini yeniden başlatmadan ücretsiz olarak yapılabildiğinden, "şu anda" kelimesi anahtardır. DDK'da bulunan, Microsoft'un sunucusundan indirilebilen drivers.exe komut satırı yardımcı programını çalıştırarak bu işlemi birkaç kez yapmanız önerilir. Herhangi bir komut satırı anahtarı olmadan başlatılan yardımcı program sürücüler.exe sistemde genellikle çok fazla sürücü olduğundan ve ekrana sığmadıklarından, tüm bilgileri ekrana döker ki bu iyi değildir. Bununla birlikte, din, çıktı akışını Word veya not defteri gibi herhangi bir metin düzenleyicisi tarafından açılabilen bir metin dosyasına (sürücüler.exe\u003e \u200b\u200bdosya-adı.txt) yönlendirmemize izin verir. O zaman geriye kalan tek şey dikey bir blok (not defteri izin vermez) seçmek ve sürücülerin bir listesini almaktır. Doğrudan işletim sisteminin çekirdeğinden!

C: \\ WINNT \\ dizininde bu sürücülerden en az biri eksikse, dijital imzası doğrulanmayacaktır! Doğal olarak, böyle bir sürücü hemen dikkat çekiyor ve mantıklı bir sorumuz var: nereden geliyor? Öncelikle diskteki tüm dizinleri tarıyoruz; orada değilse, Soft-Ice'ın CreateFileW işlevinde bir kesme noktası ayarlayın ve ona iletilen argümanlara bakın. Er ya da geç, buggy sürücümüzle karşılaşacağız, bundan sonra sadece onu ortaya çıkaran işlemin adının görüntülendiği Soft-Ice ekranının sağ alt köşesine bakmak için kalacak. Daha fazla ayrıntı için, elektronik bir kopyası ftp- veya http-server nezumi.org.ru'da ve diskimizde bulunan "Kaynak Kodsuz Programlarda Hata Ayıklama Tekniği" kitabına bakın. Ve işe yaramaya devam ediyoruz sigverif.exe.

"Tamam", "Başlat" ı tıkladıktan sonra, ekranda ilerlemenin ilerlemesini gösteren bir "termometre" görünecek ve sabit disk sadece sahip olduğu tüm kafalarıyla hışırdamaya başlayacaktır. İşin tamamlanmasının ardından dijital imzası olmayan sürücülerin bir listesi derlenecek ve ekranda görüntülenecektir.

Bazı kahramanlar, sapkınlık sistemini temizlemek için tüm imzasız sürücüleri kaldırmayı öneriyorlar - sonra, diyorlar ki, tüm sorunlar ortadan kalkacak. Bu nasıl yapılabilir? En kaba çözüm, bunları FAR veya Explorer aracılığıyla (elbette yönetici haklarıyla!) Alıp diskten silmektir. Ancak böyle bir işlemin sonuçları çok feci olabilir ve kaşifteki sürücü simgesine sağ tıklayarak, üreticinin adını "Özellikler" bölümünde bulmak daha iyidir, bu sürücüyü hangi uygulamanın / donanımın yüklediğini belirleyebilir ve uygar bir şekilde kaldırabilirsiniz. Doğru, burada bir "ama" var.

Sürücü şekilde vurgulanmıştır. g400m.sysMatrox G450 kartı ile birlikte gelen ve Matrox hiç de zayıf bir şirket olmasa da dijital bir imza almadı (ya Microsoft vermedi ya da Matrox'un kendisi rahatsız etmek istemedi). Doğal olarak, onu sistemden çıkardıktan sonra, SVGA modunu unutmanız gerekecektir. Bununla birlikte, en son sürücü sürümünü indirerek (zaten dijital olarak imzalanmıştır) Matrox web sitesine gidebilirsiniz. Sadece şimdi ... hem imzalı hem de imzasız sürümler birçok ölümcül hata içeriyor, özellikle belirli koşulların bir sonucu olarak, bindirme moduna geçmeye çalışırken, sistem bir BSOD'ye çöküyor, çünkü sürücü zaten boşaltılan belleği serbest bırakmaya çalışıyor.

Bu nedenle, dijital bir imzanın varlığı / yokluğu tek başına hiçbir şey ifade etmez ve sadece imzalı sürücüler kullansak bile, bu bize herhangi bir istikrar garantisi vermez.

Bu, makalenin ikinci bölümüne, yani sürücüleri savaşa yakın koşullarda test etmeye devam ettiğimiz yerdir.

Yakacak odun için gerçek bir test düzenliyoruz

DDK harika bir yardımcı program içerir Sürücü DoğrulayıcıSürücüler için en ağır koşulları oluşturan, aşırı ve intihar sınırında olan, başarısızlık olasılığının maksimum olduğu ve arızalı sürücünün adı en yüksek doğrulukla belirleniyor (geliştirme kusurlarından dolayı bile kendi kendine zarar görmüyor, ancak diğer kişilerin sürücülerinin veri yapısını yok ediyor).

Şunu vurgulamakta yarar var Sürücü Doğrulayıcı bir ilaç değil, sadece bir teşhis aracıdır. Yine de sizi başarısızlıklardan kurtarmayacaktır (aksine, yoğunluğunu birkaç derece artıracaktır), ancak "sinsi" sürücüyü yeterli derecede güvenilirlikle tanımlamaya yardımcı olacaktır.

Verifier.exe'yi çalıştırın, bir pencere görüyoruz Sürücü Doğrulayıcı Yönetici, Ayarlar sekmesine gidin ve radyo düğmesini Tüm sürücüleri doğrula konumuna getirin, ardından aşağıdaki doğrulama türlerini ayarlayan "Tercih Edilen Ayar" düğmesine basın:

  • Özel havuz - kontrol edilen sürücülere, tahsis için özel bir bellek alanı tahsis edilecektir, bu çok hızlı çalışmaz, ancak kendi ve diğer kişilerin verilerindeki çoğu hasar türünü tespit edebilir.
  • Güç IRQL kontrol etme. IRQL, Kesme İsteği Seviyesidir. Sürücü geliştiricilerin yaptığı en yaygın hata, disk belleği yöneticisinin çalışmadığı bir IRQL'de belleğe erişmeye çalışmaktır. Ve gerekli sayfa aniden diske itilirse, sistem "IRQL_LESS_OR_EQULAR" yazısıyla mavi ekrana dönecektir. Bu modu zorlamak, sürücü sayfalarını zorla diske iter, böylece geliştirme hatası vakaların% 100'ünde görünür.
  • Düşük kaynak simülasyon Sistem kaynaklarının feci bir şekilde eksik olması durumunda sürücünün nasıl davranacağını görmek için onu kurmak yararlıdır, ancak bu ihmal edilebilir, ancak Havuz izleme onay kutusunu bırakmak daha iyidir (bellek havuzunu işlemenin doğruluğunu izleme). G / Ç doğrulama hataları tüm hataların ihmal edilebilir bir parçasını oluşturur, bu nedenle bu onay kutusunun konumu genellikle tamamen kritik değildir.

Ayar seçimini bitirdikten sonra "Uygula" düğmesine basıyoruz ve önerdiğimiz gibi yeniden başlatıyoruz.

Önyükleme başladıktan hemen sonra, çekirdek normalden çok daha fazla denetim gerçekleştirdiğinden, sistem fark edilir şekilde yavaşlar, ki bu olması gerekir. Hatalar tespit edildiğinde, mavi bir ölüm ekranı sürücünün adı ve geliştiriciler için yararlı, ancak bizim için yararsız olan bazı diğer bilgilerle yanıp söner. Tek yapabileceğimiz, sürücüyü en son sürüme güncellemek veya onu kullanan programı (donanımı) kullanmayı bırakmaktır. Aslında, ham odun yakmak için biraz daha seçeneğimiz var, ama daha sonra bunun üzerine.

Kontrolün durumunu istediğiniz zaman verifier.exe'yi çalıştırarak öğrenebilirsiniz. Sürücü Durumu sekmesi, tespit edilen tüm sürücülerin durumlarını mevcut durumun bir açıklamasıyla listeler. Yüklendi durumu, bu sürücünün en az bir kez yüklendiği ve test edildiği anlamına gelir (ancak, belki de tam olarak değil, yani sürücünün tüm parçaları işlenmedi). Yüklenmemiş durumu, sürücünün onu kullanan sistem / program tarafından veya kendi isteğiyle yüklendiğini, doğrulandığını (muhtemelen kısmen) ve boşaltıldığını hazırlar. İkincisi, özellikle genişletme kartlarını barbarca yuvadan çekerek, yani kaldırma işlemi gerçekleştirmeden çıkarılan ekipmandan kalan sürücüler için geçerlidir. Hayatta kalan sürücü otobüsü tarar, "donanımını" bulmaya çalışır, aramayı keser ve bu arada sistem yükünü yavaşlatarak (bazen çok önemli ölçüde) ve diğer sürücülerle çakışarak kendini bellekten kaldırır. Ahlaki: Ekipman tüm kurallara göre sistemden çıkarılmalıdır! Ancak, her Yüksüz durumu anormal bir durumun işareti değildir ve böyle bir duruma sahip bir sürücüyü kaldırmadan önce, ne tür bir ren geyiği olduğunu ve nereden geldiğini bulmanız gerekir.

Asla Yüklenmedi durumu, bu sürücünün henüz yüklenmediğini gösterir; bu, test edilmediği anlamına gelir, bu nedenle, onunla ilişkili olabilecek çeşitli programları başlatarak beklemeniz gerekir. Ancak, bazı sürücüler (özellikle hatalı olarak kaldırılanlar) yüklenmez ve buna göre asla kontrol edilmez.

Sistemle bir süre zorlu kontrol modunda çalıştıktan sonra (birkaç saatten birkaç güne kadar), daha önce acı çektiğimiz neredeyse tüm arızalı sürücüleri belirleyip adlarını bir kağıda yazacağız.

Aynı doğrulayıcıyı kullanarak sistemi normal moda (yani performansı tüketen ek kontroller olmadan) döndürebilirsiniz. Ayarlar sekmesine dönün, radyo düğmesini Seçili sürücüleri doğrula konumuna getirin (hiçbir sürücü seçilmemelidir), "Tümünü Sıfırla" üzerine tıklayın, ardından "Uygula" seçeneğine tıklayın ve yeniden başlatın. Herşey! Sistem artık normal hızda, ancak kontroller olmadan çalışıyor.

Ham ahşapla ne yapmalı?

Ama gerçekten, arızalı bir sürücü ile ne yapılabilir? Hata ayıklayıcıyı ellerinde tutmayı bilen bilgisayar korsanları, yeterince boş zamanları varsa, onu parçalarına ayırabilir (çünkü sürücüler genellikle küçük boyuttadır), bir hata bulabilir ve düzeltmenin bir yolunu bulabilir, ancak ... bu çok zahmetli bir yol.

Sürücüyü atmak (onu kullanan donanım / programla birlikte) da bir seçenek değildir. Bilinmeyen bir Çinli üreticinin 20 dolarlık bir ses kartının mavi ölüm ekranlarından sorumlu olduğu biliniyor olsa da, onu daha değerli bir şeyle değiştirmek için oldukça güçlü bir motivasyonumuz var. Ancak bu aslında herkes için açıktır ve ek yorum gerektirmez.

Ancak herkes, çok sayıda çökme ve mavi ölüm ekranının, tek işlemcili bir ortamda geliştirilen (ve test edilen) bir sürücünün çift işlemcili bir makineye yüklenmesinden kaynaklandığını bilmiyor. Burada "çift işlemci" ile hem iki taşlı gerçek bir platformu hem de Hyper-Threading / çok çekirdekli işlemcileri kastediyoruz. İki işlemcinin bir ev bilgisayarı için kesinlikle yararsız olduğu bilinmektedir (ve çok sayıda testle onaylanmıştır), çünkü uygulamaların büyük çoğunluğunda neredeyse hiç performans artışı yoktur.

Bu nedenle, sistem kararsızsa ve arızalı sürücüden bir nedenden ötürü kurtulamıyorsanız, “sanal iki işlemcili” makinenizi tek işlemcili bir makineye dönüştürerek BIOS Kurulumuna girmeyi deneyebilirsiniz. Boot.ini dosyasını açarak da benzer bir etki elde edilebilir (bilgisayarlarda Windows NT / 2000 / XP sistemin kurulu olduğu mantıksal diskin kök dizininde bulunur) ve / ONECPU anahtarını buna ekler ve ardından hataların kaybolması umuduyla yeniden başlatılır.

Liste 1

Tipik bir boot.ini dosyası örneği


zaman aşımı \u003d 30

çoklu (0) disk (0) rdisk (0) bölüm (1) \\ WINNT \u003d "Windows 2000 Pro" / fastdetect / SOS

Liste 2

Sistemi, mevcut tüm işlemcilerden yalnızca birisini kullanacak şekilde yapılandırıyoruz


zaman aşımı \u003d 30
varsayılan \u003d çoklu (0) disk (0) rdisk (0) bölüm (1) \\ WINNT
çoklu (0) disk (0) rdisk (0) bölüm (1) \\ WINNT \u003d "Windows 2000 Pro" / fastdetect / SOS / ONECPU

Ama pencereler Vista boot.ini dosyası yoktur ve önyükleme ayarlarını özel bir yardımcı program kullanarak yapılandırmak için (geçici) bir fırsat olsa da, Microsoft bu boşluğu tamamen kaldırmayı planlamaktadır, böylece yalnızca BIOS Kurulumu kalacaktır. Ancak, gelince Vistadaha sonra, sürücü geliştiriciler, buna geçme zamanına kadar, muhtemelen çok işlemcili makineler edinecekler (çünkü başka bir şey satışta olmayacak) ve yarattıklarını çok işlemcili bir ortamda test edecekler.

Başka bir ince nokta. Yukarıda, sürücü geliştiricilerinin yaptığı en yaygın hatanın, takas yöneticisinin çalışmadığı IRQL düzeyinde önleyici belleğe erişmek olduğunu ve istenen sayfa bellekte değilse çöktüğünü söylediğimizi hatırlıyor musunuz? Buradaki açık çözüm, RAM'i neredeyse hiç sayfa önleme oluşmayacak şekilde artırmak olacaktır. Hafıza için mevcut fiyatlarla, hemen hemen herkes birkaç yeni "kalıp" satın alabilir. Ancak soruna daha erişilebilir (ve daha zarif) bir çözüm var. Eğer parametresi DisablePagingExecutivesonraki kayıt şubesinde bulunan HKLM \\ SYSTEM \\ CurrentControlSet \\ Control \\ Session Manager \\ MemoryManagement, bire eşittir (varsayılan olarak sıfır), nükleer bileşenler yer değiştirmeyecektir. Bu nedenle, basitçe "Kayıt Defteri Düzenleyicisi" ni başlatır, bu imrenilen parametreyi değiştirir ve yeniden başlatırız (değişiklikler yalnızca yeniden başlatmanın ardından yürürlüğe girer), bunun çökme sorununu çözmeye yardımcı olacağını umuyoruz.