تسجيل معلومات التصحيح لنظام التشغيل Windows 10، ما يجب تثبيته. كيفية استخدام تفريغ الذاكرة لتحديد برنامج التشغيل الذي يسبب شاشة الموت الزرقاء. إعداد خادم رمز التصحيح في WinDBG

مرحبًا أيها الأصدقاء، سنناقش اليوم موضوعًا مثيرًا للاهتمام سيساعدك في المستقبل شاشة زرقاءالموت (الموت الزرقاء).

مثلي، كان على العديد من المستخدمين الآخرين ملاحظة ظهور شاشة ذات خلفية زرقاء مكتوب عليها شيء ما (أبيض على أزرق). وتشير هذه الظاهرة إلى مشكلة حرجة، كما في برمجةعلى سبيل المثال، تعارض في برنامج التشغيل، أو عطل مادي في بعض مكونات الكمبيوتر.

لقد واجهت مؤخرًا مشكلة الشاشة الزرقاء في نظام التشغيل Windows 10 مرة أخرى، ولكني تخلصت منها سريعًا وسأخبركم بها قريبًا.

لذلك، لا يدرك معظم المستخدمين أنه يمكن تحليل BSoD لفهم مشكلات الأخطاء الجسيمة لاحقًا. في مثل هذه الحالات، يقوم Windows بإنشاء ملفات خاصة على القرص، وسوف نقوم بتحليلها.

هناك ثلاثة أنواع من تفريغ الذاكرة:

تفريغ الذاكرة الكاملة- تتيح لك هذه الوظيفة حفظ المحتويات بالكامل ذاكرة الوصول العشوائي. نادرا ما يتم استخدامه، لأنه تخيل أن لديك 32 جيجابايت من ذاكرة الوصول العشوائي، مع تفريغ كامل، سيتم تخزين كل هذا الحجم على القرص.

تفريغ الأساسية- يحفظ معلومات وضع kernel.

تفريغ الذاكرة الصغيرة- يحفظ كمية صغيرة من معلومات الخطأ والمكونات المحملة التي كانت موجودة وقت حدوث عطل في النظام. سوف نستخدم هذا النوع من التفريغ لأنه سيزودنا بمعلومات كافية حول BSoD.

يختلف موقع التفريغ الصغير والكامل، على سبيل المثال، يوجد التفريغ الصغير في المسار التالي: %systemroot%\minidump.

التفريغ الكامل هنا: %systemroot%.

لتحليل مقالب الذاكرة، هناك برامج مختلفة، لكننا سنستخدم اثنين. الأول هو Microsoft Kernel Debuggers، كما يوحي الاسم، وهي أداة مساعدة من Microsoft. يمكنك تنزيله من الموقع الرسمي. البرنامج الثاني هو BlueScreenView وهو برنامج مجاني قم بتحميله من هنا.

تحليل تفريغ الذاكرة باستخدام مصححات أخطاء Microsoft Kernel

بالنسبة للإصدارات المختلفة من الأنظمة، يتعين عليك تنزيل نوع مختلف من الأدوات المساعدة. على سبيل المثال، ل64 بت نظام التشغيل، أنت بحاجة إلى برنامج 64 بت، لبرنامج 32 بت - إصدار 32 بت.

هذا ليس كل شيء، تحتاج إلى تنزيل وتثبيت حزمة رموز التصحيح اللازمة للبرنامج. يطلق عليه رموز التصحيح. يتم أيضًا تنزيل كل إصدار من هذه الحزمة ضمن نظام تشغيل محدد، تعرف أولاً على النظام لديك، ثم قم بالتنزيل. لكي لا تضطر إلى البحث عن هذه الرموز في أي مكان، إليك رابط التنزيل. يفضل أن يتم التثبيت في هذا المسار: %systemroot%\symbols.

يمكنك الآن تشغيل مصحح الأخطاء الخاص بنا، والذي ستبدو نافذته كما يلي:

قبل تحليل مقالب المخلفات، سنقوم بتكوين شيء ما في الأداة المساعدة. أولاً، نحتاج إلى إخبار البرنامج بالمكان الذي قمنا بتثبيت رموز التصحيح فيه. للقيام بذلك، انقر فوق الزر "ملف" وحدد عنصر "مسار ملف الرمز"، ثم حدد المسار إلى الرموز.


يتيح لك البرنامج استخراج الرموز مباشرة من الويب، لذلك لا يتعين عليك حتى تنزيلها (عذرًا لأولئك الذين قاموا بتنزيلها بالفعل). سيتم أخذها من خادم Microsoft، لذلك كل شيء آمن. لذلك، تحتاج إلى فتح "ملف" مرة أخرى، ثم "مسار ملف الرمز" وإدخال الأمر التالي:

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


وهكذا أشرنا للبرنامج إلى ضرورة أخذ الرموز من الشبكة. بمجرد الانتهاء من ذلك، انقر فوق "ملف" وحدد "حفظ مساحة العمل"، ثم انقر فوق "موافق".

هذا كل شئ. لقد قمنا بتكوين البرنامج بالطريقة الصحيحة، والآن نبدأ في تحليل عمليات تفريغ الذاكرة. في البرنامج، اضغط على الزر "ملف"، ثم "فتح تفريغ الأعطال"وحدد الملف المطلوب.

سيبدأ مصححو أخطاء Kernel في تحليل الملف ثم إخراج نتيجة حول سبب الخطأ.


في النافذة التي تظهر، يمكنك إدخال الأوامر. إذا دخلنا !تحليل –v، ثم سوف نحصل على مزيد من المعلومات.

هذا كل شيء مع هذا البرنامج. لإيقاف مصحح الأخطاء، حدد "تصحيح" وعنصر "إيقاف التصحيح".

تحليل تفريغ الذاكرة باستخدام BlueScreenView

