stringtranslate.com

АмигаОС

AmigaOS — это семейство собственных операционных систем для персональных компьютеров Amiga и AmigaOne . Сначала она была разработана Commodore International и представлена ​​с выпуском первой Amiga, Amiga 1000 , в 1985 году. Ранние версии AmigaOS требовали 16-битных и 32-битных микропроцессоров Motorola 68000 серии . Более поздние версии были разработаны Haage & Partner (AmigaOS 3.5 и 3.9), а затем Hyperion Entertainment (AmigaOS 4.0–4.1). Для самой последней версии AmigaOS 4 требуется микропроцессор PowerPC .

AmigaOS — однопользовательская операционная система, основанная на ядре вытесняющей многозадачности , называемом Exec . [1]

Он включает в себя абстракцию аппаратного обеспечения Amiga, дисковую операционную систему под названием AmigaDOS , API оконной системы под названием Intuition , а также среду рабочего стола [2] и файловый менеджер под названием Workbench .

Интеллектуальная собственность Amiga разделена между Amiga Inc. , Cloanto и Hyperion Entertainment . Авторские права на произведения, созданные до 1993 года, принадлежат Cloanto. [3] [4] В 2001 году Amiga Inc. заключила контракт на разработку AmigaOS 4 с Hyperion Entertainment, а в 2009 году они предоставили Hyperion эксклюзивную, бессрочную, всемирную лицензию на AmigaOS 3.1 для разработки и продажи AmigaOS 4 и последующих версий. [5]

29 декабря 2015 г. исходный код AmigaOS 3.1 попал в сеть; это подтвердил лицензиат Hyperion Entertainment . [6] [7]

Компоненты

AmigaOS — однопользовательская операционная система, основанная на ядре вытесняющей многозадачности , называемом Exec . AmigaOS предоставляет абстракцию аппаратного обеспечения Amiga, дисковую операционную систему под названием AmigaDOS, API оконной системы под названием Intuition и файловый менеджер рабочего стола под названием Workbench .

Интерфейс командной строки (CLI), называемый AmigaShell, также интегрирован в систему, хотя он также полностью основан на окнах. Компоненты CLI и Workbench имеют одинаковые привилегии. Примечательно, что в AmigaOS отсутствует встроенная защита памяти .

AmigaOS состоит из двух частей: компонента прошивки, называемого Kickstart , и программной части, обычно называемой Workbench . Вплоть до AmigaOS 3.1 соответствующие версии Kickstart и Workbench обычно выпускались вместе. Однако начиная с AmigaOS 3.5, первого выпуска после распада Commodore, был обновлен только программный компонент, а роль Kickstart несколько уменьшилась. Обновления встроенного ПО по-прежнему можно применять путем установки исправлений при загрузке системы. Так было до 2018 года, когда Hyperion Entertainment (владелец лицензии на AmigaOS 3.1) выпустила AmigaOS 3.1.4 с обновленным ПЗУ Kickstart.

Прошивка и загрузчик

Kickstart — это загрузочная прошивка, обычно хранящаяся в ПЗУ . Kickstart содержит код, необходимый для загрузки стандартного оборудования Amiga и многих основных компонентов AmigaOS. Функцию Kickstart можно сравнить с BIOS и ядром основной операционной системы на компьютерах, совместимых с IBM PC . Однако Kickstart предоставляет больше функций, доступных во время загрузки, чем обычно можно ожидать на ПК, например, полнооконную среду.

Kickstart содержит множество основных частей операционной системы Amiga, таких как Exec , Intuition , ядро ​​AmigaDOS и функции для инициализации оборудования расширения, совместимого с Autoconfig . Более поздние версии Kickstart содержали драйверы для контроллеров IDE и SCSI , портов ПК-карт и другого встроенного оборудования.

При запуске или перезагрузке Kickstart выполняет ряд диагностических и системных проверок, а затем инициализирует набор микросхем Amiga и некоторые основные компоненты ОС. Затем он проверит подключенные загрузочные устройства и попытается загрузиться с устройства с наивысшим приоритетом загрузки. Если загрузочного устройства нет, отобразится экран с просьбой вставить загрузочный диск, обычно дискету.

При запуске Kickstart пытается загрузиться с загрузочного устройства (обычно с дискеты или жесткого диска). В случае с дискетой система считывает первые два сектора диска ( загрузочный блок ) и выполняет все инструкции по загрузке, хранящиеся там. Обычно этот код передает управление обратно ОС (вызывая AmigaDOS и графический интерфейс) и используя диск в качестве загрузочного тома системы. Любой такой диск, независимо от другого содержимого диска, назывался «загрузочным диском» или «загрузочным диском». Загрузочный блок можно добавить на чистый диск с помощью этой installкоманды. В некоторых играх и демоверсиях на дискетах использовались специальные загрузочные блоки, которые позволяли им брать на себя последовательность загрузки и управлять оборудованием Amiga без AmigaOS.

Загрузочный блок стал очевидной мишенью для вирусописателей . Некоторые игры или демо-версии, в которых использовался собственный загрузочный блок, не работали при заражении вирусом загрузочного блока, поскольку код вируса заменял исходный. Первым таким вирусом был вирус SCA . Попытки антивирусной защиты включали пользовательские загрузочные блоки. Эти измененные загрузочные блоки объявляли о наличии средства проверки на вирусы при проверке системы на наличие явных признаков резидентных вирусов, а затем передавали управление обратно системе. К сожалению, их нельзя было использовать на дисках, которые уже использовали собственный загрузочный блок, но предупреждали пользователей о потенциальных проблемах. Некоторые из них также реплицировались на другие диски, становясь сами по себе не более чем вирусами. [ нужна цитата ]

