Tahlil: İmaj Şoförü Cevap Vermeyi Kesti
Özellikle Windows 7 ve Vista kullanıcıları “Görüntü şoförü cevap vermeyi kesti ve bu durumdan kurtuldu.” halinde bir kusur iletisi ile karşılaşabiliyor.
Bu yanılgı aslında Nvidia kartlara mahsus değil. AMD/ATI ekran kartları için “atikmdag” ya da Intel grafik bağdaştırıcılar ile de kullanıcıların karşısına çıkıyor. Bu yanlışların aslında Nvidia ya da ATI/AMD kaynaklı olmadığını belirtmek gerekiyor. Yanlışlar “Timeout Detection and Recovery” olarak da isimlendirilen bir Windows hizmeti tarafından tetikleniyor. Birinci olarak Vista daha sonra da Windows 7 ile birlikte sunulan bu özellik, bir sorun ya da uzun gecikme olduğunda ekran kartı şoförünü sıfırlayarak mavi ekran alınmasının önüne geçmeyi hedefliyor. Şayet sorun birkaç sefer tekrarlarsa da mavi ekran veriliyordu.
TDR Nasıl Çalışıyor?
Windows Vista ve daha sonraki işletim sistemleri bilgisayarın büsbütün donduğu durumları algılayacak bir sisteme sahip ve masaüstünün tekrar reaksiyon verir hale gelmesi için bu sorunu çözecek otomatik adımlar atılıyor. Bu sürece ise “Timeout detection and recovery” ismi veriliyor. TDR süreci sırasında, işletim sisteminin GPU zamanlayıcısı, manzara şoförünün DxgkDdiResetFromTimeout özelliğini çalıştırarak sürücüyü tekrar yüklüyor ve GPU sıfırlanıyor. Böylece kullanıcılar işletim sistemini tekrar başlatmak zorunda kalmıyor ve kullanıcı tecrübesi güzelleştiriliyor.
Bu süreçler sırasında kullanıcılar ekranın yenilendiğini görebiliyorlar. Birtakım eski DirectX uygulamaları bu süreç sırasında siyah bir ekran verebiliyor ve kullanıcıların bu uygulamaları yine başlatması gerekebiliyor. Sürecin tam olarak nasıl işlediğini aşağıda bulabilirsiniz.
1. Vakit Aşımının Tespiti
GPU zamanlayıcısı, DirectX grafik çekirdek alt sisteminin (Dxgkrnl.sys) bir modülü. Bu zamanlayıcı, GPU’nun muhakkak bir misyonu yürütürken müsaade verilen vakitten daha fazlasını kullanıp kullanmadığını denetliyor. Zamanlayıcı hatta bu vazifeye öncelik atamaya çalışır. Öncelik atama süreci bir vakit aşımı sürecine sahiptir. Bu müddet Vista ve sonraki işletim sistemlerinde 2 saniye olarak belirlenmiştir. Şayet GPU, TDR müddeti içinde süreci tamamlayamaz ya da öncelik atayamazsa işletim sistemi GPU’nun donduğuna karar verir.
Bu vakit aşımının önüne geçmek için donanım üreticileri, oyun yahut başka süreçler sırasında grafik süreçlerinin 2 saniyeden uzun sürmeyeceğinden emin olmalıdır.
2. Kurtarma Sürecine Hazırlık
İşletim sisteminin GPU zamanlayıcısı, grafik şoförünün DxgkDdiResetFromTimeout özelliğini çalıştırarak işletim sisteminin bir vakit aşımı tespit ettiğini bildirir. Şoför daha sonra kendini ve GPU’yu yeniler. Ek olarak şoförün belleğe ve donanıma erişimi kesilir. İşletim sistemi ve şoför, donanım ve durum bilgisini toplar ve bu bilgiler sorunun daha sonra tespiti için kullanılır.
3. Masaüstünün Kurtarılması
İşletim sistemi grafik yığınının durumunu sıfırlar. Dxgkrnl.sys sisteminin bir kesimi olan grafik bellek yöneticisi, grafik belleğine yapılan yerleştirmeleri temizler. Grafik şoförü, GPU donanım durumunu sıfırlar. Grafik yığını son adımları uygular ve masaüstünü karşılık verir bir duruma döndürür. Daha evvel de belirtildiği üzere birtakım eski DirectX uygulamaları bu sırada siyah bir imaj verebilir ve kullanıcıların bu uygulamaları yine başlatması gerekir.
İyi yazılmış DirectX 9Ex ve DirectX 10 sonrası uygulamalar ise bu süreci düzgün biçimde atlatır ve çalışmaya devam eder.
4. Tekrarlayan GPU Donmalarının Önlenmesi
Windows Vista SP1 ve Windows Server 2008 ile birlikte, GPU’nun sık donma durumuna karşı bir ekip tedbirler alınmıştır. Tekrarlayan GPU donmaları, grafik donanımının düzgün halde kurtarılamadığını gösterir. Bu durumda, kullanıcı bilgisayarı kapatmalı ve işletim sistemini yine başlatarak grafik donanımını sıfırlamalıdır. Şayet işletim sistemi altı ya da daha fazla GPU donması tespit eder ve kurtarma süreci 1 dakika içerisinde gerçekleşirse, işletim sistemi sıradaki GPU donmasında yanılgı denetimi yapar.
5. TDR Kusur Mesajı
TDR süreci sırasında masaüstü reaksiyonsuz kalabilir. Kurtarma sürecinin son basamaklarında ekranda bir yanıp sönme olabilir. Bu yanıp sönme kullanıcının çözünürlüğü değiştirdiğinde oluşan yanıp sönmeye benzeri. İşletim sistemi masaüstünü başarılı bir halde kurtarırsa “Görüntü şoförü karşılık vermeyi kesti ve bu durumdan kurtuldu.” iletisi görüntüleniyor.
Bu süreç sırasında “Olay Görüntüleyici” üzerinde de gerekli girdiler oluşturuluyor ve bu bilgiler daha sonra sorunun tahlili için kullanılabiliyor.
TDR hizmetini devre dışı bırakmak ve süreç kademelerinin müddetlerini değiştirmek mümkün olsa da bu tavsiye edilmiyor ve Microsoft tarafından ihlal kapsamında bedellendiriliyor.
Hatanın Nedenleri ve Mümkün Çözümler
Hatanın neden oluştuğunu anladıktan sonra oluşmasını engellemeye çalışabilirsiniz. Ne yazık ki bu kusurun tek bir tahlili bulunmuyor. TDR süreci de birçok sorun tarafından tetiklenebiliyor:
- Uygun olmayan bellek zamanlaması yahut voltajı
- Yetersiz ya da sıkıntılı güç kaynağı
- Hatalı şoför yüklemesi
- Aşırı ısınma
- Toz ve kir birikmesi
- Kararlı olmayan GPU ve CPU sürat aşırtma işlemi
- Hatalı bellek veriyolu voltajı (NB/SB)
- Hatalı ekran kartı
- Kötü yazılmış bir şoför ya da yazılım
- Sürücü çakışmaları (Bazı Realtek şoförleri, webcam sürücüleri)
- Yüksek ayarlarda oyun çalıştırıldığı vakit ekran kartı çok düşük FPS kıymetlerine düşer ve kompleks bir grafik süreci ile karşılaşırsa karşılık vermeyi durdurabilir ve bu yanılgıyı alabilirsiniz.
- Belirli şoför sürümleriyle birlikte bu kusur alınabilir ve güncelleme ile sorun giderilebilir.
Geniş bir muhtemel neden listesine sahip sorunun tahlili için aşağıdaki adımları uygulayabilirsiniz:
- Sürücü güncellemelerini denetim edin yahut şoförlerinizi pak formda kaldırıp yine yükleyin. DDU ile AMD ve NVIDIA Şoför Kaldırma Rehberi konusunu bu hedef için inceleyebilirsiniz.
- EVGA Precision yahut MSI Afterburner üzere birden çok GPU aracını birebir anda yüklediyseniz araçlardan yalnızca bir adedini kullanıp başkalarını kaldırın.
- Eğer meseleyle makul bir oyunda karşılaşıyorsanız oyunun güncellemelerini yapın.
- Eğer sorun yeni bir donanım ya da yazılım yükledikten sonra başladıysa yaptığınız değişikliği geri alın.
- Sıcaklık bedellerini denetim edin. Bilhassa yük altındaki kıymetleri görmeniz yararlı olacaktır. Bunun için OCCT GPU gerilim testini uygulayabilirsiniz. Şayet sisteminiz fazla ısınıyorsa MSI AfterBurner üzere yazılımları kullanarak ekran kartınızın fan suratlarını arttırabilirsiniz. Sisteminizdeki tozu ve kiri temizlemek de sıcaklık bedellerinin besbelli biçimde düşmesine yardımcı olacaktır.
- RAM’inizin düzgün çalıştığından ve üreticisi tarafından tanımlanmış düzgün ayarlarda çalıştığından emin olun. Bunun için Bozuk RAM Nasıl Anlaşılır? RAM Test Rehberi‘mizi inceleyebilirsiniz.
- Eğer sürat aşırtma uyguladıysanız sisteminizi varsayılan saat suratlarını döndürün. Bu adımı bellek, CPU ve GPU (fabrika çıkışlı sürat aşırtma modelleri de dahil) için farklı başka uygulayarak hangisinin sorunu çözdüğünü de anlayabilirsiniz.
- BIOS Sıfırlama Rehberi‘ndeki adımları uygulayarak CMOS sıfırlama sürecini gerçekleştirin ve tüm BIOS ayarlarını varsayılana çevirin. Bu IRQ atamalarını da sıfırlayacağı için değerli bir donanım yanılgı giderme adımıdır.
- Eğer yeni bir ekran kartı taktıysanız güç kaynağınızın bedellerini denetim edin. Bilhassa 12V çizgisinde kâfi akım olduğundan emin olun.
- SLI kullanıyorsanız her kartı başka formda deneyerek kusurlu kartı tespit etmeye çalışabilirsiniz.
- Yapabiliyorsanız ekran kartınızı öbür bir bilgisayarda da test edin.
Dizüstü bilgisayarlar için bu adımların birçoklarını uygulayamayabilirsiniz. Fakat bilhassa eski dizüstü bilgisayarlarda tozlanmalar ısınma sıkıntısına neden olur. Dizüstü bilgisayarınızdaki kirleri ve tozları nizamlı olarak temizlemeniz bu açıdan değerlidir.
Eğer tüm bu adımlara karşın bir tahlile ulaşamadıysanız Technopat Sosyal’de mevzu açarak daha fazla yardım alabilirsiniz.