يعد برنامج BlueScreenView مناسبًا أيضًا لتحليل الأخطاء المختلفة وBSoDs، فهو يحتوي على واجهة بسيطة، لذلك لا ينبغي أن تكون هناك مشاكل في إتقانه.

قم بتنزيل البرنامج من الرابط أعلاه وتثبيته. بعد تشغيل الأداة المساعدة، تحتاج إلى تكوينها. انتقل إلى المعلمات: "الإعدادات" - " خيارات إضافية" سيتم فتح نافذة صغيرة تحتوي على عنصرين. في الفقرة الأولى، تحتاج إلى الإشارة إلى موقع تفريغ الذاكرة. وعادة ما تكون موجودة في المسار C:\WINDOWS\Minidump. ثم فقط انقر على الزر "الافتراضي".


ماذا يمكنك أن ترى في البرنامج؟ لدينا عناصر القائمة، وجزء من النافذة بأسماء ملفات التفريغ، والجزء الثاني من النافذة - محتويات مقالب الذاكرة.


كما قلت في بداية المقال، يمكن للمقالب تخزين برامج التشغيل، ولقطات شاشة "شاشة الموت" نفسها، وغيرها من المعلومات المفيدة التي قد تكون مفيدة لنا.

لذلك، في الجزء الأول من النافذة، حيث توجد ملفات التفريغ، حدد تفريغ الذاكرة الذي نحتاجه. في الجزء التالي من النافذة ننظر إلى المحتويات. يتم تمييز برامج التشغيل الموجودة في مكدس الذاكرة باللون المحمر. هم على وجه التحديد سبب شاشة الموت الزرقاء.

يمكنك العثور على الإنترنت على كل شيء يتعلق برمز الخطأ وبرنامج التشغيل الذي قد يكون السبب في حدوث BSoD. للقيام بذلك، انقر فوق "ملف"، ثم "ابحث عن رمز الخطأ + برنامج التشغيل في Google".


يمكنك عرض برامج التشغيل التي كانت موجودة وقت حدوث الخطأ فقط. للقيام بذلك، انقر فوق "الإعدادات" - "وضع النافذة السفلية" - "تم العثور على برامج التشغيل فقط في مكدس الأعطال". أو اضغط على المفتاح F7.

لإظهار لقطة شاشة BSoD، اضغط على F8.

لإظهار كافة برامج التشغيل والملفات، اضغط على F6.

حسنا هذا كل شيء. الآن أنت تعرف كيفية التعرف على مشكلة شاشة الموت الزرقاء، وإذا حدث شيء ما، فابحث عن حل على الإنترنت أو على هذا الموقع. يمكنك تقديم رموز الخطأ الخاصة بك، وسأحاول أن أكتب لكل مقال لحل المشكلة.

ولا تنسوا أيضًا طرح الأسئلة في التعليقات.

وسأواصل الحديث عن شاشة الموت الزرقاء التي بدأت فيها.

لذلك، إذا تم إعادة تشغيل الكمبيوتر أو تجميده فجأة، ولم تظهر شاشة الموت الزرقاء أو ظهرت لجزء من الثانية، فلا يزال من الممكن استعادة المعلومات حول أسباب الفشل.

والحقيقة هي أن نظام التشغيل في وقت الفشل يحفظ محتويات ذاكرة الوصول العشوائي فيما يسمى ملف مهمل(له امتداد .dmp). في المستقبل، يمكن تحليل ملف التفريغ والحصول على نفس المعلومات الموجودة على الشاشة الزرقاء وحتى أكثر من ذلك بقليل.

ولكن يمكن تعطيل إنشاء عمليات تفريغ في النظام، لذا يجب عليك التأكد أولاً من أن النظام يقوم بإنشاء عمليات تفريغ عند تعطله، وثانيًا، يجب أن تعرف الموقع على القرص حيث يتم حفظها.

للقيام بذلك عليك الذهاب إلى القسم نظام.

في نظام التشغيل Windows 10، يمكن القيام بذلك من خلال البحث وفي الإصدارات السابقةنظام التشغيل من خلال لوحة التحكم.

هنا يجب تفعيل تسجيل الأحداث في سجل النظام، ولكن لمنع إعادة التشغيل التلقائي للكمبيوتر وإظهار محتويات شاشة الموت الزرقاء لنا، عليك إلغاء إعادة التشغيل التلقائي إذا تم تمكينها.

يتم عرض المسار إلى عمليات تفريغ البيانات هنا أيضًا - نرى أنه تم حفظ عملية التفريغ في المجلد %SystemRoot% - وهذا هو تعيين مجلد Windows.

يمكنك أيضًا تحديد "تفريغ ذاكرة صغير" هنا، والذي سيكون كافيًا للبحث عن رموز الخطأ.

لذلك، تحطمت النظام في شاشة الموت الزرقاء، وبعد ذلك تم إنشاء تفريغ الذاكرة.

لتحليل التفريغ هناك برامج خاصةومن أشهرها الأداة المساعدة BlueScreenView.

البرنامج سهل الاستخدام للغاية ولا يتطلب التثبيت - قم بتنزيله من الموقع الرسمي وفك ضغطه. في الوقت نفسه، من الموقع الرسمي، يمكنك تنزيل الملف الذي يمكنك من خلاله ترويس البرنامج. لهذا هذا الملفستحتاج إلى وضعه في المجلد الذي يحتوي على البرنامج الذي تم فك ضغطه.

إذا لم يتم عرض عمليات تفريغ الذاكرة بعد تشغيل البرنامج، على الرغم من تعطل النظام في شاشة الموت الزرقاء، فعليك الانتقال إلى إعدادات البرنامج والتأكد من تحديد المسار إلى عمليات تفريغ الذاكرة بشكل صحيح، أي أنه يجب أن تكون هي نفسها كما في إعدادات النظام.