Ядро

У Macintosh должна была быть многозадачность. Я не могу не подчеркнуть, какой большой вклад это вносит в элегантный дизайн системного программного обеспечения. У Amiga отличная многозадачная система, и я думаю, что благодаря ей срок службы ее продукта будет вдвое больше, чем у Macintosh.

—  Адам Брукс Уэббер, программист, ответственный за портирование TrueBASIC на Amiga и Macintosh, Byte , сентябрь 1986 г. [8]

Exec — это многозадачное ядро ​​AmigaOS. Exec предоставляет функциональные возможности для многозадачности, распределения памяти, обработки прерываний и обработки динамических общих библиотек . Он действует как планировщик задач, выполняемых в системе, обеспечивая упреждающую многозадачность с приоритетным циклическим планированием . Exec также обеспечивает доступ к другим библиотекам и высокоуровневое межпроцессное взаимодействие посредством передачи сообщений . Другие сопоставимые микроядра имели проблемы с производительностью из-за необходимости копировать сообщения между адресными пространствами. Поскольку у Amiga только одно адресное пространство, передача сообщений Exec весьма эффективна. [9] [10]

АмигаДОС

AmigaDOS предоставляет часть AmigaOS дисковой операционной системы . Сюда входят файловые системы , манипуляции с файлами и каталогами, интерфейс командной строки , перенаправление файлов, окна консоли и так далее. Его интерфейсы предлагают такие возможности, как перенаправление команд , конвейерная обработка , создание сценариев с примитивами структурированного программирования , а также систему глобальных и локальных переменных .

В AmigaOS 1.x часть AmigaDOS была основана на TRIPOS , написанном на BCPL . Взаимодействие с ним с других языков оказалось сложной и подверженной ошибкам задачей, а порт TRIPOS оказался не очень эффективным.

Начиная с AmigaOS 2.x, AmigaDOS была переписана на C и ассемблере , сохраняя совместимость программ 1.x BCPL, и включала части стороннего проекта AmigaDOS Resource Project , [11] который уже написал замены для многих утилит BCPL. и интерфейсы.

ARP также предоставил один из первых стандартизированных средств запроса файлов для Amiga и представил использование более дружественных подстановочных знаков в стиле UNIX ( подстановки ) в параметрах командной строки. Другими нововведениями были улучшение диапазона форматов дат, принимаемых командами, и возможность сделать команду резидентной, так что ее нужно загрузить в память только один раз, и она остается в памяти, чтобы снизить стоимость загрузки при последующих использованиях.

В AmigaOS 4.0 DOS полностью отказалась от наследия BCPL и, начиная с AmigaOS 4.1 , была переписана с полной 64-битной поддержкой.

Расширения файлов часто используются в AmigaOS, но они не являются обязательными и не обрабатываются DOS специально, а представляют собой просто условную часть имен файлов. Исполняемые программы распознаются по магическому числу .

Графический интерфейс пользователя

Родная оконная система Amiga называется Intuition , которая обрабатывает ввод с клавиатуры и мыши, а также рендеринг экранов, окон и виджетов .

До AmigaOS 2.0 не было стандартизированного внешнего вида , разработчикам приложений приходилось писать свои собственные нестандартные виджеты. Commodore добавила библиотеку GadTools и BOOPSI в AmigaOS 2.0, обе из которых предоставляли стандартизированные виджеты. Commodore также опубликовала «Руководство по стилю пользовательского интерфейса Amiga» , в котором объяснялось, как следует размещать приложения для обеспечения единообразия. Стефан Штунц создал популярную стороннюю библиотеку виджетов на основе BOOPSI под названием Magic User Interface или MUI. MorphOS использует MUI в качестве официального инструментария, а AROS использует клон MUI под названием Zune . В AmigaOS 3.5 добавлен еще один набор виджетов, ReAction , также основанный на BOOPSI.

Необычной особенностью AmigaOS является использование нескольких экранов, отображаемых на одном дисплее. Каждый экран может иметь разное разрешение видео или глубину цвета. В AmigaOS 2.0 добавлена ​​поддержка общедоступных экранов , что позволяет приложениям открывать окна на экранах других приложений. До AmigaOS 2.0 общим был только экран Workbench. [12] Виджет в правом верхнем углу каждого экрана позволяет переключаться между экранами. Экраны можно накладывать друг на друга, перетаскивая каждый из них вверх или вниз за строку заголовка. В AmigaOS 4 появились экраны, которые можно перетаскивать в любом направлении.

Файловый менеджер

Workbench — это встроенный графический файловый менеджер и среда рабочего стола AmigaOS. Хотя термин Workbench изначально использовался для обозначения всей операционной системы, с выпуском AmigaOS 3.1 операционная система была переименована в AmigaOS, и впоследствии Workbench относится только к диспетчеру рабочего стола. Как следует из названия, используется метафора рабочего места , а не рабочего стола; каталоги изображаются в виде ящиков , исполняемые файлы — в виде инструментов , файлы данных — в виде проектов , а виджеты графического интерфейса — в виде гаджетов . Во многих других аспектах интерфейс напоминает Mac OS : на главном рабочем столе отображаются значки вставленных дисков и разделов жесткого диска, а в верхней части каждого экрана имеется единственная строка меню. В отличие от мыши Macintosh, доступной в то время, стандартная мышь Amiga имеет две кнопки: правая кнопка мыши управляет раскрывающимися меню с механизмом «отпустить для выбора».

