من مهتم بتطوير الانظمة ؟؟

تم تحميل الصفحة في 0,4541304 ثانية

اخواني الكرام من منكم مهتم بتطوير الانظمة بداية من البيوس الى البوت لودر الى الكرنل ؟؟


  • مجموع المصوتين
    16

zeraya

ExpErt DeveloPer
rankrank
إنضم
20 سبتمبر 2016
المشاركات
379
الإعجابات
591
النقاط
103
الإقامة
127.0.0.1

برعاية نقطة التطوير

تعوذ يأخي من الكسل فالعمل عبادة,والعلم صدقة جارية.
ابدء فقط ونحن معك ان شاء الله ولك أجر في ذلك.
ان شاء الله ابدأ العمل على الدروس يمكن اليوم او غدا سابدا بتصميم برنامج للدورة و نتكل على الله
 
إنضم
2 نوفمبر 2012
المشاركات
2,609
الإعجابات
1,970
النقاط
113
الإقامة
Online
هل برمجة البوت لودر تتم بلغة الأسمبلي فقط ؟
أم توجد عدة طرق لفعل ذلك ؟
 

said-abdo

Beginner Developer
rank
إنضم
25 سبتمبر 2015
المشاركات
40
الإعجابات
29
النقاط
18
الإقامة
أ‡أ،أ£أ›أ‘أˆ
هل برمجة البوت لودر تتم بلغة الأسمبلي فقط ؟
أم توجد عدة طرق لفعل ذلك ؟
مرحبا صديقي دعني أعيد صياغة السؤال بطريقة أخرى,ليصبح كتالي :
ما مدى قدرة اى لغة برمجة فى تطوير نظام تشغيل ؟
النظام التشغيل يتلخص دوره في ادراة موارد الجهاز الذي يعمل عليه,من ذواكر (ram-rom-eprom-.....).معلاجات,متحكمات,أجهزة ادخال واخراج,وهذه المهمة تحتاج الى السرعة في التنفيذ.
الى جانب السرعة في تنفيذ هذه المهام فهو ملزم بتوفير موارد لتطبيقات المستخدم,ولا يستحوذ عليها لنفسه وحده :)
اللغة البرمجة التي تمتاز بالسرعة والمرونة
هناك نوعان من لغة البرمجة, لغات بحاجة لcompile فقط لتحول الى الآلة مباشر, وأخرى بحاجة لمفسر interpreter أي يتم تفسيرها أولاً بأول عند كل تنفيذ .

هل معنى هذا الكلام أنه لا يمكن تطوير نظام التشغيل بلغات أخرى غير assembly و c(سي) ؟
يمكن تطوير بوت لودر وكيرنل بالغات أخرى كا سي شارب مثلا ولكن نظام بسيط لأغراض تعلمية فقط كا SharpOS,
 

zeraya

ExpErt DeveloPer
rankrank
إنضم
20 سبتمبر 2016
المشاركات
379
الإعجابات
591
النقاط
103
الإقامة
127.0.0.1
هل برمجة البوت لودر تتم بلغة الأسمبلي فقط ؟
أم توجد عدة طرق لفعل ذلك ؟
----------------
سؤالك جميل جدا
الاجابة يجب معرفة بعض الامو و هي :
يوجد نوعان من البوت لودر leagcy bootloadr و uefi bootloader
جميل
leagcy bootloadr : انت من تقوم بالانتقال من real mode الى protected mode اما في uefi البيوس هي من تقوم بذلك و بعض الامور اخرى ماذا يعني هذا؟؟
في real mode اقصى عنوان هو 1 ميغا و حتى للوصول الى 1 ميغا تجتاج الى تجزئة الذاكرة
على العموم السي لا تدعم 16 بت او الريل مود على عكس الاسمبيلي التي تدعم الريل مود
ماهي خصائص الريل مود ؟؟
من اهم مميزاته هي التعامل من العتاد المثبت على الحاسوب مباشرة و ذلك عن طريق مقاطعات البيوس
و حين ننتقل الى protected mode نفقد هذه الخاصية
الان ماهو الحل اذا اردنا العمل في protected mode و اردنا عمل دالة من دوال البيوس التي بالاساس تعمل في الريل مود و ليس في البروتكتد مود
الحل :
1-الرجوع من البروتكتد مود الى الريل مود
2-استعمال وضع اخر و يسمى vitual mode
----------------
ماذا نستنتج من كل الكلام السابق
ان البوت لودر تتم برمجته بالاسمبلي لان الاسمبلي يهلة و تدعم 16 بت مباشرة و هو مالاتدعمه السي
لكن في حالة مااردنا كتابة البوت لودر بالسي يمكننا ذلك ايظا عن طريق الرجوع من البروتكتد مود الى الريل مود لكن في كلتا الحالتين نحتاج الاسمبلي
ملاحظة : يوجد كمبيلر اسمه small c يدعم 16 بت لكن حقيقة لم اجربه

