AROS

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
AROS
Kitty - логотип AROS с 2002 года
Arosrus.jpeg
Разработчик

Проект AROS

Семейство ОС

AmigaOS

Последняя версия

Icaros Desktop 2.0 — 31 Октября 2014 г.

Поддерживаемые языки

 (англ.)(рус.) и др.

Поддерживаемые платформы

PowerPC, Motorola 680x0, x86 и ARM

Тип ядра

гибридное

Интерфейс

Zune

Лицензия

AROS Public License

Состояние

актуальное

Веб-сайт

www.aros.sourceforge.net

Commons-logo.svg AROS на Викискладе

AROS (англ. AROS Research Operating System) — проект по созданию независимой, одноимённой, переносимой и свободной (лицензия APL (AROS Public License) аналогична Mozilla Public License) операционной системы (ОС), совместимой на уровне исходного кода c AmigaOS 3.1 на уровне API, при этом превосходя её во многих областях. Исполняемые файлы для одной платформы совместимы для различных версий AROS, для переноса их на другую платформу потребуется перекомпиляция.

Разработчики AROS стремятся к полной межплатформенной совместимости: исходные коды AROS-программ не должны требовать каких-либо изменений при перекомпиляции под другую архитектуру (на сегодняшний день поддерживаются x86, m68k, идёт работа над SPARC, Palm и PowerPC-версиями). AROS может работать как полноценная ОС, загружаясь с собственного диска/раздела (тип (англ. flavor) native), или же поверх Linux/FreeBSD/NetBSD/Solaris как X11-приложение (тип hosted) и поверх Android.

AROS является не клоном AmigaOS, a скорее её последователем, поскольку основной целью является реализация совместимости, а не полное повторение AmigaOS, что было бы противозаконно. Код AROS не содержит частей из AmigaOS.

Существует также эмулятор UAE (Ubiquitous Amiga Emulator), портированный на множество ОС, в том числе на сам AROS. Последнее связано с тем, что UAE в данный момент обладает наилучшей двоичной совместимостью и позволяет запускать оригинальные исполняемые файлы для платформы m68k на других платформах без перекомпиляции исходного кода.

История создания[править | править вики-текст]

В 1993 году Amiga переживала трудные времена. Выпуском компьютеров с популярным названием AMIGA тогда занималась компания Commodore. Она выпустила доступную по цене для среднего пользователя мини-версию компьютера, знаменитую Amiga 600, однако серьезные финансовые неурядицы поставили под сомнение дальнейшее существование популярной марки. Дело также еще осложнялось тем, что операционная часть в виде AmigaOS до возможностей части аппаратной явно не дотягивала. В итоге руководство приняло решение создать отдельную свободную операционную систему, взяв за основу AmigaOS 3.1. Так на свет появилась совершенно новая и независимая система, которую впоследствии назвали AROS. Ее распространение проводилось по принципу, который сейчас, к примеру, используется в Mozilla Public License и аналогичных продуктах. Это было довольно смелой попыткой вдохнуть в семейство Amiga новую жизнь, продолжить ее развитие, с независимыми частями и независимым кодом, под новой маркой и под другим именем, под флагом и символом Open source. Всё это делалось в надежде, что поддержка свободных и независимых разработчиков поможет сэкономить компании дополнительные средства, которые можно будет использовать для развития новой линейки бюджетных компьютеров, что могло бы поправить пошатнувшееся финансовое положение компании. Некоторые из ее представителей всерьёз задумывались над необходимостью обеспечить будущее платформы. Была поставлена цель повысить привлекательность AmigaOS для пользователей и разработчиков. Тогда же было разработано несколько планов по достижению этой цели. Согласно одному из них, AmigaOS должна стать более современной ОС (революция), другой предполагал избавление от накопленных ошибок (эволюция). Так, в ожесточённых спорах, родился проект AROS.

Эволюция AmigaOS 3.1