بعد ذلك، تحتاج إلى تحديث المعلومات في نافذة البرنامج وسيتم عرض جميع عمليات التفريغ التي تم إنشاؤها في النظام. إذا كان هناك عدة مقالب، فإننا نركز على تاريخ الفشل. حدد التفريغ المطلوب، وبعد ذلك سوف يظهر معلومات مفصلةعليه.

هنا يتم عرض اسم الخطأ، ورمز الإيقاف الخاص به مع المعلمات، وإذا كان السبب هو السائق، فسنجد اسمه في الحقل المقابل.

أيضًا، في الجزء السفلي من نافذة البرنامج، سيتم تمييز الملفات التي قد تسبب الفشل أيضًا باللون الوردي. سيتعين علينا التعامل مع كل منهم بالترتيب. تشبه الخوارزمية هنا تلك التي تمت مناقشتها في المنشور السابق - فنحن نبحث عن حل على الإنترنت، ونستخدم اسم الملف أو رمز الخطأ كمفتاح بحث.

وفي هذه الحالة، ليس من الضروري إدخال البيانات يدويًا في محرك البحث. إذا نقرت بزر الماوس الأيمن على سطر التفريغ، ثم من قائمة السياقيمكنك تحديد عنصر يسمح لك بالعثور على وصف لهذه المشكلة بالذات في Google.

يمكنك اختيار البحث في Google عن طريق رمز الخطأ، أو عن طريق رمز الخطأ واسم برنامج التشغيل، أو عن طريق رمز الخطأ والمعلمة.

أيضًا، باستخدام هذه الأداة المساعدة، يمكنك العثور بسرعة على موقع الملف الذي به مشكلة على القرص.

يحدث أحيانًا أن الملف الذي تسبب في المشكلة ينتمي إلى برنامج أو لعبة ما. من خلال موقع الملف على القرص، يمكنك بسرعة تحديد البرنامج أو اللعبة التي ينتمي إليها.

حسنًا، من الجدير معرفة أن برامج التنظيف يبدو أنها تحذف عمليات تفريغ الذاكرة، لذا إذا كنت تستخدم مثل هذه البرامج، فيجب عليك الامتناع عن استخدامها أثناء تحديد سبب شاشة الموت الزرقاء.

والسؤال الأخير الذي سأجيب عليه كجزء من هذه المذكرة هو ماذا تفعل إذا توقف تشغيل الكمبيوتر بعد ظهور الشاشة الزرقاء؟أي أن الكمبيوتر يتجمد أو يتم تحميله بشكل زائد باستمرار، مما يعني أنه لا توجد طريقة لتحليل تفريغ الذاكرة.

الإجابة منطقية وبسيطة - تحتاج إلى إنشاء محرك أقراص فلاش USB قابل للتمهيد، والذي يمكنك من خلاله "استخراج" ملف التفريغ من قرص صلبوتحليلها على جهاز كمبيوتر آخر. للقيام بذلك، قم بالتمهيد من محرك أقراص فلاش وعلى القرص الصلب للكمبيوتر في المجلد شبابيكأو في مجلد فرعي تفريغ صغيرنجد ملف التفريغ الذي نقوم بنسخه إلى محرك الأقراص المحمول. ثم على كمبيوتر آخر باستخدام الأداة المساعدة بلو سكرين فيونقوم بتحليل التفريغ، كما هو موضح في هذه المذكرة.

في نظام التشغيل Windows 8، قدمت Microsoft أداة تفريغ ذاكرة جديدة - وهو خيار تفريغ ذاكرة تلقائي. يتم تعيين هذا الإعداد بشكل افتراضي في نظام التشغيل. قدم نظام التشغيل Windows 10 نوعًا جديدًا من ملفات التفريغ - تفريغ الذاكرة النشطة. بالنسبة لأولئك الذين لا يعرفون، في Windows 7 لدينا تفريغ صغير، تفريغ أساسي وتفريغ أساسي كامل. قد تتساءل لماذا قررت Microsoft إنشاء هذا المعلمة الجديدةتفريغ الذاكرة؟ وفقًا لروبرت سيمبكينز، كبير مهندسي الدعم، يمكن لتفريغ الذاكرة التلقائي إنشاء دعم لصفحة "النظام" في ملف التكوين.
يعد نظام إدارة تكوين ملف الترحيل مسؤولاً عن إدارة حجم ملف الترحيل - وهذا يتجنب الارتفاع غير الضروري أو حجم ملف الترحيل. يتم تقديم هذا الخيار بشكل أساسي لأجهزة الكمبيوتر التي تعمل على محركات أقراص SSD، والتي تميل إلى أن تكون أصغر حجمًا ولكنها تحتوي على كمية كبيرة من ذاكرة الوصول العشوائي.

خيارات تفريغ الذاكرة

الميزة الرئيسية لـ "تفريغ الذاكرة التلقائي" هي أنها ستسمح لجلسة النظام الفرعي في مدير العمليات بتقليل ملف الصفحة تلقائيًا إلى حجم أصغر من حجم ذاكرة الوصول العشوائي (RAM). بالنسبة لأولئك الذين لا يعرفون، تكون جلسة مدير النظام الفرعي مسؤولة عن تهيئة النظام وبيئة بدء التشغيل للخدمات والعمليات المطلوبة للمستخدم لتسجيل الدخول إلى النظام. يقوم بشكل أساسي بتعيين صفحة الملفات على ذاكرة افتراضيةويبدأ عملية winlogon.exe.

إذا كنت تريد تغيير إعدادات تفريغ الذاكرة التلقائية، فإليك كيفية القيام بذلك. اضغط على مفتاح Windows + X وحدد - النظام. بعد ذلك، انقر فوق الزر "إعدادات النظام المتقدمة -" يتقدم نظام إعدادات”.

انقر على زر إعدادات النظام المتقدمة.

هنا يمكنك رؤية القائمة المنسدلة حيث تقول "متقدم".

