الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف أقدر أخلي برنامج بالسي++ يعمل بوت من الدسك

مغلق
بدأه MohannaD في 17 نوفمبر 2001 · 6 رد · 4,442 مشاهدة · في قسم المواضيع الهامة في قسم السي /سي++
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

كل عام وانتونا بخير يا شباب

كيف أقدر أخلي برنامج بالسي++ يعمل بوت من الدسك عند تشغيل الكمبيوتر (قصدي من ناحية البرمجة وكتابة البرنامج في البوت سكتور في الدسك ما قصدي كيف أخلي الدسكات تعمل بوت عند تشغيل الكمبيوتر) وعل العلم أني عملت include إلى iostream.h في البرنامج وشكر مع التفصيل :)

thestrangersoul@yahoo.com

#2

أخي يمكن القيام بذلك ولكن يحتاج هذا الأمر إلى دراسة في الأول .. ;) ولكن يجب أن تتبع مايلي :

1) يفضل أن تستخدم لغة سي وليس سي++ لأن السي أقرب إلى المعالج من السي++

2) سوف تستخدم المترجم فقط من غير الlinker لأن ال linker ينتج كود متعلق بنظام تشغييل معين . أو يمكن استخدامه مع الحرص الشديد

3) طبعا لا يمكنك استخدام iostream لأنها مثلا في ال dos تعتمد على مقاطعة الدوس رقم 0x21 اعتماد شديد وأنت هنا لايوجد لديك دوس

4) من أجل الاخراج إلى الشاشة يجب استخدام مقاطعة البيوس رقم 0x10 .

وهذا ما يخطر على بالي الآن وإذا تقدمت في هذا المشروع أرجو أن تشاركنا فيه هنا :)

Coding on the Cloud and for the Cloud!

My Blog

#3

أنا في الحقيقة قدرت أخلي البرنامج يعمل بوت لكن يطلع أليي هذا الكلام : Starting MS-DOS...

وبعدين يطلع أليي رسالة تفيد أنه لم يستطيع الوصول أو لم يستطيع وضع الأمر (eg, C:COMMAND.COM) في الصيغة الصحيحة ويتوقف البنامج عند

A>

فقط

لكن أنا أبغى أعرف كيف عرف الكمبيوتر أن البرنامج ألي أنا حاطنه قابل للتحميل رغم أني فقط نسخته وحطيته على الدسك ولم أفعل أي شيء للبوت سكتور وكيف إيذا وضعنا أكثر من برنامج أو ملف يتعرف على الملف الصحيح حتى لو كانوا كلهم قابلين للتشغيل ؟؟!!

وآسف على التثقيل

مهند

thestrangersoul@yahoo.com:D

#4

أولا توجد معلومات في السيكتور 0 تفيد أن القرص أو الدسك قابل للاقلاع . فإذا كان كذلك فإن البيوس يقوم بتحميل قسم من القرص في الذاكرة واستدعائه هذا القسم لايتجاوز 512 بايت وبالتالي يجب أن يكون فيه الكود اللازم من أجل تحميل ملف آخر من القرص الصلب أو الدسك (في العادة يكون ملف النظام) . بعد التحميل يتم نقل التنفيذ إلى ذاك القسم .

وهذا بشكل مختصر عن طريقة عملية برمجة بووت ..

Coding on the Cloud and for the Cloud!

My Blog

#5

أخي هاني

السلام عليكم

ذكرت بأن السي أفضل من سي ++ في هذه المسألة ...

ولكن حسب علمي المتواضع، لا يوجد شيء يستطيع السي القيام به ولا يستطيع سي ++ من القيام به

فهل رجاءا شرحت ووضحت قولك أكثر؟ وشكرا

والسلام

#6

أخي عبدالجبار ،

أشكرك على السؤال ..

كلامك صحيح أنه كل شيئ يمكن القيام به بالسي يمكن القيام به بالسي++ ولكن في الأمور القريبة من النظام والجهاز فيفضل استخدام السي لأن الكود سوف يكون أكفأ.

وأنا عندما أقصد السي++ أقصد بناء البرنامج باستخدام الصفوف أي classes . واستخدام الclasses في هذه البرامج سوف يعقدها .

إن ال Device Driver في الوندوز إن لم تبرمج بالأسمبلي فهي تبرمج بالسي ولا ينصح باستخدام السي++ لأن هذا النوع من البرامج يحتاج إلى سرعة عالية في الأداء والسي++ أبدطأ من السي بقليل في حالة استخدام الكلاسيس ..

طبعا يمكنك استخدام مترجم السي++ في ترجمة برنامجك المكتوب بالسي ..

Coding on the Cloud and for the Cloud!

My Blog

#7

ما هي هذه المعلومة التي في البوتسكتور يعني ما هي هذه المعلومة إذا كان بالإمكان إقلاع هذا الدسك وماهي عندما لايمكن ذلك ؟؟

وكيف أستطيع كتابتها إلى الدسك والهاردسك والسيدي (هذا إذا كان في إختلاف) وشكرا :)

آسف على التثقيل :)

thestrangersoul@yahoo.com

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…