14

صنع نظام تشغيل بنفسه + لغة برمجة وواجهة

لم أشارك بموضوع منذ وقت طويل، لذلك هذه مشاركة، لموضوع يهمني وإن كنت - بصراحة - لا أفهمه، صناعة أنظمة التشغيل من الصفر، كيف يمكن فعل ذلك من خلال الحاسوب نفسه؟ بمعنى كيف تطور نظاماً لحاسوب لا يحوي نظاماً دون أن تعتمد على حاسوب آخر؟ عموماً، الرابط الذي أود المشاركة به هو هذا:

http://interim.mntmn.com

الحاسوب هو رازبيري باي، لكن النظام مبرمج من الصفر وهو نظام من نوع Language-based system، أي أن لغة البرمجة نفسها هي نظام التشغيل وبالتالي يمكن الوصول لها من أي مكان في الواجهة، وفي الماضي كانت حواسيب مختلفة تفعل ذلك مثل Lisp Machines وكذلك بعض الحواسيب التي تعمل بلغة Smalltalk.

إن كان لديك اهتمام بهذا الموضوع فشاركني بأي مقال أو كتاب أو معلومة.


الحاسوب نفسه يجب ان يحتوى على نظام تشغيل ليعمل, لتستطيع كتابة الاكواد عليه هذا أولا!

أعتقد ان أسهل طريقة هي استخدام محاكى Emulator للراسبيرى بى اى, لا اعرف ان كان احداها متوفرا, لكن راسبيرى جهاز بسيط و ضعيف و بالتالى محاكاته لن تأخد الكثير من موارد الحاسوب.

قرأت في مقالات عديدة عن الموضوع، هناك حواسيب يمكن أن تكتب لها نظام تشغيل من الصفر دون الاستعانة بحاسوب آخر، وتسمى العملية Bootstrapping، وهذا رابط في ويكيبيديا:

أول برنامج يكتب يسمى في الغالب loader ووظيفته تشغيل برامج أخرى، ومن هناك يمكن برمجة محرر نصي ولغة البرمجة، وهكذا يبني المبرمج كل شيء من الصفر، هذا أمر ممكن في حواسيب الماضي، لكن لا أدري بخصوص حواسيب اليوم.

فى الماضى كانوا يكتبون البرنامج على لغة التجميع على ورق, ثم يجمعه (يحوله الى لغة الألة) يدويا و يدخله الى الحاسوب.

حواسيب أبل الأولية برمجها ستيف ووزنياك بهذه الطريقBootstrapping. طبعا مع تعقيد أنظمة التشغيل حاليا, هذا شبه مستحيل.

بعض الحواسيب القديمة توافرت بها برامج صغيرة لادخال التعليمات بلغة الألة.

فى بعض الأحيان كانوا يصنعون برنامج محاكاة خاص لكتابة نظام التشغيل عليه (فعلوا ذلك لبرمجة ويندوز NT).

تحتاج الى Editor به قدرات جيدة, و compiler, و الكثير من المراجع على الانترنت, و الى Emulator او Virtual Machine لتسهيل الtest دون الانتقال الى ماكينة أخرى.