هنا يمكنك تحديد الخيار الذي تريده. الخيارات المقترحة:

لا مقالب الذاكرة.
تفريغ الذاكرة الصغيرة.
تفريغ ذاكرة النواة.
تفريغ الذاكرة كاملة.
تفريغ الذاكرة التلقائي. تمت إضافته إلى نظام التشغيل Windows 8.
تفريغ الذاكرة النشطة. تمت إضافته إلى نظام التشغيل Windows 10.
موقع ملف تفريغ الذاكرة موجود في الملف %SystemRoot%\MEMORY.DMP.

إذا كنت تستخدم محرك SSDفمن الأفضل تركه على "تفريغ الذاكرة التلقائي"؛ ولكن إذا كنت بحاجة إلى ملف تفريغ الأعطال، فمن الأفضل تعيينه على "تفريغ الذاكرة الصغيرة"، حيث يمكنك، إذا أردت، إرساله إلى شخص ما حتى يتمكن من إلقاء نظرة عليه.

في بعض الحالات، قد تحتاج إلى زيادة حجم ملف الصفحة أكبر من ذاكرة الوصول العشوائي (RAM) بحيث يمكنه احتواء تفريغ الذاكرة بالكامل. في مثل هذه الحالات، تحتاج إلى إنشاء مفتاح التسجيل:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

يطلق عليه "LastCrashTime".

سيؤدي هذا تلقائيًا إلى زيادة حجم ملف المبادلة. لتقليله لاحقًا، يمكنك ببساطة إزالة هذا المفتاح.

قدم Windows 10 ملف تفريغ جديد يسمى تفريغ الذاكرة النشطة. فهو يحتوي فقط على الأساسيات وبالتالي فهو أصغر حجمًا.

ليس لدي طريقة لاختباره، لكنني أنشأت هذا المفتاح وراقبت حجم ملف ترحيل الصفحات. أعلم أنني سأحصل على خطأ فادح عاجلاً أم آجلاً. ثم سوف أتحقق من ذلك.

يمكنك تحليل تفريغ الذاكرة لملفات Windows.dmp باستخدام WhoCrashed. WhoCrashed Home هي أداة مساعدة مجانية توفر برامج التشغيل التي تم تثبيتها على جهاز الكمبيوتر الخاص بك بنقرة واحدة. في معظم الحالات، يمكنه تحديد برنامج التشغيل المعيب الذي يسبب مشاكل لجهاز الكمبيوتر الخاص بك. هذا عبارة عن تفريغ الأعطال لتحليل النظام، وتفريغ الذاكرة، وجميع المعلومات المجمعة معروضة هنا في نموذج يسهل الوصول إليه.

عادةً ما تقوم مجموعة أدوات التصحيح بفتح تفريغ الأعطال التحليلية. باستخدام هذه الأداة المساعدة، لا تحتاج إلى أي معرفة أو مهارات تصحيح الأخطاء لمعرفة برامج التشغيل التي تسبب مشكلات على جهاز الكمبيوتر الخاص بك.

يعتمد WhoCrashed على حزمة تصحيح الأخطاء (برنامج Windbg) من Microsoft. إذا لم يتم تثبيت هذه الحزمة، فسيقوم WhoCrashed بتنزيل هذه الحزمة واستخراجها تلقائيًا لك. فقط قم بتشغيل البرنامج وانقر على زر تحليل. عندما يكون برنامج WhoCrashed مثبتًا على نظامك، وفي حالة تعطله أو إغلاقه بشكل غير متوقع، سيعلمك البرنامج إذا تم تمكين ميزة تفريغ الأعطال على جهاز الكمبيوتر الخاص بك وسيقدم لك اقتراحات حول كيفية تمكينها.

تهدف هذه المذكرة القصيرة إلى توضيح كيف يمكنك تكوين النظام للتعامل مع حالة الطوارئ تفريغ ذاكرة ويندوز، أي تفريغ يمكن إنشاؤه في حالة حدوث فشل فادح، ويتميز بظهور شاشة الموت الزرقاء (BSOD). ما هو التفريغ بشكل عام، لماذا نحتاجه وما هو، ما هي المشاكل التي يهدف إلى حلها وما هي المعلومات التي يحتوي عليها؟

تفريغ الذاكرة - محتويات الذاكرة العاملة للعملية أو النواة أو نظام التشغيل بأكمله، بما في ذلك، بالإضافة إلى مناطق العمل، معلومات إضافيةحول حالة سجلات المعالج ومحتويات المكدس وهياكل الخدمة الأخرى.

لماذا قد نحتاج إلى هذا المحتوى، على سبيل المثال؟ تفريغ ذاكرة ويندوز؟ ربما يكون الاستخدام الأكثر شيوعًا لتفريغ الذاكرة هو دراسة أسباب فشل النظام ()، والذي تسبب في توقف نظام التشغيل تمامًا. بالإضافة إلى ذلك، يمكن استخدام حالة الذاكرة لأغراض أخرى. ومن المهم أيضًا أن يكون تفريغ الذاكرة حرفيًا الطريقة الوحيدةتلقي معلومات حول أي فشل! وأخذ (الحصول على) تفريغ ذاكرة النظام هو في الواقع الطريقة الدقيقة الوحيدة للحصول على بصمة (نسخة) فورية لمحتويات الذاكرة الفعلية للنظام.

