The Case of High RAM,Disk Utilization
صارت لي مشكله في اللاب توب (ويندوز فيستا) وهي ان كل مره اسوي بووت ويشتغل يصير فيه استخدام عالي جدااا للهاردسك والرام وبعض الاحيان يعلق المعالج على 100% استخدام وبعد تقريبا 5 دقايق يطلع لي شاشه زرقاء
. انا شكيت ان درايفر عندي مسوي زحمه ويبي له تحديث فا فتحت cmd كا ادمن بشكل سريع قبل لا يسوي كراش لاني كنت بسباق مع الزمن وانا واللاب توب وكتبت الامر driverquery وجلست اشوف الدرايفرز كلهم اوكيه مافيهم واحد قديم !! بعدها رحت اشيك على Event Viewer وحصلت فيه اخطاء كثيره مفادها انه فيه مشكله في الكنترولر حق الهاردسك !!
طبعا انا ماخذ باك اب من الهاردسك ماعندي مشكله انه يخرب بس الجهاز توه جديد !! فا فكرت اني اسوي اعاده تشغيل واستخدم اللينكس اللي انا مركبه مع الويندوز على نفس الهاردسك واشتغل لينكس عادي مافيه مشكله سويت نسخ ملفات من والى الهاردسك مافيه مشكله واشوف لمبه الهاردسك ماتتحرك كثير يعني الوضع سليم ؟ فا تاكدت ان الموضوع فيه ان واخواتها .. فا قمت وسويت اعاده تشغيل للويندوز فا بعد ماوصل لتسجيل الدخول بدا الهاردسك يشتغل بدون توقف فاخليته شوي ماسويت تسجيل دخول على طول بعدها بـ5 دقايق عطاني شاشه زرقاء قلت حلو الحين يمديني اسحب Memory Dump واسوي لها ديبق واشوف وش السالفه وش قاعد يصير .. فا سميت بالله وفتحت الميموري دمب بالديبقر طبعا اول ماتفتح الميموري دمب تلقائيا windbg بيسوي لك تحليل اولي للموضوع وبيعطيك النتيجه فا عطاني النتيجه مباشره وقال ان الموضوع memory_corruption زي ماهو واضح بالصوره التاليه وكملت الشغل الديبق شوي عشان احاول احصل معلومات اكثر لانه مو دايم نتيجه التحليل التلقائي صحيحه وتاكدت ان الكراش سببه ميموري كربشن ماهو درايفر او برنامج عندي.
طبعا انا لفت نظري الكلمه اللي بعد memory_corruption وهي nt!MiWaitForInPageComplete+24d !! السالفه فيها paging هممم مسكنا اول خيط وبدات يتضح سبب الهاردسك والميموري عليهم استخدام عالي المهم قلت خلني اسوي بووت للاب توب مره ثانيه واحاول اسوي تسجيل دخول واشغل برنامجي المفضل Process Explorer واتابع الموضوع وهو جالس يصير مباشره . وان شاءالله هالمره مايسوي كراش ويعطيني شويه وقت عشان اقدر اكتشف المشكله وين واحاول احلها اذا عرفت سبب حدوثها... المهم شغلت البرنامج واشوف الهاردسك بدا ييشتغل وانا جالس اتابع طبعا زي ماقلت المعالج بعض الاحيان يوصل 100 بالميه وبعض الاحيان لا تشوفه طبيعي بس الهاردسك والرام جالسين يسولوفون مع بعض ومكثرين بعد ومع المتابعه ماشفت شي غريب جالس يصير فا قمت واظفت عمود اسمه Cycles Delta عشان اشوف اكثر اذا فيه شي جالس يحوس وسط ال CPU .. فا تفاجاءت بواحد من svchost.exe مستوى استخدامه لل cpu غير ثابت يعني من 1 بالميه الى 25 بالميه لمجرد ثواني وينزل مره ثانيه يعني بشكل عام ماهو دليل ان فيه مشكله بس الـCPU Cycles Delta واصله السماء ؟ فا معناها فيه مشكله قمت وسويت كل يمين عليه واخترت خصائص بعدين ضغطت على Threads عشان اشوف وش جالس يصير داخل svchost.exe وشفت ملف dll اسمه sysmain.dll هو اللي جالس يلعب زي ماهو واضح بالصوره التاليه !!
وهالملف خاص لميزه الـSuperFetch الموجوده بويندوز فيستا قا قمت وسويت Suspend بعدها سكت الهاردسك والرام وال CPU cycles نزلت كثيييير وصار الوضع طبيعي!! فا عرفت انه هو سبب هالزحمه كلها ؟؟ بس فكرت فيها هذا ملف نظام المفروض مايسوي هالمشكله معناها فيه سبب ثاني هو اللي مسبب الاستخدام العالي اللي جالس يصير .. طبعا انا عارف طريقه عمل الSuperFetch بعد مايبداء النظام يبداء بقراءه الملف Ag*.db والموجود على الهاردسك !! عشان يعرف يسوي لود وكاش لاي برنامج في الرام وهاذي احد المميزات اللي تميزه عن prefetch الموجوده بويندوز اكس بي
فا قمت وحذفت محتويات مجلد الـ Prefetch بمافيهم الاخ Ag*.db واعدت تشغيل النظام بعدها يا سلااااام انحلت المشكله
ملخص اللي كان صاير
كان فيه كربشن بمحتويات Ag*.db فا كل مره اشغل الجهاز يشتغل ال SuperFetch ويبدا يقرى محتويات Ag*.db من الهاردسك عشان يعرف يسوي لود لمين ويخلي مين
بس فيه اجزاء من ملف Ag*.db فيها مشكله فا تسببت بحدوث مشكله في قراء الملف وبالتالي حدوث Loop يشغل الرام والهاردسك لدرجه ان الهاردسك النظام نفسه مايقدر يدخل عليه وبالتالي يسبب بحدوث ثقل كبيير بالنظام وبعض الاحيان يعطي شاشه زرقاء مفادها انه فيه Memory Corruption
وينشاء اخطاء في الEvent Viewer مفادها انه فيه مشكله في الكنترولر لان النظام ماهو قادر يستخدم الهاردسك
وبالتالي شاشه زرقاء انا اللي كان قاهرني انه بعض الساعات يشتغل الهاردسك لدرجه ان النظام يعطي شاشه زرقاء وبعض الاحيان يكون ثقيل جداا بس مايسوي كراش ويستمر على هالحاله.
في الختام اتمنى انكم استفدتوا من تجربتي