------------
بالنسبة لل uefi bootloader الامر يختلف تماما فكل الامور جاهزة و تمام التمام
 

zeraya

ExpErt DeveloPer
rankrank
إنضم
20 سبتمبر 2016
المشاركات
379
الإعجابات
591
النقاط
103
الإقامة
127.0.0.1
مرحبا صديقي دعني أعيد صياغة السؤال بطريقة أخرى,ليصبح كتالي :
ما مدى قدرة اى لغة برمجة فى تطوير نظام تشغيل ؟
النظام التشغيل يتلخص دوره في ادراة موارد الجهاز الذي يعمل عليه,من ذواكر (ram-rom-eprom-.....).معلاجات,متحكمات,أجهزة ادخال واخراج,وهذه المهمة تحتاج الى السرعة في التنفيذ.
الى جانب السرعة في تنفيذ هذه المهام فهو ملزم بتوفير موارد لتطبيقات المستخدم,ولا يستحوذ عليها لنفسه وحده :)
اللغة البرمجة التي تمتاز بالسرعة والمرونة
هناك نوعان من لغة البرمجة, لغات بحاجة لcompile فقط لتحول الى الآلة مباشر, وأخرى بحاجة لمفسر interpreter أي يتم تفسيرها أولاً بأول عند كل تنفيذ .

هل معنى هذا الكلام أنه لا يمكن تطوير نظام التشغيل بلغات أخرى غير assembly و c(سي) ؟
يمكن تطوير بوت لودر وكيرنل بالغات أخرى كا سي شارب مثلا ولكن نظام بسيط لأغراض تعلمية فقط كا SharpOS,
---------------------------
تستطيع برمجة نظام التشغيل حتى بالفيجوال بيسك اذا اردت :eek:
لكن الاكيد ان اداء السي ليس باداء الفيجوال او حتى السي بلس بلس فما بالك بالفيجوال هذا عدا عن الليونة التي تتميز بها السي
بالنسبة للتعامل مع الاجهزة تبقى الاسمبلي هي الاساس بمعنى يمكنك عمل دوال للتعامل مع الاجهزة باي لغة برمجية لكن هذه الدوال ماهي الا غطاء للاسمبلي
اي ان المحرك يبقى الاسمبلي و انت تقوم باستيرادها من الاسمبلي اي ليست دلة تابعة للسي او اي لغة برمجية اخرى
 

zeraya

ExpErt DeveloPer
rankrank
إنضم
20 سبتمبر 2016
المشاركات
379
الإعجابات
591
النقاط
103
الإقامة
127.0.0.1
صحيح,وماذا عن سرعة التنفيذ ؟
اه هنا الفيصل و الفارق السي اسرع من السي بلس بلس فما بالك باللغات الاخرى
بالنسبة للسرعة تعتمد كثيرا على اعدادات الكمبيلر الذي تعمل عليه بالاساس
لكن السي تستطيع جعلها قريبة جدا جدا حتى من الاسمبلي من ناحية الاعدادات
في نظري لو اردت برمجة نظام نشغيل السي و الاسمبلي هي الخيار الامثل من ناحية الاداء و السهولة و الليونة حيث بهذين اللغتين تتحكم بكل بت اذا اردت
 
