إضافة archives/Linux/project/محاكي (Emulator) للمعالج x86 يعمل بالكامل داخل المتصفح.md
Signed-off-by: Mohamed-Abdelhalim2 <mohamed-abdelhalim2@noreply.app.gitpasha.com>
هذا الالتزام موجود في:
@@ -0,0 +1,153 @@
|
||||
**ملخَّص سريع**
|
||||
الموقع **https://copy.sh/v86/** هو **محاكي (Emulator) للمعالج x86** يعمل بالكامل داخل المتصفح باستخدام JavaScript وWebAssembly. يتيح لك تشغيل أنظمة تشغيل قديمة أو حديثة (Linux، FreeBSD، Windows 95/98/XP، …) مباشرةً دون الحاجة إلى تثبيت أي برنامج على جهازك.
|
||||
|
||||
---
|
||||
|
||||
## 1. ما هو v86؟
|
||||
|
||||
- **v86** هو مشروع مفتوح المصدر (MIT License) يكتب بلغة C ثم يُترجم إلى WebAssembly/JavaScript لتشغيله في المتصفح.
|
||||
- الاسم **v86** يرمز إلى “virtual 86‑bit” (محاكاة 86‑bit) وهو مستوحى من وضعية **Virtual‑8086** في معالجات Intel القديمة.
|
||||
- يُستَخدَم لتقليد عتاد الحاسوب من مستوى الـ BIOS إلى وحدات التخزين، ويُعطيك واجهة رسومية تشبه شاشة الحاسوب التقليدية.
|
||||
|
||||
## 2. كيف يعمل؟
|
||||
|
||||
| مكوّن | دوره |
|
||||
|-------|------|
|
||||
| **JavaScript / WebAssembly** | يُنفّذ محاكاة المعالج (CPU) وتعليمات x86 داخل الـ browser. |
|
||||
| **BIOS (SeaBIOS)** | يوفّر واجهة الـ BIOS التي تُحمَّل أولاً كما في أي جهاز حقيقي. |
|
||||
| **محاكاة الأجهزة** | تشمل بطاقة الفيديو (VGA), وحدة التخزين (IDE/SATA), لوحة المفاتيح، الفأرة، شبكة (virtio‑net) وغيرها. |
|
||||
| **ملف الـ Image** | هو ملف نظام التشغيل (مثلاً `linux.iso` أو `win95.img`) يُحمَّل عبر HTTP ثم يُقَرَأ من داخل المحاكي. |
|
||||
| **Canvas / WebGL** | يُظهر مخرجات الفيديو على عنصر `<canvas>` في صفحة الويب. |
|
||||
|
||||
## 3. ما الذي يمكنك فعله على الموقع؟
|
||||
|
||||
| الفئة | أمثلة عملية |
|
||||
|-------|--------------|
|
||||
| **استكشاف أنظمة تشغيل قديمة** | تشغيل Windows 95/98/XP، MS‑DOS، FreeDOS، أو حتى أنظمة تشغيل عربية قديمة. |
|
||||
| **تجربة توزيعات لينكس خفيفة** | Ubuntu, Debian, Arch, Alpine وغيرها، حتى بدون تثبيت حقيقي. |
|
||||
| **اختبار برمجيات** | تشغيل برامج لا تحتاج إلى موارد عالية، أو تجربة إعدادات kernel. |
|
||||
| **تدريس وتعليم** | شرح بنية الحاسوب، كيف يعمل الـ BIOS، ما هو الـ bootloader، وكيف يتفاعل النظام مع الأجهزة. |
|
||||
| **التحقق من توافقية المتصفح** | إذا كان المتصفح يدعم WebAssembly وWebGL، فستعمل المحاكاة بسلاسة. |
|
||||
|
||||
## 4. أمثلة شائعة على الاستخدام
|
||||
|
||||
1. **تشغيل Linux داخل المتصفح**
|
||||
```html
|
||||
<iframe src="https://copy.sh/v86/?profile=linux" width="800" height="600"></iframe>
|
||||
```
|
||||
سيفتح نافذة تحاكي توزيعة Ubuntu أو Debian مع سطر أوامر.
|
||||
|
||||
2. **تشغيل Windows 95**
|
||||
```html
|
||||
<iframe src="https://copy.sh/v86/?profile=win95" width="800" height="600"></iframe>
|
||||
```
|
||||
|
||||
3. **تشغيل DOS مع برنامج قديم**
|
||||
```html
|
||||
<iframe src="https://copy.sh/v86/?profile=dos" width="800" height="600"></iframe>
|
||||
```
|
||||
|
||||
> **ملاحظة:** معظم الروابط أعلاه هي مجرد أمثلة؛ يمكن تعديل `profile` أو تحميل صور (images) مخصصة من خلال واجهة الموقع.
|
||||
|
||||
## 5. لماذا يُستَخدم؟
|
||||
|
||||
- **لا حاجة لتثبيت برنامج** – كل شيء يجرى داخل المتصفح.
|
||||
- **قابلية النقل** – يمكنك مشاركة رابط مع أي شخص يمتلك متصفحًا حديثًا (Chrome, Firefox, Edge, Safari).
|
||||
- **آمن** – النظام الافتراضي يعمل في sandbox المتصفح، ولا يمكنه الوصول إلى ملفاتك أو نظامك الأساسي إلا إذا سمحت بذلك صراحةً (مثلاً رفع ملف صورة).
|
||||
- **مفتوح المصدر** – يمكنك الاطلاع على الكود، تعديلّه، أو استضافة نسخة خاصة على خادمك.
|
||||
|
||||
## 6. حدود وقيود
|
||||
|
||||
| القيد | السبب |
|
||||
|------|-------|
|
||||
| **أداء محدود** | المحاكاة تُنفَّذ على JavaScript/WebAssembly، لذا لا تصل إلى سرعة المعالج الفعلية. مناسبة للأنظمة الخفيفة أو الاختبار، غير ملائمة للألعاب أو التطبيقات الثقيلة. |
|
||||
| **دعم الأجهزة** | لا يدعم كل الأجهزة الحديثة (GPU 3D، USB 3.0، إلخ). يقتصر على محاكاة VGA, IDE, سمعيات بسيطة، شبكة افتراضية. |
|
||||
| **الذاكرة** | المتصفح يحدد حد الذاكرة (عادةً 1‑2 GB)؛ الأنظمة التي تحتاج أكثر قد تتعطل. |
|
||||
| **التخزين** | يستخدم IndexedDB أو `localStorage` لتخزين ملفات الـ image مؤقتًا؛ إذا أُغلق المتصفح قد تُفقد البيانات غير المحفوظة. |
|
||||
| **التوافق** | يتطلب دعم كامل لـ **WebAssembly**, **WebGL**, و**SharedArrayBuffer**؛ بعض المتصفحات القديمة أو المُقيدة (مثل بعض إصدارات Safari قبل 2022) قد لا تعمل. |
|
||||
|
||||
## 7. كيف يمكنك تجربة الموقع بنفسك؟
|
||||
|
||||
1. **فتح الرابط**
|
||||
افتح المتصفح المفضل (Chrome/Firefox/Edge) وانتقل إلى:
|
||||
`https://copy.sh/v86/`
|
||||
|
||||
2. **اختيار نظام تشغيل**
|
||||
ستظهر لك قائمة “**Profiles**” (ملفات تعريف). اختر ما تفضله (Linux, Windows 95, DOS …).
|
||||
|
||||
3. **انتظار التحميل**
|
||||
تُحمَّل ملفات الـ BIOS والـ image من الخادم؛ قد تستغرق بضع ثوانٍ إلى دقيقة حسب حجم الصورة وسرعة الإنترنت.
|
||||
|
||||
4. **التفاعل**
|
||||
- استخدم لوحة المفاتيح كما تفعل على جهاز حقيقي.
|
||||
- الفأرة تعمل داخل نافذة الـ canvas.
|
||||
- إذا احتجت إلى مشاركة ملفات، استخدم زر “Upload Disk Image” داخل الواجهة لتضيف قرصًا افتراضيًا من جهازك.
|
||||
|
||||
5. **إيقاف تشغيل**
|
||||
أغلق علامة التبويب أو اضغط على “Reset” لإعادة تشغيل الجهاز الافتراضي.
|
||||
|
||||
## 8. كيف يمكنك استضافة نسخة خاصة؟
|
||||
|
||||
إذا أردت تشغيل v86 على خادمك الخاص (مثلاً لتخصيص صورة نظام أو إضافة أدوات خاصة)، يمكنك اتباع الخطوات العامة:
|
||||
|
||||
```bash
|
||||
# 1. استنساخ المستودع
|
||||
git clone https://github.com/copy/v86.git
|
||||
cd v86
|
||||
|
||||
# 2. تثبيت الاعتمادات
|
||||
npm install
|
||||
|
||||
# 3. بناء المشروع
|
||||
npm run build
|
||||
|
||||
# 4. تشغيل خادم HTTP بسيط (مثلاً)
|
||||
npx http-server -p 8080
|
||||
```
|
||||
|
||||
بعد ذلك، يمكنك زيارة `http://localhost:8080/` وستجد الواجهة نفسها. يمكنك تعديل `src/*` لإضافة ملفات BIOS مخصصة، أو تحميل صور أقراص خاصة بك (مثلاً `my-linux.img`).
|
||||
|
||||
## 9. مصادر إضافية
|
||||
|
||||
| المصدر | الوصف |
|
||||
|--------|-------|
|
||||
| **GitHub – copy/v86** | المستودع الرسمي للمشروع (الكود، وثائق البناء، Issues). <br> `https://github.com/copy/v86` |
|
||||
| **وثائق v86** | دليل الاستخدام، خيارات سطر الأوامر، وكيفية إضافة صور أقراص. <br> `https://github.com/copy/v86/wiki` |
|
||||
| **SeaBIOS** | BIOS المفتوح المصدر الذي يستخدمه v86. <br> `https://github.com/coreboot/seabios` |
|
||||
| **مقابلات ومقالات** | مقالات تقنية توضح كيفية تشغيل أنظمة تشغيل كاملة داخل المتصفح. مثال: “Running Linux in the browser with v86”. |
|
||||
|
||||
---
|
||||
|
||||
## خلاصة
|
||||
|
||||
`https://copy.sh/v86/` هو **محاكي x86 يعمل داخل المتصفح** يتيح لك تشغيل أنظمة تشغيل متعددة (Linux, Windows, DOS …) دون الحاجة إلى تثبيت أي برنامج على حاسوبك. هو أداة تعليمية رائعة، مفيدة لتجربة الأنظمة القديمة أو اختبار إعدادات سريعة، لكنه ليس بديلاً عن جهاز حقيقي عندما تحتاج إلى أداء عالي أو دعم أجهزة متقدمة.
|
||||
|
||||
إذا كان هدفك تجربة أنظمة قديمة، تعليم بنية الحاسوب، أو ببساطة الاستمتاع بعبث تقني داخل المتصفح، فهذا الموقع هو المكان المناسب للبدء. Happy hacking! 🚀
|
||||
|
||||
|
||||
---
|
||||
بناءً على النتائج المتوفرة، لا يتوفر 69 موقعاً مختلفاً بذات الوظيفة، ولكن يمكنك الاعتماد على هذه المنصات الرائدة التي تقدم خدمات مشابهة في إنشاء المواقع، استنساخ الواجهات، أو تحويل الأفكار إلى برمجيات:
|
||||
|
||||
لمنشئي المواقع عبر الذكاء الاصطناعي (مثل Deepsite وGenspark):
|
||||
يمكنك تجربة المنصات التي تتيح بناء المواقع عبر الأوامر النصية وتصدير الكود البرمجي مثل Genspark [2]، أو استخدام خدمات متخصصة في استنساخ الواجهات البرمجية وتوليد الكود الكامل مثل Energent.ai [3] وMiniapps [4].
|
||||
|
||||
لتحويل الأفكار إلى تطبيقات وبرمجيات (مثل برنامج.com):
|
||||
توفر منصة "برنامج.com" إمكانية بناء تطبيقات سطح مكتب وإضافات لمتصفح كروم عبر الأوامر العربية [8].
|
||||
|
||||
لتحليل المحتوى وتحويله إلى خرائط ذهنية (مثل Mapify):
|
||||
تعد منصات مثل Mapify [5] وInstantMind [6] الأبرز في تحويل ملفات PDF، فيديوهات يوتيوب، وروابط الويب إلى خرائط ذهنية منظمة.
|
||||
|
||||
للأدوات البرمجية المساعدة (مثل SmartList):
|
||||
تتيح منصة SmartList [7] مجموعة من الأدوات المجانية مثل مختصر الروابط، مدقق الإيميلات، ومولد الميتا تاج التي تخدم أصحاب المواقع.بناءً على النتائج المتوفرة، لا يتوفر 69 موقعاً مختلفاً بذات الوظيفة، ولكن يمكنك الاعتماد على هذه المنصات الرائدة التي تقدم خدمات مشابهة في إنشاء المواقع، استنساخ الواجهات، أو تحويل الأفكار إلى برمجيات:
|
||||
|
||||
لمنشئي المواقع عبر الذكاء الاصطناعي (مثل Deepsite وGenspark):
|
||||
يمكنك تجربة المنصات التي تتيح بناء المواقع عبر الأوامر النصية وتصدير الكود البرمجي مثل Genspark [1]، أو استخدام خدمات متخصصة في استنساخ الواجهات البرمجية وتوليد الكود الكامل مثل Energent.ai [2] وMiniapps [3].
|
||||
|
||||
لتحويل الأفكار إلى تطبيقات وبرمجيات (مثل برنامج.com):
|
||||
توفر منصة "برنامج.com" إمكانية بناء تطبيقات سطح مكتب وإضافات لمتصفح كروم عبر الأوامر العربية [4].
|
||||
|
||||
لتحليل المحتوى وتحويله إلى خرائط ذهنية (مثل Mapify):
|
||||
تعد منصات مثل Mapify [5] وInstantMind [6] الأبرز في تحويل ملفات PDF، فيديوهات يوتيوب، وروابط الويب إلى خرائط ذهنية منظمة.
|
||||
|
||||
للأدوات البرمجية المساعدة (مثل SmartList):
|
||||
تتيح منصة SmartList [7] مجموعة من الأدوات المجانية مثل مختصر الروابط، مدقق الإيميلات، ومولد الميتا تاج التي تخدم أصحاب المواقع.
|
||||
المرجع في مشكلة جديدة
حظر مستخدم