После продолжительной двухлетней дискуссии, зимой 1995 года Аарон Дигуилла опубликовал RFC (рабочее предложение), содержащее несколько вариантов создания минимального общего базиса, некоей отправной точки, фундамента проекта. В результате почти единогласно было решено написать открытую AmigaOS. Проект переименовали в AROS, работа закипела. Интересно, что позднее часть кода AROS была использована в проприетарных операционных системах MorphOS и AmigaOS 4.0, что доказывает гибкость и универсальность самой системы, не только на уровне API, но прежде всего на уровне кода. Система способна работать на архитектурах m68k и x86, однако разработчики усердно трудятся над созданием кроссплатформенной версии ОС. Отметим, что между всеми версиями AROS присутствует бинарная совместимость. Конечно, пока еще данные продукты, даже при условии их постепенного совершенствования и развития, выглядят весьма старомодно. Однако стоит учесть, что основу для такой продвинутой ОС закладывали еще в восьмидесятых годах прошлого века. Разумеется, угнаться за "окнами" или разработками конкурирующих компаний было не так легко, но нельзя раньше времени списывать со счетов как саму AmigaOS, так и произошедшие от нее продукты, такие, как MorphOS, и в том числе вышеупомянутую AROS.

С течением времени AROS стала принимать современные черты, для нее было создано немало оригинального софта, появился и нынешний логотип. Логотип системы создал американский художник-фуррист Эрик Шварц (Eric W._Schwartz (англ.)русск.).

Будущее операционной системы[править | править вики-текст]

Под AROS был портирован компилятор GCC 3.3.1, существующие библиотеки подстраиваются под стандарт POSIX, закончено портирование стека протоколов TCP/IP, позаимствованного из FreeBSD. Значение стандартизации AROS трудно переоценить, ведь когда этот процесс будет закончен, откроется доступ к огромному количеству уже написанного исходного кода, перенос утилит из *nix-систем упростится, заработает схема «ПО — пользователи — разработчики — ПО». В качестве побочного эффекта станет возможным компилирование исходников AROS с помощью AROS-версии GCC, т.е. ОС станет полностью самоподдерживаемой и самодостаточной. Сравнительно недавно стала возможной и обратная схема разработки — AROS стала работать на классических Amiga (благодаря немецкому проекту «AfA OS» — AROS fur AmigaOS). Таким образом, разработчики приложений для AmigaOS теперь могут компилировать версии и для AROS.

В текущее время в разработке находятся USB-стек и драйвер файловых систем FAT, что позволит использовать множество USB-устройств в AROS, таких как мыши, клавиатуры и USB-диски. Дорабатываются системные библиотеки и решаются вопросы стабильности файловых систем AFFS/SFS. Файловый менеджер Wanderer (AROS) обрастает новыми функциями и постепенно становится похож на свой прототип — Amiga Workbench.

Разработчики системы стараются реализовать ОС со следующими параметрами. :

  1. Совместимость с AmigaOS 3.1 API, за исключением частей, сочтенных не переносимыми или устаревшими, либо не стоящих прилагаемых усилий. Текущее состояние: Большая часть AmigaOS 3.1 API была реализована и даже заменена в некоторых частях. Позволяет запускать старые приложения AmigaOS с помощью эмулятора E-UAE.
  2. Готовый инструментарий разработки GUI. Редактору настроек недостает некоторых функций
  3. Стандартные приложения, сравнимые с аналогами, идущими с AmigaOS 3.1. Большинство из основных приложений разработаны.
  4. Поддержка сети. Сюда относится TCP/IP стек и некоторые основные приложения, вроде клиентов электронной почты и SSH, а также простой веб-браузер. Должен быть по меньшей мере один драйвер сетевой карты (NIC) для каждой обязательной портированной версии. Текущее состояние: есть AROSTCP, ведется работа над реализацией стека AmiTCP. Разработаны некоторые приложения (например, клиенты FTP, telnet и IRC), но они не являются частью самой системы. Другие приложения, включая некоторые возможные реализации браузеров, находятся в разработке.
  5. Собственная среда разработки и SDK для разработчиков. Для AROS есть полный порт gcc, позволяющий компилировать приложения, но все ещё не хватает некоторых инструментов от GNU, вследствие чего на данный момент невозможна самокомпиляция (т.е. сборка новой версии ОС из самой ОС).
  6. Возможность портирования на разные платформы, такие как x86, PowerPC, DEC Alpha, SPARK, HPPA и другие.
  7. Способность самостоятельной работы и загрузки непосредственно с жёсткого диска, а также в режиме эмуляции.
  8. Удобство использования больше, чем у предшественницы AmigaOS.
Рабочий стол AspireOS (дистрибутив AROS) Wanderer

Исходный код доступен по открытой лицензии APL (AROS Public License.), позволяющей любому желающему свободно принять участие в разработке. Ознакомиться с документацией (в том числе на русском языке) можно на сайте проекта AROS..

В текущем релизе AROS Icaros Desktop 2.0. все эти идеи были в полной мере реализованы, Icaros Desktop. позволяет на обычном ПК запустить Amiga-подобное десктоп-окружение, в состав которого включено множество развлекательных приложений и игр. Осуществлена синхронизация с кодом проекта AROS по состоянию на 7 октября 2014 года. Задействовано новое окружение рабочего стола, в основе которого лежит файловый менеджер DirectoryOpus 5 Magellan. Представлена новая функция Wastebasket с реализацией корзины, поддерживающей восстановление удалённых файлов. Добавлен новый конфигуратор Icaros Settings. Улучшена работа окружения для эмуляции платформы Amiga 68k.. Добавлены новые приложения Viewbox, PictureAlbum, subversion, DaySleeper, MUI-AYlet, ArTorr, ZuneView.

План развития[править | править вики-текст]

Для успешного завершения разработки операционной системы AROS должны быть выполнены следующие требования:

Требования[править | править вики-текст]

Совместимость с AmigaOS 3.1 API
Полная совместимость, за исключением сегментов, которые были признаны перенесенными или устаревшими, или не стоящими общих усилий в связи с превышающими выделенный лимит затратами на них. Для того, что отнести какую-либо часть к категории устаревших, даже несмотря на возможность внедрения ее в рамках портирования, необходимы достаточно веские основания. Например, если данная возможность очень редко используется приложениями и ее внедрение требует значительных усилий для разработки.
Частичная совместимость с AmigaOS 3.5 и 3.9 API
Для разработки выбираются исключительно только те сегменты, которые могут максимально полезны и достойны внедрения.
Готовый инструментарий разработки GUI
Полная совместимость Zune с MUI API, и доработанное приложение редактирования настроек.
Стандартные приложения, сопоставимые с аналогами, идущими из AmigaOS 3.1
Это не означает, что в AROS должны быть программы, работающие в точности так же, как и их аналоги в AmigaOS, но доступные пользователю функции должны быть примерно эквивалентны.
Поддержка звука
Совместимость на уровне API и основные приложения. Должно быть не менее одного драйвера для каждой обязательно портированной версии.
Поддержка сети
Сюда относится TCP/IP стек и некоторые основные программы, вроде почтовых клиентов и SSH, а также простой веб-браузер. Должно быть не менее одного драйвера сетевой карты (NIC) для каждой обязательно портированной версии. Для веб-браузера не выдвигаются высокие требования, но обязательно должна быть поддержка YouTube и веб-приложений.
Собственная среда разработки SDK для разработчиков
Конкретно, сюда входит всё программное обеспечение требуемое для сборки AROS, такое как GCC, GNU Binutils, GNU Make и другое. Должна быть возможность компилировать AROS в самой же AROS. Реализация бинарной совместимости (ABI) для поддерживаемых архитектур (в этом случае только для i386) должна быть максимально завершенной.
Полная документация для разработчиков
Сюда относятся полные справочные руководства по всем библиотекам, устройствам, классам и средствам разработки, а также руководства и учебные материалы, знакомящие с подсистемами и дающие общие представления о системе в целом. Также должно быть руководство по миграции и портировании.
Полная документация для пользователей
Сюда относится полная справка по командам, учебные материалы, пособия по установке, настройке и другие руководства.

Реализация[править | править вики-текст]

В настоящее время данные требования к системе AROS и ее дистрибутивам выполнены.

Дистрибутивы AROS[править | править вики-текст]

Дистрибутивы – это преднастроенные и испытанные сборки AROS.. Они содержат ряд полезных приложений, которых нет в обычных сборках и потому представляют максимальный интерес для пользователей. Они могут иметь не самые свежие версии базовых библиотек и ядра, но зато более стабильны и дружелюбны к пользователю, нежели обычные ночные сборки. Собираются они из системных файлов AROS, которые могут быть загружены в разных версиях с сайта проекта. Эти файлы компилируются прямо из исходников SVN в ночное время, и доступны как ночные сборки. Ежедневные ночные сборки также содержат ряд приложений сторонних разработчиков, которые могут быть полезны для выполнения самых разных задач.

Для конечного/среднего пользователя имеются несколько дистрибутивов:

Icaros Desktop[править | править вики-текст]

С апреля 2009 года название дистрибутива VMWAros было изменено на Icaros Desktop., чтобы избежать двусмысленности с любой существующей и защищенной авторским правом виртуальной машиной любого рода. В данном дистрибутиве интегрированы эмуляция платформы Amiga 68k., 3D ускорение для Nvidia, AMD и Intel графических карт и последние версии приложений, которые можно обновлять сразу же после установки. Последняя версия: Icaros Desktop 2.0. (релиз 31 октября 2014). [1]

Broadway[править | править вики-текст]

Broadway. является новым дистрибутивом AROS, реализованный в конце 2009 года и являющийся простой и более удобной реализацией этого программного продукта. Версия 0.05, выпущенная 14 июня 2011 года, была предустановлена по умолчанию в некоторых продуктах компании Ares One Computer., в частности, компьютерах AresOne 2011. и его предшественнике AresOne.. Использование этого дистрибутива продолжается, текущий релиз: AROS Broadway 0.86..

AspireOS[править | править вики-текст]

AspireOS. является является дистрибутивом, созданным в 2011году Никосом Томатсидисом и ориентированным на линейку компьютеров Acer Aspire One (данные компьютеры выпускаются с самым разным программным обеспечением). Последняя версия: 1.98 под кодовым названием Xenon, реализована в июле 2013 года.

AROS Vision[править | править вики-текст]

AROS Vision. является нативным дистрибутивом m68k.

Особенности системы[править | править вики-текст]

Основным инструментом для построения графического интерфейса пользователя для AROS является Zune (замена MUI). В свою очередь графическим интерфейсом системы является Wanderer, имитирующий поведение Workbench из AmigaOS.

АРОС имеет динамично расширяющийся RAM диск, который подгоняет его размер к имеющемуся содержимому. Файлы конфигурации загружаются в ОЗУ диска при загрузке, что значительно ускоряет его работу. Другие файлы могут быть скопированы в RAM диск в качестве стандартного привода. Содержимое RAM диска очищается во время остановки или перезагрузки.

Значки представляющие файлы, папки и диски хранятся в специальных графических файлах с расширением .info, с тем же именем, что и файл, который они представляют. К примеру, редактор файлов представлен иконкой Editor.info.

Файлы .info также указывают на тип файла. Существуют 4 типа:

  • Инструмент – исполняемая программа
  • Проект – это файл данных выполняемой программы. Программа, которая создала файл данных, указана в иконке файла. При нажатии на значок запускает тип проекта, присвоенный программе и загружает файл данных.
  • Каталог
  • Привод – физический или RAM диск

Система АРОС также реализует поддержку REXX, этот скриптовый язык широко используется в AmigaOS.

Структура системных каталогов:

  • C – команды shell
  • Classes – каталог, связанный с логическим устройством LIBS, типы данных и расширения пользовательского интерфейса
  • Devs – управляющие файлы
  • Fonts – шрифты
  • Libs – библиотеки
  • Locale – переводы системы и программ
  • Prefs – программы, которые контролируют параметры системы и среды AROS
  • S – скрипты
  • System – система
  • Tools – простые системные инструменты
  • Utilities – утилиты

AROS является одной из самых простых и гибких операционных систем, вобравшей в себя всё лучшее в идейном смысле не только из AmigaOS, но также из других систем, не имеющих отношение к семейству Amiga. Кроме совместимости с AmigaOS, она имеет программный слой POSIX[2] для обеспечения совместимости с UNIX-подобными операционными системами, при этом являясь сугубо Amiga-подобной. Данное направление усиленно развивается.

См. также[править | править вики-текст]

Скриншоты AROS[править | править вики-текст]

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]