إنضم
2 نوفمبر 2012
المشاركات
2,609
الإعجابات
1,970
النقاط
113
الإقامة
Online
كفّيتم ووفّيتم.. اتضحت لي الصورة الأن
يعني باختصار يكمن الفارق في الأداء والسرعة والمرونة...
وهذا ما توفره اللغات منخفضة المستوى
صراحة أول مرة أسمع عن نظام Sharp Os سأقوم بتجربته في أقرب وقت
---
لدي سؤال كان بذهني منذ سنوات أتمنى أجد اجابة له
كنت في السابق مابين 2003 - 2013 أعمل في محل لتحديث أجهزة الاستقبال
كان هناك بعض الاجهزة أقوم بتحديث السوفتوير فقط
أما بعض الأجهزة الأخرى ان مررت لها سوفتوير تتوقف ولا تقلع لأضطر لعمل J-Tag ...
والسبب كان أنه قبل ما أمرر التحديث يجب تمرير Boot Loader أولا
فهل لك تفسير لهذه المشكلة لماذا يجب علي تغيير نسخة البوت لودر ؟!
أسف على الاطالة.
 

zeraya

ExpErt DeveloPer
rankrank
إنضم
20 سبتمبر 2016
المشاركات
379
الإعجابات
591
النقاط
103
الإقامة
127.0.0.1
كفّيتم ووفّيتم.. اتضحت لي الصورة الأن
يعني باختصار يكمن الفارق في الأداء والسرعة والمرونة...
وهذا ما توفره اللغات منخفضة المستوى
صراحة أول مرة أسمع عن نظام Sharp Os سأقوم بتجربته في أقرب وقت
---
لدي سؤال كان بذهني منذ سنوات أتمنى أجد اجابة له
كنت في السابق مابين 2003 - 2013 أعمل في محل لتحديث أجهزة الاستقبال
كان هناك بعض الاجهزة أقوم بتحديث السوفتوير فقط
أما بعض الأجهزة الأخرى ان مررت لها سوفتوير تتوقف ولا تقلع لأضطر لعمل J-Tag ...
والسبب كان أنه قبل ما أمرر التحديث يجب تمرير Boot Loader أولا
فهل لك تفسير لهذه المشكلة لماذا يجب علي تغيير نسخة البوت لودر ؟!
أسف على الاطالة.
---------
جميل جدا السوفت وير هو بمثابة الكرنل
و البوت لودر هو المسؤول عن اعطاء المعلومات للكرنل
بمعنى ان الكرنل لديها عناوين محددة تجد في المعلومات الخاصة بالجهاز
مثال : الكرنل مبرمجة على انها في الادرس0x0000200 مثلا تجد حجم الذاكرة
من يقوم بتوفير المعلومات عن الذاكرة في ذلك الادرس هو البوت لودر و من بوت لودر الى اخر تختلف العناوين
بمعنى
البوت لودر اذا لم يوفر حجم الادرس في ذلك العنوان و اتت الكرنل و جلبت من الادرس المفترض انه يحتوي على حجم الذاكرة
فبالتالي اما ان تحصل على قيمة صفرية او قيمة خاطئة و بالتالي يحصل كراش
بمعنى لأي سوفتوير يجب ان تكون له بوت لودر
لكن الذي حاصل هو كالتالي :
الشركات تتفق فيما بينها
و يعملون عناوين ثابتة لمعلومات معينة حتى اذا تغير السوفتوير و لم يتغير البوت لودر يبقى كل شيء تمام
لكن في حالات كثيرة و مع تطور الاجهزة الشركات لا تلتزم ب تلك العناوين المتفق عليها و هو امر طبيعي حيث ان الاجهزة تتغير ايظا ..
اذا لم تفهم ماقلت او بقي عندك اشكال اخبرني و ساحاول التوضيح اكثر
 
