Рекомендация для простого эмулятора x86 и операционной системы

В качестве личного учебного проекта я хочу перенести существующую библиотеку эмуляторов x86 на JavaScript, а затем запустить очень простую операционную систему поверх нее.

Мое единственное требование для библиотеки состоит в том, что она должна быть написана в C\С++, так как я хочу использовать emscripten и asm.js для компиляции исходных файлов на JavaScript. Библиотека должна по крайней мере иметь возможность интерпретировать коды операций x86; специфические детали среды для JavaScript (память, графический интерфейс, прерывания и т.д.). Я могу реализовать себя. У операционной системы нет никаких требований, если она достаточно проста и может работать на эмуляторе.

До сих пор в моих исследованиях Softx86 кажется наиболее жизнеспособным решением, поскольку кажется достаточно простым для порта к JavaScript (это только эмуляция процессора). Простейшая 16-разрядная операционная система реального режима, которую я могу найти, - MikeOS, единственная проблема заключается в том, что для нее требуется процессор 386, который Softx86 не может эмулировать, и я не уверен, полностью ли они совместимы.

Мой вопрос: если кто-то знает альтернативную комбинацию эмулятора-ОС, которая достаточно проста для портирования на JavaScript.

1 ответ

Для тех, кто столкнется с этим потоком в будущем, я решил порт Fake86 к JavaScript и использовать MS-DOS в качестве операционной системы.

Вы можете увидеть живую демонстрациюздесь

Он работает очень медленно, и в настоящее время работает только в Firefox, но он работает тем не менее.

Вы можете увидеть полный исходный код здесь

licensed under cc by-sa 3.0 with attribution.