كلما كانت محتويات التفريغ تعكس حالة الذاكرة في وقت الفشل بشكل أكثر دقة، كلما تمكنا من تحليل حالة الطوارئ بشكل أكثر تفصيلاً. لذلك، من المهم للغاية الحصول على نسخة محدثة من الذاكرة الفعلية للنظام في وقت محدد بدقة قبل حدوث الفشل مباشرة. والطريقة الوحيدة للقيام بذلك هي إنشاء ملف تفريغ الأعطال الكامل. السبب تافه تمامًا - عند حدوث تفريغ تعطلي لذاكرة النظام، إما نتيجة فشل أو نتيجة لموقف تمت محاكاته بشكل مصطنع، يكون النظام في هذه اللحظة من تلقي التحكم في وظائف الطوارئ (KeBugCheckEx) في حالة حالة غير متغيرة تمامًا (ثابتة)، لذلك، بين لحظة حدوث الفشل ولحظة كتابة البيانات على الوسائط، لا شيء يغير محتويات الذاكرة الفعلية، ويتم كتابتها على القرص في حالتها الأصلية. حسنًا، هذا من الناحية النظرية، ولكن في بعض الأحيان في الحياة، ولكن هناك مواقف قد يتلف فيها تفريغ الذاكرة نفسه، أو قد تتجمد المحطة أثناء تسجيل التفريغ، بسبب وجود مكونات الأجهزة الخاطئة.

في الغالبية العظمى من الحالات، من لحظة بدء عملية إنشاء تفريغ ذاكرة الأعطال وحتى نهاية كتابة محتويات الذاكرة على القرص، تظل المعلومات الموجودة في الذاكرة دون تغيير.

من الناحية النظرية، يتم تفسير ثبات (ثبات) "بصمة" الذاكرة من خلال حقيقة أنه عند استدعاء وظيفة KeBugCheckEx، التي تعرض معلومات حول الفشل وتبدأ عملية إنشاء تفريغ الذاكرة، يكون النظام قد توقف بالكامل بالفعل ويتم حذف تتم كتابة محتويات الذاكرة الفعلية على الكتل التي يشغلها ملف ترحيل الصفحات على القرص، وبعد ذلك، أثناء التحميل اللاحق لنظام التشغيل، تتم إعادة تعيينه إلى ملف على وسائط النظام. حسنا، مرة واحدة تقريبا لاحظت الوضع الذي يكون فيه خلل اللوحة الأممنعني من حفظ تفريغ الذاكرة: أ) التجميد أثناء تشغيل منطق حفظ التفريغ (لم تصل العملية إلى 100٪)، ب) إتلاف ملف تفريغ الذاكرة (اشتكى مصحح الأخطاء من الهياكل)، ج) كتابة تفريغ Memory.dmp ملفات بطول صفر. لذلك، على الرغم من حقيقة أن النظام متوقف تمامًا بالفعل في وقت إنشاء تفريغ الذاكرة، وأن رمز الطوارئ فقط قيد التشغيل، يمكن للأجهزة المعيبة إجراء تعديلات على أي منطق دون استثناء في أي مرحلة من مراحل التشغيل.
تقليديا، في المرحلة الأولية، يتم استخدام كتل القرص المخصصة لملف ترحيل الصفحات لحفظ تفريغ ذاكرة Windows. بعد ذلك، بعد ظهور شاشة زرقاء وإعادة التشغيل، يتم نقل البيانات إلى ملف منفصل، ثم تتم إعادة تسمية الملف باستخدام نمط يعتمد على نوع التفريغ. ومع ذلك، ابتداء من إصدارات ويندوزفيستا، يمكن تغيير هذا الوضع، والآن يتم منح المستخدم الفرصة لحفظ تفريغ محدد دون مشاركة ملف المبادلة، ووضع معلومات حول الفشل في ملف مؤقت. تم ذلك من أجل القضاء على أخطاء التكوين المرتبطة بالإعدادات غير الصحيحة لحجم وموضع ملف ترحيل الصفحات، والتي غالبًا ما أدت إلى حدوث مشكلات أثناء عملية حفظ تفريغ الذاكرة.
دعونا نرى ما هي أنواع عمليات التفريغ التي يسمح لنا نظام التشغيل Windows بإنشائها:

  • تفريغ ذاكرة العملية (التطبيق) ؛
  • تفريغ ذاكرة النواة؛
  • تفريغ كامل للذاكرة (تفريغ الجزء المتاح من الذاكرة الفعلية للنظام).

يمكن تقسيم جميع مقالب الأعطال إلى فئتين رئيسيتين:

  • تفريغ الأعطال مع معلومات حول الاستثناء الذي حدث. عادة ما يتم إنشاؤها في الوضع التلقائي، عند حدوث استثناء غير معالج في التطبيق/النواة، وبالتالي يمكن استدعاء مصحح أخطاء النظام (المدمج). في هذه الحالة، يتم تسجيل معلومات حول الاستثناء في ملف تفريغ، مما يسهل تحديد نوع الاستثناء ومكان حدوثه أثناء التحليل اللاحق.
  • مقالب الأعطال دون استثناء المعلومات. عادةً ما يتم إنشاؤها يدويًا بواسطة المستخدم عندما يكون من الضروري إنشاء لقطة لعملية ما لتحليلها لاحقًا. ولا يعني هذا التحليل تحديد نوع الاستثناء، إذ لم يحدث أي استثناء، بل يعني تحليلًا من نوع مختلف تمامًا، على سبيل المثال، دراسة هياكل البيانات الخاصة بعملية ما وما إلى ذلك.

تكوين تفريغ ذاكرة Kernel

يجب عليك تسجيل الدخول تحت الإدارية حسابلتنفيذ الخطوات الموضحة في هذا القسم.

دعنا ننتقل مباشرة إلى تكوين إعدادات تفريغ الأعطال في Windows. أولاً علينا الذهاب إلى نافذة خصائص النظام بإحدى الطرق التالية:

  1. انقر بزر الماوس الأيمن على أيقونة "جهاز الكمبيوتر" - "الخصائص" - "إعدادات النظام المتقدمة" - "متقدمة".
  2. زر "ابدأ" - "لوحة التحكم" - "النظام" - "إعدادات النظام المتقدمة" - "متقدمة".
  3. اختصار لوحة المفاتيح "Windows" + "إيقاف مؤقت" - "إعدادات النظام المتقدمة" - "متقدم".

  4. نظام التحكم.cpl,3
  5. نفذ في سطر الأوامر(كمد):
    خصائص النظام المتقدمة

نتيجة الإجراءات الموضحة هي فتح نافذة "خصائص النظام" وتحديد علامة التبويب "خيارات متقدمة":

بعد ذلك، في قسم "التمهيد والاسترداد"، انقر فوق "خيارات" وبالتالي فتح نافذة جديدة تسمى "التنزيل والاسترداد":

يتم تجميع كافة معلمات تفريغ الأعطال في كتلة معلمات تسمى "فشل النظام". في هذه الكتلة يمكننا تعيين المعلمات التالية:

  1. كتابة الأحداث في سجل النظام.
  2. إجراء إعادة التشغيل التلقائي.
  3. تسجيل معلومات التصحيح.
  4. ملف مهمل.
  5. استبدال ملف تفريغ موجود.

كما ترون، فإن العديد من المعلمات الموجودة في القائمة تافهة تمامًا وسهلة الفهم. ومع ذلك، أود أن أتناول بالتفصيل معلمة "ملف التفريغ". يتم تقديم المعلمة كقائمة منسدلة ولها أربع قيم محتملة:

تفريغ الذاكرة الصغيرة

تفريغ الذاكرة الصغيرة (minidump) هو ملف يحتوي على أصغر قدر من المعلومات حول الفشل. أصغر مقالب الذاكرة الممكنة. على الرغم من العيوب الواضحة، غالبًا ما يتم استخدام عمليات التفريغ الصغيرة كمعلومات حول الفشل ليتم نقلها إلى بائعي برامج التشغيل التابعين لجهات خارجية لدراستها لاحقًا.
مُجَمَّع:

  • رسالة خطأ.
  • قيمة الخطأ.
  • معلمات الخطأ.
  • سياق المعالج (PRCB) الذي حدث فيه الفشل.
  • معلومات العملية وسياق النواة (EPROCESS) لعملية التعطل وجميع سلاسلها.
  • معلومات العملية وسياق kernel (ETHREAD) للخيط الذي يسبب العطل.
  • مكدس وضع kernel للخيط الذي تسبب في التعطل.
  • قائمة برامج التشغيل المحملة.

إقامة: %SystemRoot%\Minidump\MMDDYY-XXXXX-NN.dmp. حيث MMDDYY هو الشهر واليوم والسنة، على التوالي، NN هو الرقم التسلسلي للتفريغ.
الحجم: يعتمد الحجم على عدد البتات لنظام التشغيل: مطلوب 128 كيلو بايت فقط لنظام التشغيل 32 بت و256 كيلو بايت لنظام التشغيل 64 بت في ملف ترحيل الصفحات (أو في الملف المحدد في DedicatedDumpFile). وبما أننا لا نستطيع ضبط هذا الحجم الصغير، فقد قمنا بتقريبه إلى 1 ميغا بايت.

تفريغ ذاكرة النواة

يحتوي هذا النوع من التفريغ على نسخة من كافة ذاكرة kernel في وقت التعطل.
مُجَمَّع:

  • قائمة العمليات الجارية.
  • حالة الموضوع الحالي.
  • صفحات ذاكرة وضع Kernel موجودة في الذاكرة الفعلية في وقت التعطل: ذاكرة برنامج تشغيل وضع kernel وذاكرة برنامج وضع kernel.
  • ذاكرة المستوى المعتمد على الأجهزة (HAL).
  • قائمة برامج التشغيل المحملة.

يفتقد تفريغ ذاكرة kernel صفحات الذاكرة غير المخصصة وصفحات وضع المستخدم. أوافق، من غير المرجح أن تكون صفحات عملية وضع المستخدم ذات أهمية لنا أثناء فشل النظام (BugCheck)، حيث أن فشل النظام عادة ما يبدأ عن طريق رمز وضع kernel.

الحجم: يختلف وفقًا لحجم مساحة عنوان kernel المخصصة بواسطة نظام التشغيل وعدد برامج تشغيل وضع kernel. عادةً ما يكون حوالي ثلث الذاكرة الفعلية مطلوبًا في ملف المبادلة (أو في الملف المحدد في DedicatedDumpFile). ربما يختلف.

تفريغ الذاكرة كاملة

يحتوي تفريغ الذاكرة الكامل على نسخة من كافة الذاكرة الفعلية (RAM) في وقت الفشل. وفقا لذلك، يتم تضمين كافة محتويات ذاكرة النظام في الملف. تعد هذه ميزة وعيوبًا كبيرة في نفس الوقت، نظرًا لأن حجمها يمكن أن يكون كبيرًا على بعض الخوادم التي تحتوي على كميات كبيرة من ذاكرة الوصول العشوائي (RAM).
مُجَمَّع:

  • جميع صفحات الذاكرة الفعلية "المرئية". هذه هي ذاكرة النظام بأكملها تقريبًا، باستثناء المناطق التي تستخدمها الأجهزة: BIOS، ومساحة PCI، وما إلى ذلك.
  • البيانات من العمليات التي كانت تجري على النظام في وقت الفشل.
  • صفحات الذاكرة الفعلية التي لم يتم تعيينها إلى مساحة العنوان الظاهرية، ولكنها يمكن أن تساعد في التحقق من سبب الفشل.

افتراضيًا، لا يتضمن تفريغ الذاكرة الكاملة مناطق من الذاكرة الفعلية التي يستخدمها BIOS.
الموقع: %SystemRoot%\MEMORY.DMP . تتم الكتابة فوق التفريغ السابق.
وحدة التخزين: يتطلب ملف ترحيل الصفحات (أو الملف المحدد في DedicatedDumpFile) وحدة تخزين مساوية لحجم الذاكرة الفعلية + 257 ميجابايت (هذه الـ 257 ميجابايت مقسمة إلى رأس معين + بيانات برنامج التشغيل). في الواقع، في بعض أنظمة تشغيل، يمكن تعيين الحد الأدنى لملف ترحيل الصفحات بالضبط على قيمة حجم الذاكرة الفعلية.