إنضم
2 نوفمبر 2012
المشاركات
2,609
الإعجابات
1,970
النقاط
113
الإقامة
Online
فعلاً هذا الخلل كان يحدث لي في السابق جرّاء تحويل سوفتوير الجهاز من شركة لأخرى كما ذكرت حضرتك..

بقي لدي التباس بين الكيرنل والسوفتوير حين قلت :

#السوفت وير هو بمثابة الكرنل

حسب معلوماتي المتواضعة الكيرنل هي الفاصل بين الهاردوير HW و SW السوفتوير
أنا استعمل لينُكس وأقوم أحيانا بترقية الكيرنل
فأجد الدريفرات تم تحديثها وبعض المشاكل قد حلت وغيرها ...
هنا التبس علي الأمر
ألا يمكن أن نعتبر sw هو نظام التشغيل لأني عند تحديث الجهاز receiver تتغير القوائم وطريقة التعامل وغيرها ..
لكن السؤال أين هي الكيرنل في حالتنا هذه ؟ أو هي مدمجة مع السوفتوير
وشكرا مرة أخرى
 

zeraya

ExpErt DeveloPer
rankrank
إنضم
20 سبتمبر 2016
المشاركات
379
الإعجابات
591
النقاط
103
الإقامة
127.0.0.1
فعلاً هذا الخلل كان يحدث لي في السابق جرّاء تحويل سوفتوير الجهاز من شركة لأخرى كما ذكرت حضرتك..

بقي لدي التباس بين الكيرنل والسوفتوير حين قلت :

#السوفت وير هو بمثابة الكرنل

حسب معلوماتي المتواضعة الكيرنل هي الفاصل بين الهاردوير HW و SW السوفتوير
أنا استعمل لينُكس وأقوم أحيانا بترقية الكيرنل
فأجد الدريفرات تم تحديثها وبعض المشاكل قد حلت وغيرها ...
هنا التبس علي الأمر
ألا يمكن أن نعتبر sw هو نظام التشغيل لأني عند تحديث الجهاز receiver تتغير القوائم وطريقة التعامل وغيرها ..
لكن السؤال أين هي الكيرنل في حالتنا هذه ؟ أو هي مدمجة مع السوفتوير
وشكرا مرة أخرى
-----------
نعم السوفتوير هو نظام التشغيل بالنسبة للريسفر كما تفضلت لكن استعملت المصطلح الكرنل للتوضيح فقط .
اي السوفتوير هي تحوي الكرنل.
اي ان الكرنل هو جزء من السوفتوير بالنسبة للريسيفر
 

said-abdo

Beginner Developer
rank
إنضم
25 سبتمبر 2015
المشاركات
40
الإعجابات
29
النقاط
18
الإقامة
أ‡أ،أ£أ›أ‘أˆ
بااضافة أستاذي zeraya
غالبا كانت الشركات توفير هذا البوت لودر على شكل برنامج كمبوتر,يقوم باارسال سوفتوير الى جهاز عبر المنفذ (COM)
ولكل جهاز لودر معين +سوفتوير لأن هنا اختلاف في المعمارية.
يقوم هذا لودر بتقسم سوفتوير الى بلوكات وكل بلوك يحتوي على 256 بايت بإضافة الى بايت حساب الحماية.
في المرحلة الثانية يقوم باارسال 2 بايت لفتح اتصال واخباره ماذا يريد,هل سيقوم بارسال سوفتوير كاملا أم ملف قنوات فقط,أم ملف المغاتيح...الخ.
أما في المرحلة الثالثة فيبدء باارسال بلوك وراء بلوك حتى اكمال سوفتوير,وبعد اكمال يمكنك ملاحظت هذه القيمة 808080 على شاشة جهاز استقبال.
أكتفي بهذا لأنه ليس موضوعنا وشكرا لكم جميعا.
 

