72 Кб ОЗУ против современной ОС. Linux запустили на Sega MegaDrive 1988 года

leer en español

7323
72 Кб ОЗУ против современной ОС. Linux запустили на Sega MegaDrive 1988 года

Старому железу помог необычный трюк с игровым картриджем.

image

Даже техника конца 1980-х получила шанс запустить современную операционную систему: разработчики представили первый выпуск проекта LinuxMD, который переносит Linux на игровую приставку Sega MegaDrive 1988 года. Ядро выполняется на основном процессоре Motorola 68000 с частотой 7,6 МГц, хотя сама консоль располагает лишь 72 КБ оперативной памяти.

Главное ограничение удалось обойти с помощью картриджа Mega EverDrive Core, а совместимость с версией Pro разработчик пока не проверял. Внутри такого устройства находится отдельная система на базе FPGA со своей памятью, поэтому Linux использует 4 МБ ОЗУ картриджа, но продолжает работать на процессоре приставки. Доступ к памяти организовали через переключение её банков, похожее на механизм, который ранее применяли в Super Street Fighter II.

Картридж также связал приставку с SD-картой и предоставил ядру таймер высокого разрешения. Благодаря протоколу обмена Mega EverDrive Linux может читать файлы с накопителя, вставленного в картридж. Поскольку Motorola 68000 не поддерживает аппаратное управление виртуальной памятью, ядро собрали в режиме NOMMU, рассчитанном на системы без такого блока.

В состав порта вошли ядро Linux 7.2-rc1, загрузчик U-Boot 2026.01 и минимальная корневая файловая система с базовыми утилитами. Для проверки без реальной приставки разработчикам пришлось создать собственную версию QEMU: обычные эмуляторы воспроизводят Sega MegaDrive, но не поддерживают особенности картриджей EverDrive.

Эмулятор пока не ограничивает скорость процессора, поэтому Linux в нём работает заметно быстрее, чем на оригинальном Motorola 68000. Первая версия проекта уже доступна на GitHub. LinuxMD наглядно показал, насколько далеко можно раздвинуть возможности старого оборудования при грамотной работе с его ограничениями.