تفريغ الذاكرة التلقائي

بدءًا من Windows 8/Windows Server 2012، تم تقديم نوع تفريغ جديد في النظام يسمى تفريغ الذاكرة التلقائي، والذي تم تعيينه كنوع افتراضي. في هذه الحالة، يقرر النظام نفسه تفريغ الذاكرة الذي سيتم تسجيله في حالة حدوث فشل معين. علاوة على ذلك، فإن منطق الاختيار يعتمد على العديد من المعايير، بما في ذلك تكرار “تعطل” نظام التشغيل.

بعد تغيير تكوين تفريغ ذاكرة Windows، قد تحتاج إلى إعادة تشغيل جهاز الكمبيوتر الخاص بك.

إعدادات التسجيل

قسم التسجيل الذي يحدد معلمات تفريغ التعطل:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

خيارات:

معامل يكتب وصف
إعادة التشغيل التلقائي REG_DWORD تمكين/تعطيل إعادة التشغيل التلقائي عند حدوث الموت الزرقاء.
CrashDumpEnabled REG_DWORD نوع التفريغ الذي يتم إنشاؤه.
  • 0 - لا تقم بإنشاء ملف تفريغ للذاكرة؛
  • 1 - تفريغ الذاكرة بالكامل؛
  • 2 - تفريغ ذاكرة النواة؛
  • 3 - تفريغ ذاكرة صغير؛
ملف مهمل REG_EXPAND_SZ مسار واسم تفريغ ذاكرة kernel وتفريغ الذاكرة الكاملة.
DumpFilters REG_MULTI_SZ عامل تصفية برنامج التشغيل في مكدس برنامج تشغيل تفريغ الذاكرة. يسمح لك بإضافة وظائف جديدة في مرحلة إنشاء مقالب الأعطال. على سبيل المثال، تشفير محتويات التفريغ. لا ينصح بتغيير القيمة.
LogEvent REG_DWORD تسجيل حدث في سجل النظام.
MinidumpDir REG_EZPAND_SZ مسار واسم تفريغ الذاكرة الصغيرة.
MinidumpsCount REG_DWORD الحد الأقصى لعدد عمليات تفريغ الذاكرة الصغيرة. عند تجاوزها، تبدأ عملية الكتابة فوق الإصدارات الأقدم.
الكتابة فوق REG_DWORD استبدال ملف تفريغ موجود. فقط لتفريغ ذاكرة kernel وتفريغ الذاكرة الكاملة.
تجاهل حجم ملف الصفحة REG_DWORD يتجاهل ملف الصفحة القياسي كمكان لتخزين تفريغ الذاكرة المؤقتة (المتوسطة). يشير إلى أنه يجب كتابة تفريغ الذاكرة في ملف منفصل. يُستخدم مع خيار DedicatedDumpFile.
ملف تفريغ مخصص REG_EZPAND_SZ مسار واسم الملف البديل المؤقت لتسجيل تفريغ الذاكرة. في المسار الثاني، سيتم نقل البيانات إلى DumpFile/MinidumpDir.

إنشاء ملف تفريغ للذاكرة يدويًا

لقد وصفنا أعلاه إعدادات إنشاء عمليات تفريغ تعطل النظام تلقائيًا في حالة حدوث خطأ فادح، أي استثناء غير معالج في كود kernel. ولكن في الحياه الحقيقيهبالإضافة إلى تعطل نظام التشغيل، هناك مواقف عندما يكون من الضروري الحصول على تفريغ ذاكرة النظام في وقت محدد. كيف تكون في هذه الحالة؟ توجد طرق للحصول على لقطة للذاكرة الفعلية بأكملها، على سبيل المثال باستخدام الأمر .dump في مصححات أخطاء WinDbg/LiveKD. LiveKD هو برنامج يسمح لك بتشغيل مصحح أخطاء Kd kernel على نظام قيد التشغيل في الوضع المحلي. يحتوي مصحح أخطاء WinDbg أيضًا على ميزة مشابهة. ومع ذلك، فإن طريقة التفريغ السريع ليست دقيقة لأن التفريغ الذي تم إنشاؤه في هذه الحالة "غير متسق" حيث يستغرق إنشاء التفريغ وقتًا، وفي حالة استخدام مصحح أخطاء وضع kernel، يستمر النظام في التشغيل والإنشاء التغييرات في صفحات الذاكرة.

جميع أنظمة ويندوز، عند اكتشاف خطأ فادح، تقوم بعمل تفريغ (لقطة) لمحتويات ذاكرة الوصول العشوائي (RAM) وحفظها على الأقراص الصلبة. هناك ثلاثة أنواع من تفريغ الذاكرة:

تفريغ الذاكرة بالكامل – يحفظ محتويات ذاكرة الوصول العشوائي (RAM) بالكامل. حجم الصورة يساوي حجم ذاكرة الوصول العشوائي + 1 ميجا بايت (الرأس). نادرًا ما يتم استخدامه، لأنه في الأنظمة التي تحتوي على كميات كبيرة من الذاكرة، سيكون حجم التفريغ كبيرًا جدًا.

تفريغ ذاكرة Kernel - يحفظ معلومات ذاكرة الوصول العشوائي (RAM) المتعلقة بوضع kernel فقط. لا يتم حفظ معلومات وضع المستخدم لأنها لا تحتوي على معلومات حول سبب تعطل النظام. يعتمد حجم ملف التفريغ على حجم ذاكرة الوصول العشوائي (RAM) ويتراوح من 50 ميجابايت (للأنظمة التي تحتوي على 128 ميجابايت من ذاكرة الوصول العشوائي) إلى 800 ميجابايت (للأنظمة التي تحتوي على 8 جيجابايت من ذاكرة الوصول العشوائي).

