عندما أضغط زر البور في الجهاز ماهو اسم الملف الذي يقوم البايوس بقرائته وهل من الممكن أن يكون هذا الملف ملفC لو فكر أحدنا أن ينشيء نظام أو برنامج يعمل خارج النظام؟
عندما أضغط زر البور في الجهاز ماهو اسم الملف الذي يقوم البايوس بقرائته وهل من الممكن أن يكون هذا الملف ملفC لو فكر أحدنا أن ينشيء نظام؟
على حسب علمى المحدود فى هذا المجال فلا يوجد اسم معين للملف الذى يقرأ..فى الواقع لا يوجد ملف معين يقرأ (مالم تقصد اسم الkernel فالkernel يمكن ان تسميها اى اسم, لا يجب ان يتضمن كلمه kernel)
فقط تتم قراءه اول sector فى الmemory و يتم كتابه assembly instructions تجل الجهاز يقوم بعمل boot من هناك و من ثم يحدث ما يحدث
و بالنسبه لسؤال ان يكون هذا الملف (ساجيب باعتبار انك تقصد الملف الذى يقوم بكتابه البيانات فى اولsector) ملف c فعلى حسب علمى لا, هذا الملف يكون ملف اسمبلى لكن يمكن من خلاله تحميل و تشغيل داله خارجيه مبرمجه ب C بعد ان تقوم بعمل بتمرير hlt instruction لمنع ملف الاسمبلى من الاستمرار فى العمل و تكليف كود C بباقى المهام
address هذا السكتور او التراك هو 0x1BADB002..من هناك يبدأ كل شئ
هذا على حسب علمى, و افضل ان تنتظر اجابه احد اساتذتنا ف من الممكن ان اكون مخطأ بالكامل
تم تعديل هذه المشاركة بواسطة MidooX10 في 8 يونيو 2016 في 14:37
بحسب ما بحثت وجدت أن هذا يحصل في جزء من الهارد ديسك يسمى روم وليس رام هذا في المايكروا كنترولر وليس في الpc العادي
سأبحث عن ما أشرت أليه فلعله هو المقصود بارك الله فيك وشكراً للمساعده ولازلت أبحث عن أي معلومات وأمثله في هذا المجال
ولكي يتضح مرادي هوعمل برنامج بالسي أو سي ++ يعمل خارج منصة ويندوز بمجرد الضغط على زر التشغيل في الكمبيوتر يعمل.
لا يستطيع فيه المستخدم استخدام النت أو الشبكة ويقوم البرنامج بالاتصال بالشاشة ويرسم الفورم وسطح المكتب بشكل مباشر عبر البين أو البورت الخاص بالشاشة باتصال رقمي أو بحسب البروتكول المتبع في التعامل مع الشاشات.
وأيضاً يتصنت على منافذ الجهاز ليحصل على إدخالات الكيبورد والفأره يعني برنامج مستقل تماماً
فهمت قصدك,
عن التعامل معvga ف ان استطعت تنفيذ هذا البرنامج فى بدايه الاقلاع, اى جعلته يبدأ من العنوان السابق و قمت بامره على تنفيذ كود سي بداخله هذا الكود
string vgamem = (string) 0xb8000; vgamem[0]=/*hex character value*/ vgamem[1]=/*hex color code*/
سيقوم هذا الكود بالتواصل مباشره مع ذاكر الفديو و طباعه الحرف المراد بالتنسيق المراد
و بالنسبه للكيبورد ف الموضوع اكثر تعقيدا و لكن انوى ان شاء الله التحدث عنه عنما قريب
مثال

بالامكان نسخه على cd و عمل boot منه و بالامكان تعديل الداله core الموجوده فى الملف kernel.c لتغير وظيفه البرنامج و جعله يقوم باى شئ اخر مثل عمليه حسابيه بسيطه
تم تعديل هذه المشاركة بواسطة MidooX10 في 9 يونيو 2016 في 04:00