Профиль: Аноним (вход | регистрация) неRU opennet.me  
The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Linux запущен на игровой приставке Atari Jaguar

08.07.2026 13:54 (MSK)

Следом за портированием Linux на Sega MegaDrive реализована возможность запуска ядра Linux с набором утилит Busybox на игровой консоли Atari Jaguar, выпущенной в 1993 году. Приставка комплектовалась CPU Motorola 68000, поставлялась с 2 МБ ОЗУ и в качестве постоянного хранилища могла использовать картриджи, объёмом до 6 МБ. Устройство было оснащено двумя сопроцессорами: Tom (GPU c 32-разрядной архитектурой RISC + 64-разрядный процессор обработки видео + 64-разрядный процессор для выполнения логических операций) и Jerry (DSP с 32-разрядной архитектурой RISC для работы со звуком).

По аналогии с портом для Sega MegaDrive для выполнения ядра Linux на CPU Motorola 68000, не имеющем аппаратного модуля управления памятью (MMU), ядро 7.2.0-rc1 было собрано в применяемом для микроконтроллеров режиме "NOMMU", позволяющем использовать плоскую модель памяти с линейным адресным пространством. Проблема с нехваткой оперативной памяти была решена иначе, через задействование механизма execute-in-place (XIP), позволяющего напрямую выполнять код ядра из ПЗУ без копирования в оперативную память.

ОЗУ на устройстве отражено по адресу 0x000000, а ПЗУ (картридж) - по адресу 0x80000, соответственно компоненты ядра Linux были разделены на две отдельные области памяти: секции .rodata и .text с константами и кодом были размещены на картридже, а секции .data и .bss с изменяемыми данными в оперативной памяти. Так как CPU 68000 ищет таблицу векторов прерываний по адресу 0x0, а ядро фактически размещается на картридже, содержимое которого отражено по адресу 0x80000, дополнительно был применён хак с копированием векторов прерываний в ОЗУ.

Проблема с отсутствием таймера в CPU Motorola 68000 была решена через задействование таймеров, используемых в DSP для синтеза звука. Данные таймеры были применены для генерации прерываний для активации планировщика задач. Для вывода сообщений ядра во время загрузки был написан отдельный драйвер консоли, осуществлявший вывод с симуляцией параллельного порта через выводы TXD и RXD, управляемые через DSP-процессор.

Для сборки компонентов пространства пользователя был задействован инструментарий Buildroot с патчами от проекта LinuxMD. Для экономии памяти при инициализации напрямую вызывалась командная оболочка "/bin/busybox sh", функция malloc в библиотеке uClibc была заменена на упрощённый вариант malloc-simple, не сохраняющий дополнительные метаданные, а вместо полноценного загрузчика, такого как U-Boot, выполнялась прямая передача управления ядру командой "jmp $80000".



  1. Главная ссылка к новости (https://cakehonolulu.github.io...)
  2. OpenNews: Эксперимент с использованием Linux на макетной плате с процессором Motorola 68000
  3. OpenNews: Ubuntu Linux удалось запустить на 8-битном микроконтроллере
  4. OpenNews: Linux запущен на Intel 4004, первом коммерческом микропроцессоре
  5. OpenNews: Доступен hatari 2.0, эмулятор компьютеров Atari
  6. OpenNews: Linux портирован для игровых приставок Sega MegaDrive
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65866-atari
Ключевые слова: atari, linux, port
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (4) RSS
  • 1, Аноним (1), 14:42, 08/07/2026 [ответить]  
  • +1 +/
    uClinux, не полноценный Linux.
     
     
  • 3, Аноним (1), 14:49, 08/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    uClinux это просто опция ядра Linux, дурачок. Mainline.
     

  • 4, Аноним (4), 14:58, 08/07/2026 [ответить]  
  • +1 +/
    Вот это уже интересно, на голом железе, а не в режиме терминала.
     
  • 5, Аноним (5), 15:00, 08/07/2026 [ответить]  
  • +/
    Наконец! Линукс захватывает игровые приставки!
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру