Реализована загрузка Linux на ПК Commodore 64 с восьмиразрядным CPU и 64КБ ОЗУ

Продемонстрирована возможность загрузки Linux на персональном компьютере Commodore 64, выпускавшемся в 80-х годах прошлого века. Для организации запуска Linux на устройстве с восьмиразрядным микропроцессором MOS 6502 был задействован semu, минималистичный эмулятор системы с процессором RISC-V (RV32IMA), способной выполнить ядро и компоненты пользовательского окружения Linux. Сборка эмулятора для работы на CPU серии MOS 65xx была произведена при помощи инструментария llvm-mos, основанного на LLVM и позволяющего собирать для устаревших процессоров современные программы, написанные на С/C++.

Так как компьютер оснащён всего 64 КБ ОЗУ в работе был задействован блок расширения памяти (REU, RAM Expansion Unit) и эмуляция виртуальной памяти с MMU. Загрузка ядра Linux при его запуске в эмуляторе RISC-V заняла около недели, а запуск эмулятора и создание скриншота — несколько часов. Применение оптимизаций позволило сократить время загрузки до 39 часов. Предполагается, что включение дополнительных оптимизаций позволит ускорить работу эмулятора примерно в 10 раз. Для того чтобы исключить длительный процесс загрузки также реализована возможность использования слепка уже загруженного состояния эмулируемой системы по аналогии с созданием снапшотов виртуальных машин.

CFD0C5CECEC5D4_1693996434.jpeg



Источник: http://www.opennet.ru/opennews/art.shtml? num=59724

©  OpenNet