الهاردوير

  • فهم وتحليل الشاشة الزرقاء في Windows

    الشاشة الزرقاء، المعروفة أيضاً باسم “Blue Screen of Death” أو BSOD، هي ظاهرة تظهر على شاشة الحاسوب عندما يحدث خطأ نظام حاد يؤدي إلى تعطل النظام بشكل كامل. يُعد هذا الظهور مؤشرًا على مشكلة خطيرة في النظام ويُفضل التحقق منها فورًا.

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

    فيما يلي بعض الأكواد الشهيرة المصاحبة للشاشة الزرقاء ومعانيها:

    1. STOP: 0x0000001E (KMODE_EXCEPTION_NOT_HANDLED):
      تشير إلى استثناء (Exception) لم يتم التعامل معه بشكل صحيح في وضع النواة.

    2. STOP: 0x0000007B (INACCESSIBLE_BOOT_DEVICE):
      يشير إلى عدم القدرة على الوصول إلى جهاز الإقلاع (Boot Device)، وقد يكون ناتجًا عن مشاكل في تعريفات التخزين.

    3. STOP: 0x0000000A (IRQL_NOT_LESS_OR_EQUAL):
      يشير إلى أن مستوى الاستعلام (IRQL) الحالي أعلى من المستوى المسموح به.

    4. STOP: 0x000000F4 (CRITICAL_OBJECT_TERMINATION):
      يشير إلى إنهاء كائن (Object) حرج، وغالبًا ما يكون ذلك ناتجًا عن مشكلة في القرص الصلب.

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

    المزيد من المعلومات

    الشاشة الزرقاء، والتي تُعرف أيضاً باسم Blue Screen of Death (BSOD)، هي ظاهرة تثير القلق لدى مستخدمي الحواسيب، حيث تظهر فجأة وتُجمّد النظام، مما يستدعي إعادة تشغيل الحاسوب. يمكننا استكشاف المزيد من المعلومات حول هذه الظاهرة القاسية وكيفية التعامل معها.

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

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

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

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

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

    الكلمات المفتاحية

    المقال يستعرض معلومات حول “الشاشة الزرقاء” في نظام التشغيل Windows، ويشمل الكلمات الرئيسية التالية:

    1. الشاشة الزرقاء (Blue Screen):

      • تعني الظاهرة التي تظهر على شاشة الحاسوب عند حدوث خطأ نظام خطير، معروفة أيضاً بـ “Blue Screen of Death” أو BSOD.
    2. الكود الخطأ (Error Code):

      • رقم يظهر مع الشاشة الزرقاء ويشير إلى نوع الخطأ الذي حدث، مثل STOP: 0x0000007B، حيث يمكن فهمه لتحديد سبب المشكلة.
    3. الذاكرة العشوائية (RAM):

      • الجزء من الحاسوب الذي يستخدم لتخزين البيانات المؤقتة التي يحتاجها النظام والبرامج أثناء التشغيل.
    4. برامج الأجهزة (Hardware Drivers):

      • برامج تشغيل تتيح للنظام التفاعل مع الأجهزة الهاردويرية المختلفة مثل بطاقات الرسومات ووحدات التخزين.
    5. سجل الأخطاء (Error Log):

      • سجل يحتوي على معلومات حول الأخطاء التي تحدث في النظام، ويُستخدم لتحليل وتشخيص مشكلات الحاسوب.
    6. التعارض بين البرامج (Software Conflict):

      • حالة تحدث عندما تتداخل برامج مختلفة في النظام، مما يؤدي إلى حدوث مشاكل وتعطل.
    7. الهاردوير (Hardware):

      • المكونات الجسدية للحاسوب، مثل وحدات التخزين وبطاقات الرسومات وغيرها.
    8. CHKDSK:

      • أداة نظام تستخدم لفحص وإصلاح أخطاء في القرص الصلب.
    9. تحديثات النظام (System Updates):

      • تحديثات تقوم بتحسين أداء النظام وتعزيز أمانه، وتشمل تحديثات التعريفات وتصحيحات الأمان.
    10. الصيانة الدورية (Routine Maintenance):

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

    هذه الكلمات الرئيسية تشكل أساس فهم المقال وتعزز الوعي بأهم الجوانب المتعلقة بالشاشة الزرقاء وكيفية التعامل معها.

  • هل يجب على المبرمج ان يفهم الهاردوير ؟

    مافيش لغة برمجة هتقربك من الهاردوير بروز الجملة دي فى دماغك وقربك من الهاردوير مش هيفيد بحاجة فهمك لكيفية عمل مكونات الكمبيوتر الداخلية مع بعض بشكل منطقى هو ده المهم بشكل منطقى وليس بشكل فزيائي logical not physical

    يعني ايه الكلام ده
    يعني تركيب شريحة الميمورى فى حد ذاته والشرائح الألكترونية اللى عليها وكل pin فى الشريحة دي متوصل بأيه علشان ايه ومين فى ال Pins دي Inputs ومين outputs ومين power
    ده مايخصناش كمبرمجين
    شكل الـ processor من جوة وطريقة تصميمه وكيفية طباعته على رقائق السيلكون
    ده مايخصناش كمبرمجينblack and white computer tower

    دي حاجات ممكن تقرأ عنها او تشوفلها فديوهات كنوع من انواع زيادة المعرفة العلمية عندك .. حاجة كدة nice to have

    الى يخصنا هو الكلام المنطقى اللى بيوصف طريقة عمل الحاجات دي بشكل مجرد
    يعني: “الميمورى عندها مخازن للبيانات وكل مخزن له عنوان” دي جملة بتوصف بشكل مجرد .. ماقلناش المخزن ده شكله ايه بالظبط فى الشريحة ولا العنوان ده عبارة عن ايه بالظبط

    اما: “الميمورى عبارة عن دائرة كهربائية عليها microchips مكونة من logic gates متنوعة على رأسها And-Or gated Latch متصلة لتكوين register قد ييصل حجمه الى 64bit
    وشريحة الذاكرة الواحدة تحتوي على عدة registers فى شكل اعمده ويتم التعامل مع كل latch فى كل register وفقاً لموقعه برقم العمود رقم الصف (زى الأكسيل كدة)
    مضاف اليها مكون يدعى multiplexer وهو المسؤل عن الوصول الى عناوين كل ال registers فى الذاكرة”
    الفقرة الطويلة دي تعتبر الوصف الفزيائي للى بيحصل فى الميمورى
    والكلام ده مايخصناش فى حاجة كمبرمجين
    او خليني اقولك بشكل أدق .. ده مايخصش كل المبرمجين ان مكنتش هتكتب compiler مثلاُ فده كلام مايخصكش.
    وفى توصيف فزيائي قد يكون اعقد من كدة .. بس انا ماعرفوش.

    الكلام الـ logical هو اللى محتاجين نفهمه ويعتبر اساسيات علشان تعرف انت بتبرمج مين
    الكلام ال physical اللى محتاج يدرسه ويفهمه حد هيكون مسؤل عن تصنيع او برمجة المكونات دي بنفسه

    وبالمناسبة كدة الكود اللى انت بتكتبه المسؤل عن تنفيذه هو الـ CPU
    يعنى اياً كان اللغة اللى بتكتبها لما بتكتب instruction ليها علاقة بالميمورى فالـ instruction دي بتروح للـ CPU وهو ينفذها
    عايز تحط داتا فى الميمورى .. البروسيسور هو اللى بيحطها .. عايز تمسح من الميموري .. البروسيسور هو اللى بيمسح
    انت يا صديقي مالكش access على الميمورى مباشرة

    وبعدين لو انت عايز تقرب من الهاردوير .. او بلاش انت .. لو حد مصمم انك لازم تقرب من الهاردوير علشان تبقى تنين مجنح .. تقرب لغاية فين بالظبط. ؟!
    طب تعالى كدة نقرب مع بعض
    تسمع عن الـ Boolean Algebra
    ده بمنتهى البساطة نوع من الرياضيات خاص بالنظام الثنائي فقط والعمليات على رقمين فقط وهم صفر وواحد
    وهو مشتق اساساً من علم المنطق واللى انا مش فاكر اى تفاصيل عن تاريخه غير ان كان بيعبر عن علاقات بين قيمتين وهم حقيقي وغير حقيقي
    ده اساس عمل ال digital computers اللى احنا نعرفها النهاردة واللى تختلف عن مكنة الان تورنج اللى كانت انالوج
    حد ابن حلال خد الجبر البولي ده وقدر يصمم دوائر كهربائية معتمد عليه فى الفكرة متكونة من شوية ترانزستورز .. وشوية diodes وطبعاً resistors
    وبما ان الدوائر الكهربائية دي مابتفهمش يعنى ايه صفر ويعني ايه واحد فاحنا قلنا الترانزستور اللى مابيخرجش كهرباء ده كأنه صفر واللى بيخرج كهرباء كأنه واحد.
    والموضوع كبر ولمينا شوية دوائر مع بعض وبقى عندنا logic gates ودي فيها عائلات كتير اهمهم And و Or
    وال logic gates دي هى روح واساس اى microcontroller احنا نعرفه النهاردة

    انا بقرب معاك من الهاردوير اهو اما نشوف أخرتنا ايه

    وال microcontroller ده اللى هو الـ CPU بتاع الكمبيوتر .. وباقى المكونات برضه .. اى chip بقى.
    تمام كدة
    عايزين بقى نخلى الـ CPU ده يعملنا شوية حسابات .. اه تمام هو جواه logic unites كتير زي ما قلنا وكل unite بتقدر تعمل حسبه معينه
    عايزه يجمع رقمين تمام فى unite للكلام ده اديها الرقمين بس وهى هتطلعلك النتيجة
    طب اديها الرقمين ازاى؟ واخد النتيجة فين؟
    هتديهاله بالطريقة اللى بيفهمها .. ترانزستور مابيطلعش كهرباء وترانزستور بيطلع كهرباء .. صفر وواحد يا هندسة.
    ازاى طيب؟
    بسيطة هتحول اى رقم عشري الى رقم ثنائي الأول
    رقم زي 90 لما تحوله ثنائي هيبقى 1011010
    بس يا سيدي اتفضل اتعامل
    افتح المانويل بتاع البروسيور هتلاقى قائمة الـ instructions اللى بيقدر ينفذها اتفضل اتعامل
    افتح المانويل ياعم التنين مالك هنجت ليه
    صعبه مش كدة
    ماشى نسهلهالك .. مافى واحد ابن حلال اخترع لغة برمجة اسمها Assembly
    ودي علشان التنانين الصغيرين اللى زيك
    بتكتب فيها شوية أوامر غالباً من 3 او 4 حروف انجليزي وبعدين اللغة بتحول الأوامر دي مع البيانات اللى انت مدخلها للأصفار والوحايد او بمعنى تانى بتحولها للغة الأله
    اللفة اللى بتفهمها الأله
    واللأسمبلي غالباً هتلاقيها فى اى instructions manual لأى microcontroller او CPU
    والمانول ده انت تستخدمه لما تكون بتكتب compiler بنفسك.
    وبعدين جه واحد ابن حلال اكتر وقالك الأسمبلي دي بتاخد من المبرمجين وقت كبير علشان تعمل حاجة صغيرة
    خلينا نعمل لغة تسهل الموضوع أكتر من كدة.. وظهرت لغات زي Fortran ودي كانت اريح فى الكتابة والتعليمات فيها كانت اطول من ال3 حروف بتاعة الأسمبلي
    وبرضه اللغة بتحول الكود بتاعك للغة الألة .. وده شىء مافيش منه مفر .. هى اساساً لغة الألة هى لغة الأساس بقى لو هنتكلم صح .. وكل اللغات التانية اتوجدت علشان تتناسب مع طبيعة المخ البشري
    وطبعاً احنا لغاية النهاردة فى لغات جديدة بتظهر
    انت عارف ان الـ C ظهرت فى السبعينات؟! والأسمبلي ظهرت فى الأربعينات! وفى الفترة الزمنية اللى بينهم ظهرت لغات ((ناجحة)) كتير؟!
    واللى خلى الـ C لغة مميزة هو ان ها اتعملت علشان يتكتب بيها نظام تشغيل Unix
    وانت عارف ان Linux كان محاولة لتقليد Unix فاتكتب بيها هو كمان!
    بس يا سيدى وفجأة العالم كله بيلف ويدور حوالين الـ C
    زى مابيحصل النهاردة مع الـ Javascript

    اطب حنا ماوقفناش عند ال C ليه؟ ايه اللى خلى الناس تخترع لغات تانية جديدة ويصدعونا بيها.
    تعددت الأسباب .. بس خليني اقولك على سبب وهو تطور هندسة البرمجيات .. تطور الفكر البرمجي نفسة
    حاجة زي ال OOP .. كانت محتاجة تجديد فى اللغات المتاحة علشان تستوعبها .. وده لأن الموضوع مابقاش مجرد برمجة CPU زي زمان .. لأ ده احنا بدأنا نتعامل مع data structures متقدمة
    تقصد ان الـ C مش متواكبة مع تطورات صناعة البرمجيات؟!
    بص لو قلت أه ففى 3 مليون شاب متحمس هيفهموا انى بغلط فى الـ C وهيعتبروني ملحد. ولو قلت لأ مش هتبقى أجابة سليمة .. فبلاش الأسئلة الوجودية دي.

    سبب تانى لظهور الـ high level languages هو ظهور انوع كتير من ال CPUs وكل نوع وله التعليمات بتاعته
    وده كان بيؤدي اللى ان ال compiler بتاع اللغة لازم يبقى فاهم كل CPU منهم بيشتغل ازاى علشان يقدر يطلعله لغة الة سليمة
    وده كان حوار مقرف للمبرمجين.
    بألأضافة الى تعدد انظمة التشغيل اللى برضه محتاجة تعليمات فى الكود بشكل مختلف لكل نظام منهم
    فظهرت عندنا اللغات اللى هدفها فى الحياة انك تكتب كود مرة واحدة ومالكش دعوة هو هيـ run على انهى processor او انهى نظام تشغيل
    اللغة هتحوله للغة وسيطة وبعدين اللغة الوسيطة هيتم تحويلها للغة الألة الخاصة بكل بروسيسور حسب الطلب.
    الله … انتوا بتبعدونا عن الهاردوير كدة يا جماعة
    ياعم وانت كنت قربت اساساً انت طول عمرك بعيد

    المهم علشان البوست طول منى اوى وانا مكنتش متوقع ولازم اوقف كتابة لغاية كدة ان مكنتش تحسن علاقتك بالميموري وتقرب منها أوى وتتعودوا على بعض يبقى انت مش …. اه .. لا .. ده بوست بجد مش هزار .. معلش.

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

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