FuzzyOS
1.0.0
32 بت X86 OS متعددة المعالجة قادرة على تشغيل وحدة التحكم أو تطبيقات المستخدم الرسومية.
يرجى العثور على جميع الإصدارات في https://github.com/scopeinfinity/fuzzyos/releases
يمكن العثور على صورة التمهيد تحت Assets للإصدار المقابل.
يمكن أن تكون لقطات الشاشة بمثابة Artifacts تحت التشغيل المكتمل على الإجراءات/CI.
| محمل التمهيد | kernel turnup |
|---|---|
![]() | ![]() |
| قذيفة بسيطة | قطة |
|---|---|
![]() | ![]() |
| شوكة() | لعبة Tictactoe |
|---|---|
![]() | ![]() |
| لعبة Pingpong | برمجة الشعار |
|---|---|
![]() | ![]() |
| سطح المكتب |
|---|
![]() |
make images بعد استنساخ المستودع. FuzzyOS.vdi كتخزين. FuzzyOS.vmdk كتخزين. dd أو scripts/burn.sh لحرق الصورة في القرص (يحتمل أن يكون مدمراً).bash scripts/burn.sh build/FuzzyOS.raw /path/to/devicefile| ميزة | موجود |
|---|---|
| الحذاء: BIOS LEGACY | ✔ |
| التمهيد: UEFI | |
| نمط تقسيم القرص: MBR | ✔ |
| أسلوب تقسيم القرص: GPT | |
| صورة القرص المصدرة: VMDK | ✔ |
| صورة القرص المصدرة: VDI | ✔ |
| تصدير صورة القرص: الخام | ✔ |
| kernel <-> التطبيق والتطبيق <-> عزل التطبيق | ✔ |
| وضع التخلص من الوضع: الوضع الحقيقي (أداة تحميل التشغيل + إعادة التثبيت) | ✔ |
| وضع التليفون: الوضع المحمي (تطبيق kernel + المستخدم) | ✔ |
| السائق: القرص IO | ✔ |
| السائق: الموافقة المسبقة عن علم | ✔ |
| السائق: حفرة | ✔ |
| برنامج التشغيل: لوحة المفاتيح | ✔ |
| نظام الملف: FFS (في المنزل) (القراءة فقط) | ✔ |
| معالج المقاطعة | ✔ |
| Syscall: Text Console IO | ✔ |
| Syscall: الرسومات | ✔ |
| Syscall: لوحة المفاتيح | ✔ |
| Syscall: معالجات الملفات | ✔ |
| جدولة العملية: جولة روبن | ✔ |
| نظام الملف: FFS (مخصص) (قراءة فقط) | ✔ |
| العرض: وضع النص | ✔ |
| العرض: الرسومات-VGA 320x200 256 ألوان | ✔ |
| التزامن: المعالجة المتعددة | ✔ |
| التزامن: Multithreading | |
| التوازي | |
| الأمن في النطاق | |
| الشبكات | |
| بناء التطبيق: دعم ج | ✔ |
| بناء التطبيق: دعم C ++ | ✔ |
| Build App: C/C ++ المكتبات القياسية (حسب الحاجة) | ✔ |
| تطبيق التطبيق: تخصيص ذاكرة الكومة | ✔ |
| التطبيق: الآلة الحاسبة | ✔ |
| التطبيق: القط | ✔ |
| التطبيق: سطح المكتب | ✔ |
| التطبيق: صدى | ✔ |
| التطبيق: forkbomb | ✔ |
| التطبيق: شعار | ✔ |
| التطبيق: LS | ✔ |
| التطبيق: بينغ بونج | ✔ |
| التطبيق: SH (محطة) | ✔ |
| التطبيق: SimpleCpp (مثال) | ✔ |
| التطبيق: المزيد | ✔ |
| التطبيق: المعالجة المتعددة (مثال) | ✔ |
| التطبيق: Tictactoe | ✔ |
التطبيق: Your's? Yes, raise a PR | ✔ |
bash before_install.sh
make clean
make qemu
استخدم Make لإنشاء الثنائيات وملفات الصور.
make
في هذه اللحظة ، تعمل الاختبارات عن طريق حقن ASM المحددة مسبقًا في رمز المصدر الذي يوقف التنفيذ عند نقطة الاهتمام. بعد ذلك ، يمكن أن تستفيد الاختبارات من شاشة QEMU للتحقق من الحالة الحالية مع الحالة المتوقعة.
make test
تنفيذ QEMU في وضع التصحيح وإعداد خادم GDB.
make qemu_debug
ثم الاتصال بخادم GDB.
make qemu_debug_connect
المساهمة