
Moros هو نظام تشغيل هواية مكتوب في Rust من قبل Vincent Ollivier.
إنه يستهدف أجهزة الكمبيوتر بهندسة X86-64 و BIOS ، لذلك في الغالب من 2005 إلى 2020 ، ولكنها تعمل أيضًا بشكل جيد على معظم المحاكيات (Bochs و QEMU و VirtualBox).
بدأ هذا المشروع من المنشور السابع من الإصدار الثاني من كتابة نظام التشغيل في Rust by Philipp Oppermann وقراءة Osdev Wiki مع العديد من نواة المصادر المفتوحة.
الوثائق متوفرة هنا
ستحتاج إلى git و gcc و make و curl و qemu-img و qemu-system-x86_64 على نظام المضيف.
استنساخ الريبو:
$ git clone https://github.com/vinc/moros
$ cd moros
قم بتثبيت الأدوات المطلوبة باستخدام make setup أو الأوامر التالية:
$ curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain none
$ rustup show
$ cargo install bootimage
قم ببناء الصورة إلى disk.img :
$ make image output=video keyboard=qwerty
قم بتشغيل Moros في Qemu:
$ make qemu output=video nic=rtl8139
قم بالتشغيل أصلاً على جهاز كمبيوتر x86 عن طريق نسخ جهاز تحميل الإقلاع والكيرنيل إلى محرك الأقراص الثابتة أو عصا USB (ولكن لا يوجد حاليًا برنامج تشغيل USB بحيث لن يكون نظام الملفات متاحًا في هذه الحالة):
$ sudo dd if=target/x86_64-moros/release/bootimage-moros.bin of=/dev/sdx
سيفتح Moros وحدة تحكم في وضع Diskless بعد التمهيد إذا لم يتم اكتشاف نظام ملفات. سيقوم الأمر التالي بإعداد نظام الملفات على محرك أقراص ثابت ، مما يتيح لك الخروج من وضع القرص وتسجيل الدخول كمستخدم عادي:
> install
احرص على عدم الكتابة فوق القرص الصلب لنظام التشغيل الخاص بك عند استخدام dd داخل نظام التشغيل الخاص بك ، install أو disk format داخل Moros إذا لم تستخدم محاكيًا.
قم بتشغيل جناح الاختبار في QEMU:
$ make test
يتم إصدار Moros تحت معهد ماساتشوستس للتكنولوجيا.