تفريغ ذاكرة صغير (تفريغ صغير) - يحتوي على كمية صغيرة إلى حد ما من المعلومات: رمز خطأ مع المعلمات، وقائمة برامج التشغيل المحملة في ذاكرة الوصول العشوائي (RAM) في وقت تعطل النظام، وما إلى ذلك، ولكن هذه المعلومات كافية لتحديد برنامج التشغيل المعيب . ميزة أخرى لهذا النوع من التفريغ هي حجم الملف الصغير.

إعداد النظام

لتحديد برنامج التشغيل الذي تسبب في ذلك، سيكون كافيًا بالنسبة لنا استخدام تفريغ ذاكرة صغير. لكي يتمكن النظام من حفظ ملف تفريغ صغير أثناء التعطل، يجب عليك تنفيذ الخطوات التالية:

لنظام التشغيل Windows XP لنظام التشغيل Windows 7
  1. جهاز الكمبيوتر الخاص بي ملكيات
  2. انتقل إلى علامة التبويب بالإضافة إلى ذلك؛
  3. خيارات؛
  4. في الميدان كتابة معلومات التصحيحيختار تفريغ ذاكرة صغير (64 كيلو بايت).
  1. انقر بزر الماوس الأيمن على الأيقونة حاسوبمن قائمة السياق حدد ملكيات(أو مجموعة المفاتيح Win+Pause)؛
  2. في القائمة اليسرى، انقر على العنصر إعدادات النظام المتقدمة;
  3. انتقل إلى علامة التبويب بالإضافة إلى ذلك؛
  4. في حقل التنزيل والاسترداد، يجب النقر فوق الزر خيارات؛
  5. في الميدان كتابة معلومات التصحيحيختار تفريغ ذاكرة صغير (128 كيلو بايت).

بعد الانتهاء من جميع عمليات المعالجة، بعد كل BSoD، سيتم حفظ ملف بالامتداد .dmp في المجلد C:\WINDOWS\Minidump. أنصحك بقراءة المادة "". يمكنك أيضًا تحديد المربع " استبدال ملف التفريغ الموجود" في هذه الحالة، ستتم كتابة كل تفريغ عطل جديد فوق القديم. لا أوصي بتمكين هذا الخيار.

تحليل تفريغ الأعطال باستخدام BlueScreenView

لذلك، بعد ظهور شاشة الموت الزرقاء، قام النظام بحفظ ملف تفريغ جديد لذاكرة الأعطال. لتحليل التفريغ، أوصي باستخدام برنامج BlueScreenView. ويمكن تحميله مجانا. البرنامج مريح للغاية وله واجهة بديهية. بعد تثبيته، أول ما عليك فعله هو تحديد موقع تخزين عمليات تفريغ الذاكرة على النظام. للقيام بذلك، انتقل إلى عنصر القائمة " خيارات" وحدد " متقدمخيارات" حدد زر الاختيار " حمولةمنالالتاليتفريغ صغيرمجلد"وحدد المجلد الذي يتم تخزين مقالب فيه. إذا كانت الملفات مخزنة في المجلد C:\WINDOWS\Minidump، فيمكنك النقر فوق " تقصير" انقر فوق "موافق" وانتقل إلى واجهة البرنامج.

يتكون البرنامج من ثلاث كتل رئيسية:

  1. كتلة القائمة الرئيسية ولوحة التحكم؛
  2. تعطل كتلة قائمة التفريغ؛
  3. اعتمادًا على المعلمات المحددة، قد يحتوي على:
  • قائمة بجميع برامج التشغيل الموجودة في ذاكرة الوصول العشوائي (RAM) قبل ظهور الشاشة الزرقاء (افتراضيًا)؛
  • قائمة برامج التشغيل الموجودة في مكدس ذاكرة الوصول العشوائي (RAM)؛
  • لقطة شاشة للشاشة الزرقاء؛
  • وغيرها من القيم التي لن نستخدمها.

في كتلة قائمة تفريغ الذاكرة (المميزة بالرقم 2 في الشكل)، حدد التفريغ الذي يهمنا وانظر إلى قائمة برامج التشغيل التي تم تحميلها في ذاكرة الوصول العشوائي (المميزة بالرقم 3 في الشكل). برامج التشغيل الموجودة على مكدس الذاكرة ملونة باللون الوردي. هم سبب مرض الموت الزرقاء. بعد ذلك، انتقل إلى القائمة الرئيسية لبرنامج التشغيل، وحدد الجهاز أو البرنامج الذي ينتمي إليه. بادئ ذي بدء، انتبه إلى الملفات غير النظامية، لأنه يتم تحميل ملفات النظام في ذاكرة الوصول العشوائي في أي حال. من السهل أن ترى أن برنامج التشغيل المعيب الموجود في الصورة هو myfault.sys. سأقول أن هذا البرنامج تم إطلاقه خصيصًا لإحداث خطأ الإيقاف. بعد تحديد برنامج التشغيل المعيب، تحتاج إما إلى تحديثه أو إزالته من النظام.

لكي يقوم البرنامج بإظهار قائمة برامج التشغيل الموجودة على مكدس الذاكرة عند حدوث BSoD، تحتاج إلى الانتقال إلى عنصر القائمة " خيارات"انقر على القائمة" أدنىجزءوضع" وحدد " فقطالسائقينوجدفيكومة"(أو اضغط على المفتاح F7)، ولإظهار لقطة شاشة للخطأ، حدد " أزرقشاشةفيXPأسلوب"(ف8). للعودة إلى قائمة كافة برامج التشغيل، يجب عليك تحديد " الجميعالسائقين"(ف6).




قمة