Гармония (операционная система)
Разработчик | Национальный исследовательский совет Канады |
---|---|
Написано в | С , язык ассемблера |
Рабочее состояние | Снято с производства |
Первоначальный выпуск | 1985 год |
Маркетинговая цель | Исследовать |
Доступно в | Английский |
Обновить метод | Скомпилировать из исходного кода |
Платформы | Motorola 68000 ( VMEbus , Multibus ), Atari ST (520, 1040), Digital Equipment Corporation VAX |
ядра Тип | Микроядро |
Предшественник | Тот |
Преемник | Исполнительное управление очередью сообщений ( MQX ) |
Harmony — экспериментальная компьютерная операционная система (ОС), разработанная Национальным исследовательским советом Канады в Оттаве . Это система передачи сообщений второго поколения , которая также использовалась в качестве основы для нескольких исследовательских проектов, включая разработку робототехнических датчиков и графических рабочих станций . «Гармония» активно развивалась на протяжении 1980-х и до середины 1990-х годов.
История
[ редактировать ]Гармония была преемницей системы Тота , разработанной в Университете Ватерлоо . [1] Работа над Harmony началась примерно в то же время, что и над ядром Verex, разработанным в Университете Британской Колумбии . Дэвид Черитон участвовал как в Тоте, так и в Верексе, а позже продолжил разработку системы V в Стэнфордском университете . Среди основных разработчиков Harmony были У. Морвен Джентльмен, Стивен А. Маккей, Дарлин А. Стюарт и Марсели Вейн. [2]
Ранние порты системы существовали для различных компьютеров на базе Motorola 68000 , в том числе для компьютеров, использующих объединительные платы VMEbus и Multibus , и, в частности, для многопроцессорной системы Chorus на базе Multibus в Ватерлоо. Другие хосты включали Atari 520 или 1040 ST. Также существовал порт для Digital Equipment Corporation VAX . [2]
Гармония прошла официальную проверку в 1995 году. [3]
Функции
[ редактировать ]Harmony была разработана как операционная система реального времени (RTOS) для управления роботами . [2] Это многозадачная и многопроцессорная система. Это не многопользовательский режим . [2] Harmony предоставила только систему времени выполнения (среду); разработка проходила на отдельной системе, первоначально Apple Macintosh . Для каждого процессора в системе создается образ, который объединяет Harmony с одной многозадачной программой для этого процессора во время компоновки , исключением является случай, когда ядро запрограммировано в постоянное запоминающее устройство (ПЗУ).
Хотя этот термин не появлялся в первоначальных статьях, позже Harmony стали называть микроядром . [3] Ключевым моментом в Harmony является использование термина « задача» , который в Harmony определяется как «единица последовательного и синхронного выполнения» и «единица владения ресурсами». [2] Это похоже на подпрограмму , но она должна быть создана явно и выполняется независимо от задачи, которая ее создала. Программы состоят из ряда задач. [2] Задача привязана к конкретному процессору, который может отличаться от процессора задачи, создающей экземпляр, и на котором может размещаться множество задач. Все системные ресурсы принадлежат задачам и управляются ими.
Межзадачная связь обеспечивается в основном синхронной передачей сообщений и четырьмя связанными примитивами . [2] Общая память также поддерживается. Уничтожение задачи закрывает все ее связи. Ввод/вывод использует модель потока данных .
Гармония ориентирована на соединение, поскольку задачи, которые взаимодействуют друг с другом, часто сохраняют информацию о состоянии друг друга. В отличие от некоторых других распределенных систем, соединения в Harmony недорогие. [2]
Приложения и инструменты
[ редактировать ]Усовершенствованный отладчик под названием Melody был разработан для Harmony в лаборатории Advanced Real-Time Toolset в Карлтонском университете . Позже он был коммерциализирован как Remedy . [4]
Ядро Harmony легло в основу проекта Actra — многопроцессорного и многозадачного Smalltalk. [5] [6]
Harmony использовалась в многозадачной многопроцессорной Adagio . рабочей станции моделирования робототехники [7] [8]
Концепции Harmony и Adagio повлияли на дизайн основанного на Smalltalk конструктора пользовательского интерфейса Eva, управляемого событиями. [9]
Harmony использовалась в качестве базовой ОС для нескольких экспериментальных роботизированных систем. [10] [11] [12]
Коммерческий
[ редактировать ]Harmony была коммерциализирована подразделением Taurus Computer Products канадской промышленной компьютерной компании Dy4 . [13] [14] [15] [16] Когда Dy4 закрыла свое подразделение программного обеспечения, четверо бывших разработчиков Taurus основали Precision Software Technologies и продолжили разработку ОС под названием Precision/MPX, предшественника их более позднего продукта Precision/ MQX . [17]
Еще одна коммерческая операционная система, созданная на основе Harmony, — это Unison OS от Rowebot Research Inc. [18]
Ссылки
[ редактировать ]- ^ Таннер, ПП; Бакстон, В. (1985). Некоторые проблемы будущей разработки системы управления пользовательским интерфейсом (UIMS) . Системы управления пользовательским интерфейсом. Берлин. стр. 67–79.
- ^ Перейти обратно: а б с д и ж г час Джентльмен, ВМ; Маккей, ЮАР; Стюарт, округ Колумбия; Вейн, М. (февраль 1989 г.). Использование операционной системы Harmony: выпуск 3.0 (технический отчет).
- ^ Перейти обратно: а б Кэттель, Тьерри (1995). «Моделирование и верификация ядра многопроцессорной ОС реального времени». Ин Хогрефе, Д.; Леу, С. (ред.). Методы формального описания, VII: материалы 7-й Международной конференции ИФИП WG 6.1 по методам формального описания (PDF) . ИФИП: Достижения в области информационных и коммуникационных технологий. Бостон, Массачусетс: Спрингер. стр. 55–70. дои : 10.1007/978-0-387-34878-0_4 . ISBN 978-1-5041-2881-0 .
- ^ Роу, П. Ким; Пагурек, Б. (1–3 декабря 1987 г.). «Remedy, многопроцессорный отладчик системного уровня в реальном времени». Материалы 8-го симпозиума IEEE по системам реального времени (RTSS '87) . Сан-Хосе, Калифорния, США: Компьютерное общество IEEE. стр. 230–240. ISBN 0-8186-0815-3 .
- ^ Томас, Дэйв; Берри, Брайан (июль – август 2004 г.). «Использование активных объектов для структурирования сервис-ориентированных архитектур, антропоморфного программирования с актерами» (PDF) . Журнал объектных технологий . 3 (7): 7. doi : 10.5381/jot.2004.3.7.c1 .
- ^ Дуймович, Джон (12 января 1989 г.). Сбор мусора в многопроцессорной системе Smalltalk (PDF) (Технический отчет).
- ^ Маккей, Стивен А.; Таннер, Питер П. (1986). «Графические инструменты в Adagio, многозадачной многопроцессорной рабочей станции для робототехники» (PDF) . Труды графического интерфейса 1986 : 98–103.
- ^ «Сессия «Рабочие станции '85: симулятор робота из Канады» (PDF)» . Газета Кремниевого ущелья . № 42. Компьютерное общество IEEE. Октябрь 1985 г. с. 2.
- ^ МакАффер, Джефф; Томас, Дэйв (1 июля 1988 г.). «Ева: управляемая событиями платформа для создания пользовательских интерфейсов в Smalltalk». Труды графического интерфейса 1986 : 168–175.
- ^ Грин, Дэвид; Лискано, Рамиро; Вейн, М. (24–26 сентября 1989 г.). «Управление автономным мобильным роботом в режиме реального времени с использованием операционной системы Harmony» . Материалы четвертого международного симпозиума IEEE по интеллектуальному управлению . Олбани, Нью-Йорк, США.
- ^ Эльгаззар, С.; Грин, Д.; Джентльмен, WM (14–16 июня 1988 г.). «Архитектура открытой системы контроллера многопроцессорного робота». Материалы 7-й Канадской конференции по CAD/CAM и робототехнике . Торонто, Онтарио.
- ^ О'Хара, DH; Эльгаззар, С.; Г. (декабрь 1987 г.). ALTER-Harmony: Управление роботом PUMA из мультипроцессора Chorus . Национальный исследовательский совет Канады (Технический отчет). Оттава, Онтарио.
- ^ Драйден, Алекс (11 июля 1988 г.). "Бизнес" . Гражданин Оттавы . п. 11.
- ^ Роттман, Майкл С. (4 марта 1991 г.). Многопроцессорная операционная система реального времени с общим интерфейсом для встраиваемых систем (PDF) (технический отчет). Архивировано (PDF) из оригинала 31 марта 2021 г.
- ^ Бергрман, Рич, изд. (апрель 1991 г.). Рабочая группа по стандартам операционных систем (OSSWG) Программа компьютерных ресурсов следующего поколения (NGCR) Первый годовой отчет: октябрь 1990 г. (PDF) (Технический отчет). Архивировано (PDF) из оригинала 31 марта 2021 г.
- ^ «Коллекция DY-4 в ЮКоме — пособия и руководства» . Компьютерный музей Йоркского университета . 2018.
- ^ Люк (29 июля 2020 г.). «Мати Арно Саукс, 27 февраля 1951 г., 25 июля 2020 г. (69 лет)» . Некрологи Канады .
- ^ Чжу, Мин-Юань (май 2012 г.). Следующие сотни встроенных операционных систем реального времени (технический отчет). дои : 10.13140/RG.2.2.28990.69445 .
Дальнейшее чтение
[ редактировать ]- Джеймс, Дж.; Роу, К.; Грей, Л.; Вишнубхатла, Б.; Ван, CF; Уилсон, М. (1985). «Опыт портирования операционной системы Harmony». Материалы 6-го симпозиума IEEE по системам реального времени (RTSS '85) . Сан-Диего, Калифорния, США: Компьютерное общество IEEE. стр. 88–99. ISBN 0-8186-0675-4 .
- Форси, Дэвид Р. (1985). Гармония в транспозиции: Токката для Vax и Motorola 68000 (Технический отчет).
- Парр, РК (1986). Поддержка TCP/IP Ethernet для операционной системы Harmony . Университет Ватерлоо (Технический отчет).
- Ризе, HM (1986). К гармонии на Сильване . Университет Ватерлоо (Технический отчет).
- Вонг, Вай Виктория (1987). Concordia Cum Vaxen: перенос Harmony на VAX-11/750 (технический отчет).
- Рот, Г.; О'Хара, Д. (май 1987 г.). «Метод захвата деталей с помощью лазерного дальномера, установленного на запястье робота». Материалы конференции IEEE по робототехнике и автоматизации . Роли, Северная Каролина. стр. 1517–1523.
- Барри, Б.М.; Томас, округ Колумбия; Альтофт, младший; Уилсон, М. (4–8 октября 1987 г.). «Использование объектов для проектирования и создания радиолокационных систем ESM». Материалы конференции по системам, языкам и приложениям объектно-ориентированного программирования . Том. 22. Орландо, Флорида. стр. 192–201.
- О'Хара, Д.Х. (2–4 февраля 1988 г.). Многопроцессорное управление роботом для сборки: демонстрация с тактильной обратной связью для вставки блоков призматической формы . 7-я Международная конференция по зрению роботов и сенсорному управлению. Цюрих, Швейцария.
- Джентльмен, В.; Маккей, С.; Стюарт, Д. (1988). Введение в операционную систему Harmony Realtime (технический отчет).
- Торесон, DVP (май 1988 г.). Поддержка многозадачной среды выполнения Harmony для Ada Rendezvous . Королевский военный колледж Канады (технический отчет). Кингстон, Онтарио.
- Арчибальд, CC; Джентльмен, ВМ; О'Хара, Д.Х. (14–16 июня 1988 г.). «Управление с обратной связью в реальном времени с использованием лазерного дальномера и гармонии». Материалы 7-й Канадской конференции по CAD/CAM и робототехнике . Торонто, Онтарио.
- О'Хара, DH; Курц, Р. Вставка блока призматической формы: применение контроллера многопроцессорного робота с использованием Harmony . Национальный исследовательский совет Канады (Технический отчет). Оттава, Онтарио.
- Маккей, ЮАР; Джентльмен, ВМ; Стюарт, округ Колумбия; Вейн, М. (26–27 сентября 1988 г.). «Гармония как объектно-ориентированная операционная система». Материалы семинара ACM SIGPLAN по объектно-ориентированному параллельному программированию . Том. 24. Сан-Диего. стр. 201–203.