السلام عليكم جميعاً،
ماهي المتطلبات و الاساسيات والادوات المطلوبه لمن لديه خبره في بعض لغات البرمجة لـ للبداء بنشاء نظام تشغيل operating system ؟
بما ان نظام التشغيل عند انطلاقه يتعامل مباشرة مع الهاردوير يجب اولا ان يحمل نفسه وهو الذي يسمح بعدها للبرامج الاخرى بالتحميل. لهذا اولا يجب كتابة برنامج الـ Boot-loader يكون بلغة الاسمبلي يقوم برفع الملفات واطلاق البرنامج النواة في نظام التشغيل (Kernel).
يمكن بعدها كتابت الكود بلغة الـ C++ لكن لايمكنك استعمال مكتبات الـ C++ بل يجب عليك كتابت كل هذه المكتبات.
بما ان نظامك سوف يتعامل مع الملفات يجب ان تقرر نظام الـ File managment مثلا هل هو FAT36 وعليك ببرمجته (كيف تقرأ, تحفظ, تحدث وتحذف ملف,... الخ) وعليك ايضا ببمرمجة نظام الـ Memory managment ,... الخ من اجزاء نظم الملعومات.
يصلح كمشروع للصيف, قديما برمجت نظام تشغيل في الصيف.
مثلا يمكنك الانطلاق هنا:
لست هنا للرياء, لكنني برمجت نظام تشغيل من الصفر, واعلم خباياه. ام انك تقصد استعمال توزيعة Linux وتحوليها قليلا ثم تسمي نفسك مصمم نظم تشغيل؟
كما انه تخصصت في تصميم الانظمة في دراستي.
لكن المقدمة كانت لتعريفه مايتظره في المجال.
اما بالمشروع الصيفي لا اقصد ان ينجز نظام مشابه لوندوز او لينكس, لكن بامكانه في العطلة الصيفية بانشاء نظام يحتوي على كل اجزاءه كـ Boot-loader, Memory manager, file manger, interuption manager ,
بطبيعة الحال اذا لم يمكن ملما بخوارزميات وآليات عمل هذه الانظمة سوف يلقى بغص الصعوبات.
حتى وان كان هذا المجال ليس للمبتدئين, لكن لماذا احباطه,
هذه الروابط الموجودة في مفضلتي حول برمجة أنظمة التشغيل وهيكلتها:
لا بأس ببعض الطموح ولكن هذه الفكرة لا أجدها مفيدة،
لماذا ما هي الأفكار الجديدة المختلفة لديك عن عمل نظام التشغيل أسطوري؟
الأفضل هو إما أن تبني نظامك على نظام موجود وعريق بدل أن تبدأ من الصفر ك"نظام جنو"
أو تطور من الأنظمة المفتوحة والحرة بدل تشتيت الجهود وتبذير الخبرات، هل تملك النفس العالي للمكوث 30 أو 20 سنة وأنت تبرمج له؟
يونكس بحد ذاته لم ينجزه أفراد، ولا شركات صغيرة، بل صنعته حكومات وشركات عملاقة وبتكاليف خيالية باهضة.
لذلك تستطيع أن تتعرف" كمعرفة " على خطط وطريقة بناء النظان، لكن أكثر من ذلك هو مضيعة للوقت مع احترامي ^_^
التعليقات