zeraya

ExpErt DeveloPer
rankrank
إنضم
20 سبتمبر 2016
المشاركات
379
الإعجابات
591
النقاط
103
الإقامة
127.0.0.1
بااضافة أستاذي zeraya
غالبا كانت الشركات توفير هذا البوت لودر على شكل برنامج كمبوتر,يقوم باارسال سوفتوير الى جهاز عبر المنفذ (COM)
ولكل جهاز لودر معين +سوفتوير لأن هنا اختلاف في المعمارية.
يقوم هذا لودر بتقسم سوفتوير الى بلوكات وكل بلوك يحتوي على 256 بايت بإضافة الى بايت حساب الحماية.
في المرحلة الثانية يقوم باارسال 2 بايت لفتح اتصال واخباره ماذا يريد,هل سيقوم بارسال سوفتوير كاملا أم ملف قنوات فقط,أم ملف المغاتيح...الخ.
أما في المرحلة الثالثة فيبدء باارسال بلوك وراء بلوك حتى اكمال سوفتوير,وبعد اكمال يمكنك ملاحظت هذه القيمة 808080 على شاشة جهاز استقبال.
أكتفي بهذا لأنه ليس موضوعنا وشكرا لكم جميعا.
------
شكرا جزيلا على الاضافة الجميلة
 
إنضم
2 نوفمبر 2012
المشاركات
2,609
الإعجابات
1,970
النقاط
113
الإقامة
Online
والله استفدت الكثير من الأخ zeraya والأخ سعيد
بوركت جهودكما , وجعلها الله في ميزان حسناتكما
وأعتذر مرة أخرى بسبب خروجي عن سياق الموضوع
بالتوفيق لكــــم
 

said-abdo

Beginner Developer
rank
إنضم
25 سبتمبر 2015
المشاركات
40
الإعجابات
29
النقاط
18
الإقامة
أ‡أ،أ£أ›أ‘أˆ
لا يأخي لم أقصد بأن لديك,عضويتان,رأيت فقط تشابها في طريقة الشرح والمام بأشياء متقدمة برمجيا.
وهذه عينة من بعض ماكان يكتب .
 

zeraya

ExpErt DeveloPer
rankrank
إنضم
20 سبتمبر 2016
المشاركات
379
الإعجابات
591
النقاط
103
الإقامة
127.0.0.1
لا يأخي لم أقصد بأن لديك,عضويتان,رأيت فقط تشابها في طريقة الشرح والمام بأشياء متقدمة برمجيا.
وهذه عينة من بعض ماكان يكتب .
-----------------
جميل هنا يتحدث على بنية البروسيس هل عندك كتاب على مايتكلم ارجو ان ترفقه لي و شكرا
 
إنضم
25 سبتمبر 2015
المشاركات
40
الإعجابات
29
النقاط
18
الإقامة
أ‡أ،أ£أ›أ‘أˆ
-----------------
جميل هنا يتحدث على بنية البروسيس هل عندك كتاب على مايتكلم ارجو ان ترفقه لي و شكرا
لا ليس كتاب هو فقط الدرس الثالث من دورة (advanced Programming and virus analysis) كان يقوم بها,ولم تكتمل الدورة للأسف.
سوف أرفق الدرس الثالث هنا.
 

الأعضاء النشطين حاليآ الذين يشاهدون هذا الموضوع (1 عضو و 0 ضيف)

خيارات الاستايل

نوع الخط
مودك
اخفاء السايدر بار OFF
توسيط المنتدى OFF
فصل الأقسام OFF
الأقسام الفرعية OFF
عرض المشاركات
حجم الخط
معلومات العضو OFF
إخفاء التوقيع OFF

إرجاع خيارات الإستايل