Функции

Графика

До выпуска версии 3 AmigaOS изначально поддерживала только собственный графический набор микросхем Amiga через Graphics.library , который предоставляет API для геометрических примитивов , операций с растровой графикой и обработки спрайтов. Поскольку этот API можно было обойти, некоторые разработчики предпочли избегать функций ОС для рендеринга и напрямую программировать базовое оборудование для повышения эффективности.

Сторонние видеокарты изначально поддерживались через фирменные неофициальные решения. Более позднее решение, в котором AmigaOS могла напрямую поддерживать любую графическую систему, было названо переназначаемой графикой (RTG). [13] В AmigaOS 3.5 некоторые системы RTG были включены в состав ОС, что позволяло использовать обычные аппаратные карты, отличные от родных наборов микросхем Amiga. Основными системами RTG являются CyberGraphX , Picasso 96 и EGS . Также доступны некоторые библиотеки векторной графики, такие как Cairo и Anti-Grain Geometry . Современные системы могут использовать кроссплатформенный механизм SDL (простой DirectMedia Layer) для игр и других мультимедийных программ.

Amiga не имела встроенных возможностей 3D-графики и поэтому не имела стандартного API 3D-графики . Позже производители видеокарт и сторонние разработчики предоставили свои собственные стандарты, в число которых вошли MiniGL , Warp3D , Storm Mesa ( agl.library ) и CyberGL.

Amiga была выпущена в то время, когда было мало поддержки библиотек 3D-графики для улучшения графических интерфейсов настольных компьютеров и возможностей компьютерного рендеринга. Однако Amiga стала одной из первых широко распространенных платформ для разработки 3D. VideoScape 3D была одной из первых систем 3D-рендеринга и анимации, а Silver/ TurboSilver — одной из первых 3D-программ трассировки лучей. Тогда Amiga могла похвастаться множеством влиятельных приложений в области 3D-программ, таких как Imagine , Maxon Cinema 4D , Realsoft 3D , VistaPro , Aladdin 4D и NewTek Lightwave (используемая для рендеринга фильмов и телешоу, таких как Вавилон 5 ).

Аналогичным образом, хотя Amiga хорошо известна своей способностью легко выполнять синхронизацию видео, у нее нет встроенного интерфейса захвата видео . Amiga поддерживала огромное количество сторонних интерфейсов для захвата видео от американских и европейских производителей. Существовали внутренние и внешние аппаратные решения, называемые захватчиками кадров, для захвата отдельных кадров или последовательностей видеокадров, в том числе: Newtronic Videon, Newtek DigiView, [14] внешний 24-битный кадровый буфер Graffiti , Digilab, Videocruncher, Firecracker 24, Vidi. Amiga 12, Vidi Amiga 24-бит и 24RT (в реальном времени), Newtek Video Toaster , GVP Impact Vision IV24, MacroSystem VLab Motion и VLab PAR, DPS PAR (персональный анимационный рекордер), VHI (аппаратный интерфейс видео) от IOSPIRIT GmbH, DVE -10 и т. д. Некоторые решения представляли собой аппаратные плагины для видеокарт Amiga, такие как модуль Merlin XCalibur или модуль DV, созданный для клона Amiga Draco от немецкой фирмы Macrosystem. Современные карты расширения ТВ с шиной PCI и их интерфейсы захвата поддерживаются через tv.library от Elbox Computer и tvcard.library от Гвидо Мерсмана.

Следуя современным тенденциям развития графических интерфейсов, AmigaOS 4.1 использует механизм композиции изображений Porter-Duff с аппаратным ускорением 3D .

Аудио

До версии 3.5 AmigaOS официально поддерживала только собственный звуковой чип Amiga через audio.device . Это облегчает воспроизведение звуковых сэмплов по четырем 8-битным звуковым каналам PCM , управляемым DMA . Единственный поддерживаемый аппаратный формат выборки — линейное 8-битное дополнение до двух со знаком .

Поддержка звуковых карт сторонних производителей зависела от производителя до создания и принятия AHI [15] в качестве фактического стандарта. AHI предлагает улучшенные функциональные возможности, такие как плавное воспроизведение звука с выбранного пользователем аудиоустройства, стандартизированные функции записи звука и эффективные процедуры программного микширования для объединения нескольких звуковых каналов, тем самым преодолевая четырехканальный аппаратный предел исходного набора микросхем Amiga. AHI можно установить отдельно на AmigaOS v2.0 и более поздних версиях. [16]

Сама AmigaOS не поддерживала MIDI до версии 3.1, когда библиотека camd.library Роджера Данненберга была адаптирована в качестве стандартного MIDI API. Версия camd.library от Commodore также включала встроенный драйвер для последовательного порта. Более поздняя версия camd.library с открытым исходным кодом, созданная Кьетилом Матеуссеном, не содержала встроенного драйвера для последовательного порта, а вместо этого предоставляла внешний драйвер.

Пример синтеза речи с включенной утилитой Say в Workbench 1.3

AmigaOS была одной из первых операционных систем, в которой реализован синтез речи с помощью программного обеспечения, разработанного SoftVoice, Inc., которое позволяло преобразовывать текст в речь американского английского языка . [17] Он имел три основных компонента: narrator.device , который модулирует фонемы , используемые в американском английском , переводчик.library , который переводит английский текст в фонемы американского английского с использованием набора правил, и высокоуровневый обработчик SPEAK:, который позволяет пользователям командной строки перенаправлять текстовый вывод в речь. В состав ОС была включена утилита Say , которая позволяла синтезировать речь с некоторым контролем параметров голоса и речи. Демо-версия также была включена в примеры программирования на AmigaBASIC . Синтез речи иногда использовался в сторонних программах, особенно в образовательных программах. Например, текстовые процессоры Prowrite и Excellence! мог читать документы с помощью синтезатора. Эти компоненты синтеза речи остались практически неизменными в более поздних выпусках ОС, и Commodore в конечном итоге удалил поддержку синтеза речи начиная с AmigaOS 2.1 из-за лицензионных ограничений. [18]

Несмотря на ограничение фонем Narrator.device в американском английском , Франческо Девитт разработал неофициальную версию с многоязычным синтезатором речи. При этом использовалась расширенная версия переводчика.библиотека , которая могла переводить несколько языков в фонемы, учитывая набор правил для каждого языка. [19]

Хранилище

AmigaOS имеет RAM-диск динамического размера , размер которого автоматически изменяется в соответствии с его содержимым. Начиная с AmigaOS 2.x, файлы конфигурации операционной системы загружались на RAM-диск при загрузке, что значительно ускоряло использование операционной системы. Другие файлы можно было скопировать на RAM-диск, как и на любое стандартное устройство, для быстрого изменения и поиска. Также, начиная с AmigaOS 2.x, RAM-диск поддерживал уведомление об изменении файлов, которое в основном использовалось для отслеживания изменений в файлах конфигурации.

Начиная с AmigaOS 1.3, [20] также существует восстанавливаемый RAM-диск фиксированной емкости, который функционирует как стандартный RAM-диск, но может сохранять свое содержимое при мягком перезапуске. Его обычно называют диском RAD по имени устройства по умолчанию, и его можно использовать в качестве загрузочного диска (с загрузочным сектором). Ранее в 1987 году был представлен восстанавливаемый RAM-диск, обычно называемый ASDG RRD или VD0 ; [21] сначала он был привязан к продуктам расширения памяти ASDG. Позже ASDG RRD был добавлен к серии бесплатного, условно-бесплатного и общедоступного программного обеспечения Фреда Фиша (диски 58 [22] и 241 [23] ).

Сценарии

AmigaOS поддерживает язык Rexx , называемый ARexx (сокращение от «Amiga Rexx»), и представляет собой язык сценариев, который позволяет выполнять полноценные сценарии ОС, аналогично AppleScript ; внутриприкладные сценарии, аналогичные VBA в Microsoft Office ; а также межпрограммное общение. Наличие единого языка сценариев для любого приложения в операционной системе выгодно для пользователей, вместо того, чтобы изучать новый язык для каждого приложения.

Программы могут прослушивать «порт ARexx» на предмет строковых сообщений. Эти сообщения затем могут быть интерпретированы программой аналогично нажатию кнопок пользователем. Например, сценарий ARexx, запущенный в программе электронной почты, может сохранить отображаемое в данный момент электронное письмо, вызвать внешнюю программу, которая может извлечь и обработать информацию, а затем вызвать программу просмотра. Это позволяет приложениям управлять другими приложениями, отправляя данные туда и обратно напрямую с помощью дескрипторов памяти, вместо того, чтобы сохранять файлы на диск и затем перезагружать их.

Начиная с AmigaOS 4, язык Python включен в операционную систему.

Технический обзор

Джон К. Дворжак заявил в 1996 году:

AmigaOS «остается одной из величайших операционных систем последних 20 лет, включающей небольшое ядро ​​и огромные возможности многозадачности , подобные которым лишь недавно были разработаны в OS/2 и Windows NT . Самое большое отличие состоит в том, что AmigaOS могла работать полностью и многозадачно, занимая всего 250 КБ адресного пространства. Даже сегодня размер ОС составляет всего около 1 МБ. И по сей день ОС, перегружающая память и загружающая CD-ROM, мало что может сделать, Amiga может 'т. Строгий код - нет ничего подобного.
У меня Amiga уже около десяти лет. Это самое надежное оборудование, которое у меня когда-либо было. Это потрясающе! Вы можете легко понять, почему там так много фанатиков интересно, почему они одиноки в своей любви к этой штуке. Amiga продолжает вдохновлять активное, хотя и культовое, сообщество, мало чем отличающееся от того, которое вы имеете с Linux, клоном Unix». [24]

Библиотеки и устройства

AmigaOS предоставляет модульный набор системных функций посредством динамически загружаемых общих библиотек , которые либо хранятся в виде файла на диске с .libraryрасширением имени файла, либо хранятся в прошивке Kickstart. Доступ ко всем функциям библиотеки осуществляется через таблицу косвенных переходов , которая представляет собой отрицательное смещение базового указателя библиотеки. Таким образом, каждую библиотечную функцию можно исправить или подключить во время выполнения, даже если библиотека хранится в ПЗУ. Базовой библиотекой AmigaOS является exec.library ( Exec ), которая обеспечивает интерфейс для функций микроядра Amiga .

Драйверы устройств также являются библиотеками, но они реализуют стандартизированный интерфейс. Приложения обычно не вызывают устройства напрямую как библиотеки, а используют функции ввода-вывода exec.library для косвенного доступа к ним. Как и библиотеки, устройства представляют собой либо файлы на диске (с .deviceрасширением «»), либо хранятся в ПЗУ Kickstart.

Обработчики, AmigaDOS и файловые системы

Высокоуровневая часть управления устройствами и ресурсами контролируется обработчиками , которые являются не библиотеками, а задачами и взаимодействуют посредством передачи сообщений. Одним из типов обработчиков является обработчик файловой системы . AmigaOS может использовать любую файловую систему, для которой написан обработчик, и эта возможность использовалась такими программами, как CrossDOS , а также несколькими «альтернативными» файловыми системами стандартным OFS и FFS . Эти файловые системы позволяют добавлять новые функции, такие как ведение журнала или файловые привилегии , которых нет в стандартной операционной системе. Обработчики обычно предоставляют DOS имя устройства , которое можно использовать для доступа к периферийному устройству (если таковое имеется) , связанному с обработчиком. Примером этих концепций является обработчик SPEAK:, который может перенаправлять текст в устную речь через систему синтеза речи.

Имена устройств представляют собой строки, нечувствительные к регистру (по соглашению заглавные буквы), за которыми следует двоеточие . После двоеточия можно добавить спецификатор , который дает обработчику дополнительную информацию о том, к чему осуществляется доступ и как . В случае файловой системы спецификатор обычно состоит из пути к файлу в файловой системе; для других обработчиков спецификаторы обычно задают характеристики желаемого канала ввода/вывода (для драйвера последовательного порта SER:, например, спецификатор будет содержать битрейт , стартовый и стоповый биты и т. д.). Файловые системы предоставляют имена дисков как имена своих устройств. Например, DF0: по умолчанию относится к первому дисководу в системе. Во многих системах DH0: используется для обозначения первого жесткого диска. Файловые системы также предоставляют имена томов , соответствующие тому же синтаксису, что и имена устройств: они идентифицируют конкретный носитель на диске, управляемом файловой системой. Если DF0: содержит диск с именем «Workbench», то Workbench: будет именем тома, которое можно использовать для доступа к файлам в DF0: . Если кто-то хотел получить доступ к файлу с именем "Bar", расположенному в каталоге "Foo" диска с именем "Work" на диске DF0:, можно было написать " DF0:Foo/Bar" или " Work:Foo/Bar". Однако они не полностью эквивалентны, поскольку при использовании последней формы система знает, что требуемым томом является «Работа», а не просто любой том в DF0: . Таким образом, всякий раз, когда к запрошенному файлу на «Работе» осуществляется доступ без присутствия тома «Работа» на каком-либо диске, он сообщает что-то вроде: Please insert volume Work in any drive.

Программам часто требуется доступ к файлам, не зная их физического местоположения (на диске или томе): им известен только «логический путь» файла, т.е. является ли файл библиотекой, файлом документации, переводом сообщений программы. , и так далее. В AmigaOS эта проблема решена с помощью Assigns . Назначение опять же имеет тот же синтаксис, что и имя устройства; однако он уже указывает на каталог внутри файловой системы. Место, на которое указывает назначение, может быть изменено пользователем в любое время (это поведение похоже, но, тем не менее, отличается от команды substв MS-DOS , например). Назначения были также удобны, поскольку одно логическое назначение могло одновременно указывать на более чем одно физическое местоположение, тем самым позволяя логически расширять содержимое назначения, сохраняя при этом отдельную физическую организацию . Стандартные функции, которые обычно присутствуют в системе AmigaOS, включают:

Подкачка памяти и раздел подкачки в более поздних версиях

В AmigaOS 4 представлена ​​новая система распределения оперативной памяти и ее дефрагментации «на лету» во время бездействия системы. Он основан на методе поблочного распределения , а также содержит пейджер памяти, который управляет подкачиваемой памятью и позволяет заменять большие части физической оперативной памяти на устройствах хранения данных как своего рода виртуальную память . [25] [26] Кооперативный пейджинг был наконец реализован в AmigaOS 4.1 .

Версии

С момента появления AmigaOS в 1985 году было выпущено четыре основных версии и несколько второстепенных изменений. Вплоть до версии 3.1 операционной системы Amiga Commodore использовала Workbench для обозначения всей операционной системы Amiga. Как следствие, Workbench обычно использовался для обозначения как операционной системы, так и компонента файлового менеджера. Для конечных пользователей Workbench часто был синонимом AmigaOS. Начиная с версии 3.5, ОС была переименована в «AmigaOS», а версии до 3.5 задним числом также назывались «AmigaOS» (а не Workbench). Впоследствии «Workbench» относится только к собственному графическому файловому менеджеру.

С самого начала Workbench предлагал легко настраиваемый интерфейс. Пользователь мог изменить внешний вид значков программ, заменив их более новыми с другими цветовыми сочетаниями. Пользователи также могут сделать «снимок» значков и окон, чтобы значки оставались на рабочем столе в координатах, выбранных пользователем, а окна открывались в желаемом размере.

АмигаОС 1.0 – 1.4

АмигаОС 1.3 (1988 г.)

AmigaOS 1.0 была выпущена вместе с первой Amiga, Amiga 1000 , в 1985 году. Версии AmigaOS 1.x по умолчанию использовали сине-оранжевую цветовую схему, предназначенную для обеспечения высокой контрастности даже на самых худших телевизионных экранах (цвета могут быть изменено пользователем). Версия 1.1 состоит в основном из исправлений ошибок и, как и версия 1.0, распространялась только для Amiga 1000.

Дисплей был легко настраиваемым для той эпохи. Пользователь мог свободно создавать и изменять системные и пользовательские значки, которые могли иметь произвольный размер и дизайн и иметь два состояния изображения для создания псевдоанимационного эффекта при выборе. Пользователи могли настроить четыре цвета дисплея и выбрать одно из двух разрешений: 640×200 или 640×400 (с чересстрочной разверткой) в NTSC или 640×256 или 640×512 в системах PAL . В более поздних версиях можно было регулировать развертку телевизора или монитора.

Некоторые функции устарели в более поздних версиях. Например, индикатор, показывающий свободное место в файловой системе, был заменен процентом в AmigaOS 2.0, а затем восстановлен в версии 3.5. Указатель «занято» по умолчанию (комический воздушный шар с надписью «Zzz...») в более поздних версиях был заменен секундомером.

АмигаОС 2.0, 2.1

AmigaOS 2.0 была выпущена вместе с запуском Amiga 3000 в 1990 году. До AmigaOS 2.0 не существовало единого стандарта дизайна внешнего вида , и разработчикам приложений приходилось писать свои собственные виджеты (как кнопки, так и меню), если они хотели улучшить и без того скудные выбор стандартных базовых виджетов, предоставляемых Intuition. В AmigaOS 2.0 была создана библиотека gadtools.library , которая предоставляла стандартные наборы виджетов. Было опубликовано Руководство по стилю пользовательского интерфейса Amiga , в котором объяснялось, как следует размещать приложения для обеспечения единообразия. Интуиция была улучшена с помощью BOOPSI (базовая система объектно-ориентированного программирования для интуиции), которая дополнила систему объектно -ориентированным интерфейсом для определения системы классов, в которой каждый класс индивидуализирует отдельный виджет или описывает событие интерфейса. Его можно использовать для программирования объектно-ориентированных интерфейсов в Amiga на любом уровне.

В AmigaOS 2.0 также добавлена ​​поддержка публичных экранов . Вместо того, чтобы экран AmigaOS был единственным экраном, которым можно делиться, приложения могли создавать свои собственные именованные экраны для совместного использования с другими приложениями.

AmigaOS 2.0 исправила проблему, связанную с подключением приложений непосредственно к потоку событий ввода для захвата движений клавиатуры и мыши, что иногда приводило к блокировке всей системы. AmigaOS 2.0 предоставила Commodities — стандартный интерфейс для изменения или сканирования событий ввода. Это включало стандартный метод определения глобальных последовательностей клавиш «горячих клавиш» и реестр товарной биржи , позволяющий пользователю видеть, какие товары продаются.

В AmigaOS 2.1 представлена ​​AmigaGuide , простая схема гипертекстовой разметки и браузер, предназначенный только для текста, для предоставления онлайн-справки внутри приложений. Он также представил Installer , стандартную программу установки программного обеспечения, основанную на языке сценариев, подобном LISP .

В AmigaOS 2.1 появилась поддержка многоязычной локали через locale.library , и впервые AmigaOS была переведена на разные языки. [18]

АмигаОС 3.0, 3.1

Версия 3.0 изначально поставлялась с компьютерами Amiga 1200 и Amiga 4000. В версии 3.0 добавлена ​​поддержка типов данных, которая позволяла любому приложению, поддерживающему типы данных, загружать файлы любого формата, поддерживаемые этими типами данных. Workbench мог загружать любое фоновое изображение в любом формате, если был установлен необходимый тип данных. Было включено крошечное приложение под названием Multiview, которое могло открывать и отображать любой поддерживаемый файл. Его возможности были напрямую связаны с типами данных, установленными в Devs:Datatypes. Установленная гипертекстовая система AmigaGuide стала более удобной в использовании за счет использования ссылок на документы, указывающих на мультимедийные файлы, например изображения или звуки, распознаваемые по типам данных.

АмигаОС 3.5, 3.9

Примерно через шесть лет после выпуска AmigaOS 3.1, после упадка Commodore, Haage & Partner получила лицензию на обновление AmigaOS, которая была выпущена в 1999 году как обновление только программного обеспечения для существующих систем, работавших как минимум на 68 (EC) 020. процессор.

Внешний вид AmigaOS , хотя он все еще во многом основан на более ранней версии 3.1, был несколько переработан: улучшен пользовательский интерфейс на основе ReAction, улучшенный рендеринг значков и официальная поддержка полноцветных фонов . Эти выпуски включали поддержку существующих сторонних улучшений графического интерфейса, таких как NewIcons , путем интеграции этих исправлений в систему. Выпуски 3.5 и 3.9 включали новый набор из 256 цветных значков и выбор обоев для рабочего стола. Они заменили стандартную цельнометаллическую серую цветовую схему 4/8, использовавшуюся в AmigaOS с версий 2.0 по 3.1.

Версия AmigaOS 3.9 была снова разработана Haage&Partner и выпущена в 2000 году. Основными улучшениями были введение панели запуска программы под названием AmiDock, пересмотренные пользовательские интерфейсы для настроек системы и улучшенные служебные программы.

АмигаОС 3.1.4, 3.2

В сентябре 2018 года Hyperion Entertainment выпустила AmigaOS 3.1.4; это было обновление программного и аппаратного обеспечения для всех Amiga. В 2019 году AmigaOS 3.1.4.1 была выпущена как обновление программного обеспечения для Amiga 3.1.4, в основном как исправление ошибок. [ нужна цитата ]

Он включает в себя множество исправлений, модернизирует несколько системных компонентов, ранее обновленных в OS 3.9, обеспечивает поддержку жестких дисков большего размера (в том числе при загрузке), поддерживает всю линейку процессоров Motorola 680x0 вплоть до Motorola 68060 (включительно), а также включает модернизированный Workbench. с новым дополнительным набором значков. В отличие от AmigaOS 3.5/3.9, AmigaOS 3.1.4 по-прежнему поддерживает процессор Motorola 68000.

В мае 2021 года Hyperion Entertainment выпустила AmigaOS 3.2, которая включает в себя все функции предыдущей версии (3.1.4.1) и добавляет несколько новых улучшений, таких как поддержка графического интерфейса ReAction , управление образами дисковых файлов Amiga , справочная система и улучшенные типы данных. [27] В декабре 2021 года было выпущено обновление под названием AmigaOS 3.2.1 с исправлениями ошибок и другими улучшениями. Второе обновление под названием AmigaOS 3.2.2 было выпущено в марте 2023 года и содержало дополнительные улучшения и исправления ошибок. [28]

АмигаОС 4.0, 4.1

АмигаОС 4.0 (2006 г.)

Эта новая AmigaOS под названием AmigaOS 4.0 была переписана и стала полностью совместимой с PowerPC . Первоначально он был разработан на Cyberstorm PPC, поскольку сделать его независимым от старых чипсетов Amiga было непросто. [29] Начиная с четвертого предварительного обновления для разработчиков, была принята новая технология, позволяющая перетаскивать экраны в любом направлении. [30] Также возможно перетаскивание значков Workbench между разными экранами.

Также в AmigaOS 4.0 появилась новая версия Amidock, шрифты TrueType / OpenType и проигрыватель фильмов с поддержкой DivX и MPEG-4 .

В AmigaOS 4.1 была добавлена ​​новая функция настроек запуска, которая заменила старую панель WBStartup. Дополнительными улучшениями стали новый набор значков, дополняющий более высокое разрешение экрана, новые темы окон, включая тени, новая версия AmiDock с истинной прозрачностью, масштабируемые значки и AmigaOS с функцией автоматического обновления. [31]

В октябре 2022 года разработчик AmigaOS Hyperion Entertainment выпустил SDK для AmigaOS 4.1. [32]

Влияние на другие операционные системы

AmigaOS и совместимые

AROS Research Operating System (AROS) реализует API AmigaOS в портативной операционной системе с открытым исходным кодом. Хотя он не совместим на двоичном уровне с AmigaOS (если только он не работает на 68k), пользователи сообщают, что он очень совместим с исходным кодом.

MorphOS — это собственная операционная система PowerPC, которая также работает на некотором оборудовании Amiga. Он реализует API AmigaOS и обеспечивает двоичную совместимость с «совместимыми с ОС» приложениями AmigaOS (то есть с теми приложениями, которые не имеют прямого доступа к какому-либо устаревшему оборудованию Amiga, как и AmigaOS 4.x, если только они не выполняются на реальных моделях Amiga).

pOS представляла собой мультиплатформенную операционную систему с закрытым исходным кодом, совместимую на уровне исходного кода с существующим программным обеспечением Amiga. [33]

BeOS также имеет централизованную структуру типов данных, аналогичную MacOS Easy Open после того, как старые разработчики Amiga попросили Be использовать службу типов данных Amiga. Он позволяет всей ОС распознавать все виды файлов (текст, музыку, видео, документы и т. д.) со стандартными файловыми дескрипторами . Система типов данных обеспечивает всю систему и любые инструменты повышения производительности стандартными загрузчиками и сохранениями для этих файлов без необходимости встраивания нескольких возможностей загрузки файлов в какую-либо одну программу. [34]

AtheOS был вдохновлен AmigaOS и изначально задумывался как клон AmigaOS. [35] Syllable является ответвлением AtheOS и включает в себя некоторые качества, подобные AmigaOS и BeOS .

FriendUP — это облачная метаоперационная система. Над проектом работают многие бывшие разработчики и сотрудники Commodore и Amiga. Операционная система сохраняет несколько функций, подобных AmigaOS, включая драйверы DOS, списки монтирования, интерфейс командной строки на основе TRIPOS и перетаскивание экрана. [36]

Наконец, операционная система 3DO Interactive Multiplayer очень сильно напоминала AmigaOS и была разработана Р. Дж. Микалом , [37] создателем пользовательского интерфейса Amiga Intuition . [38]

Смотрите также

Рекомендации

  1. ^ "Карл Сассенрат" . Проверено 23 мая 2022 г.
  2. ^ "Верстак Amiga" . Проверено 23 мая 2022 г.
  3. ^ "Клоанто". Документы Амиги . Проверено 20 февраля 2015 г.
  4. ^ «Cloanto подтверждает передачу авторских прав Commodore/Amiga» . amiga-news.de . 19 февраля 2015 года . Проверено 20 февраля 2015 г.
  5. ^ «Hyperion, Amiga, Inc. достигли мирового соглашения, все юридические вопросы решены» . ОСНовости. 17 октября 2009 года. Архивировано из оригинала 19 октября 2009 года . Проверено 18 октября 2009 г.
  6. Ларабель, Майкл (5 января 2016 г.). «Hyperion подтверждает утечку исходного кода AmigaOS 3.1» . Фороникс .
  7. ^ «Утечка исходного кода Amiga OS Kickstart и Workbench | Vintage — это новое старое» . Коммодор.ниндзя . Проверено 22 апреля 2016 г.
  8. ^ Уэббер, Адам Брукс (сентябрь 1986 г.). «Амига против Macintosh». БАЙТ . п. 249.
  9. ^ Карл Сассенрат (1986). Справочное руководство по ядру Amiga ROM . Том. Исполнительный.
  10. ^ Холлоуэй, Тим (январь 1991 г.). «Объектно-ориентированный исполнитель Amiga: конструкция ядра операционной системы Amiga соответствует правилам объектно-ориентированного программирования». Байт . МакГроу-Хилл (январь 1991 г.): 329–332, 234. ISSN  0360-5280.
  11. ^ "Aminet – misc/antiq/ARP_13.lha" . Аминет.нет . Проверено 2 мая 2015 г.
  12. ^ «Экраны интуиции - Wiki-документация AmigaOS» . Wiki.amigaos.net . Проверено 23 апреля 2016 г.
  13. ^ Графика Amiga ReTargetable. Amigau.com (25 ноября 2009 г.). Проверено 17 июля 2013 г.
  14. ^ "НьюТек". Архивировано из оригинала 23 февраля 2008 года . Проверено 7 марта 2008 г.
  15. ^ «AHI — переназначаемое аудио для AmigaOS и др.». Архивировано из оригинала 14 марта 2006 года . Проверено 27 марта 2006 г.
  16. ^ «AHI — переназначаемое аудио для AmigaOS и др.». Архивировано из оригинала 18 июля 2011 года . Проверено 19 ноября 2010 г.
  17. ^ Синтез преобразования текста в речь SoftVoice. «SoftVoice, Inc. — Синтез текста в речь» . Проверено 2 мая 2015 г.
  18. ^ ab "Amiga Workbench 2.1" . Архивировано из оригинала 12 декабря 2008 года . Проверено 23 ноября 2008 г.
  19. Девитт, Франческо (30 июня 1995 г.). «Библиотека переводчика (Мультиязычная версия)» . Проверено 9 апреля 2013 г.
  20. ^ «Ностальгия по Workbench: история графического пользовательского интерфейса (GUI) AmigaOS: выпуск 1.3» .
  21. ^ "back2roots.org". ftp.back2roots.org . Архивировано из оригинала 3 декабря 2013 года . Проверено 22 апреля 2016 г.
  22. ^ "Файл README Fish disk 0058" . de4.aminet.net . Проверено 23 сентября 2022 г.
  23. ^ "Рыбный диск 0241" . de4.aminet.net . Проверено 23 сентября 2022 г.
  24. Из журнала PC Magazine, 22 октября 1996 г., Inside Track, автор Джон К. Дворжак.
  25. ^ Братья Фриден (2007). «Распределение памяти AmigaOS4.0». Гиперион Интертеймент . Проверено 2 ноября 2008 г.[ мертвая ссылка ]
  26. ^ Братья Фриден (2007). «Возвращение к новой системе памяти AmigaOS 4.0». Гиперион Интертеймент . Проверено 2 ноября 2008 г.[ мертвая ссылка ]
  27. ^ «Hyperion выпускает AmigaOS 3.2» (пресс-релиз). Брюссель: Hyperion Entertainment. amiga-news.de. 14 мая 2021 г. . Проверено 17 мая 2021 г.
  28. ^ «Новое обновление 2 AmigaOS 3.2 доступно для загрузки СЕЙЧАС» . www.hyperion-entertainment.com . Проверено 5 марта 2023 г.
  29. ^ Дэвид Дойл. «Amigaworld.net - Веб-сайт компьютерного портала сообщества Amiga» . amigaworld.net .
  30. ^ Неизвестно. «IntuitionBase – ваш путеводитель по AmigaOS4.x и AmigaOne». Архивировано из оригинала 4 октября 2011 года . Проверено 2 мая 2015 г.
  31. ^ Ханс-Йорг Фриден. «Обновление 1 AmigaOS 4.1 доступно для немедленной загрузки» . Проверено 2 мая 2015 г.
  32. Парди, Кевин (17 октября 2022 г.). «37-летняя платформа Amiga получает обновления ядра Linux, AmigaOS SDK» . Арс Техника . Проверено 4 ноября 2022 г.
  33. ^ "Путеводитель по истории Amiga" . Amigahistory.co.uk . Проверено 22 апреля 2016 г.
  34. ^ "Джон Ватт, Metrowerks BeMeister" . МакТех . Проверено 8 сентября 2011 г.
  35. ^ "Комментарии AtheOS" . ANN.lu. 5 мая 2000 г. Проверено 1 декабря 2008 г.
  36. ^ «Дом». Friendup.облако .
  37. ^ Микальное резюме. «Микал Пейдж». Mical.org . Проверено 22 апреля 2016 г.
  38. ^ «История Amiga, часть 3: Первый прототип». Арс Техника . 22 августа 2007 года . Проверено 2 мая 2015 г.

Внешние ссылки