Jump to content

Руководитель (Друг)

Исполнительный директор
Разработчик Карл Сассенрат
Семейство ОС АмигаОС
Рабочее состояние Текущий
Исходная модель Закрытый исходный код
Первоначальный выпуск 23 июля 1985 г .; 39 лет назад ( 1985-07-23 )
Последний выпуск 4.1 Обновление финальной версии 2/12 января 2021 г .; 3 года назад ( 12.01.2021 )
Маркетинговая цель АмигаОС
Доступно в Английский
Обновить метод Скомпилировать из исходного кода
Платформы Amiga Motorola серии 68000 (MC680x0, 68k)
ядра Тип Микроядро
По умолчанию
пользовательский интерфейс
Интерфейс командной строки
Лицензия Собственный
Официальный сайт www .amigaos .сеть

Exec это ядро ​​AmigaOS . Это размером 13 КБ многозадачное микроядро , которое позволяло выполнять вытесняющую многозадачность всего за 256 КБ памяти (поставлявшейся в комплекте с первой Amiga 1000 ). Exec предоставил функции для многозадачности, управления памятью и обработки прерываний и динамических общих библиотек . [1] [2]

Он действует как планировщик задач, выполняемых в системе, обеспечивая упреждающую многозадачность с приоритетным циклическим планированием . Exec также обеспечивает доступ к другим библиотекам и высокоуровневое межпроцессное взаимодействие посредством передачи сообщений . Другие сопоставимые микроядра имели проблемы с производительностью из-за необходимости копировать сообщения между адресными пространствами . Поскольку у Amiga только одно адресное пространство, передача сообщений Exec весьма эффективна. Единственный фиксированный адрес памяти в программе Amiga (адрес 4) — это указатель на exec.library, который затем можно использовать для доступа к другим библиотекам. Exec был разработан и реализован Карлом Сассенратом . [3]

Исполнительный директор

[ редактировать ]

В отличие от более новых современных операционных систем , ядро ​​exec не работает «привилегированно». Современные операционные системы для Motorola 68000 , такие как Atari TOS и SunOS, использовали инструкции- ловушки для вызова функций ядра. Это привело к тому, что функции ядра 68000 выполнялись в режиме супервизора , в то время как пользовательское программное обеспечение работало в режиме непривилегированного пользователя . Напротив, вызовы функций exec выполняются с использованием таблицы переходов библиотеки, а код ядра обычно выполняется в пользовательском режиме. Всякий раз, когда требуется режим супервизора, либо ядру, либо пользовательским программам, библиотека работает Supervisor() или SuperState() используются.

Одним из ограничений ядра Exec было то, что несовместимая программа могла отключить многозадачность на долгое время или на неопределенный срок, вызывая вызовы Exec. Forbid() или Disable(), без последующего вызова соответствующего Permit() или Enable(), в результате чего среда запускается как одна задача. Многозадачность также может быть отключена программами, которые из-за ошибки или намерения программного обеспечения изменяют структуры данных Exec или код, хранящийся в оперативной памяти (ОЗУ), возможно, из-за отсутствия поддержки блока управления памятью (MMU).

Даже с такими ограничениями Exec удовлетворяет определению алгоритма упреждающего планирования, используя процедуру упреждающего планирования и основывая свои интервалы прерываний на тактовых импульсах. [4]

ядра Linux Разработчик Линус Торвальдс однажды описал дизайн Amiga как кооперативный, [5] даже несмотря на то, что он использует политику упреждающего планирования. Причина этого, по его мнению, заключалась в том, что отсутствие защиты [памяти] между задачами означало, что задача могла помешать системе работать упреждающе. Поскольку задачам придется отказаться от остановки механизма упреждения, это сведется к своего рода перевернутой системе сотрудничества. Такое смешение политики защиты и политики планировщика не является стандартным.

Исполнительный директор

[ редактировать ]

ExecSG (второе поколение) — ядро, используемое AmigaOS 4 . Это ядро ​​было лицензировано Hyperion Entertainment у Томаса Фридена и Ханса-Йорга Фридена. [6] Оно предоставляет те же функции и структуры, что и ядро ​​Amiga Exec, но работает только на процессорах PowerPC . Окончательное происхождение ExecSG не указано.

  1. ^ Сассенрат, Карл (1986). Справочное руководство по ядру Amiga ROM . Исполнительный. {{cite book}}: CS1 maint: отсутствует местоположение издателя ( ссылка )
  2. ^ Холлоуэй, Тим (январь 1991 г.). «Объектно-ориентированный исполнитель Amiga: конструкция ядра операционной системы Amiga соответствует правилам объектно-ориентированного программирования». Байт . № Январь 1991 г. МакГроу-Хилл . стр. 329–332, 234. ISSN   0360-5280 .
  3. ^ «Карл Сассенрат» . Проверено 23 мая 2022 г.
  4. ^ Столлингс, Уильям (2009). Операционные системы - Внутреннее устройство и принципы проектирования (6-е изд.). Река Аппер-Сэддл, Нью-Джерси: Пирсон Прентис Холл . ISBN  9788120336292 .
  5. ^ Торвальдс, Линус (17 октября 1996 г.). «И снова великолепное новое изобретение от M$» (на финском языке). Группа новостей : sfnet.atk.sodat . Usenet:   [электронная почта защищена] . Проверено 25 февраля 2011 г. В Amiga реализована «псевдовытесняющая» многозадачность, которую люди в Amiga называют упреждающей, но на самом деле это не так. WinNT в этом отношении на световые годы впереди. ... из-за отсутствия защиты памяти. Любая программа может полностью завладеть машиной и тем самым предотвратить многозадачность. Многозадачность в Amiga является кооперативной, поскольку требует одобрения и помощи со стороны запуска приложений [... из-за отсутствия защиты памяти. Любая программа может полностью взять на себя управление машиной и тем самым предотвратить многозадачность. Таким образом, многозадачность Amiga является кооперативной, поскольку она требует, чтобы запускаемые программы принимали эту многозадачность и помогали ей] [ постоянная мертвая ссылка ]
  6. ^ «Джустия: Hyperion Entertainment против Amiga Inc» .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 7de295dd5c31539ca9d24a20c67d2325__1711155180
URL1:https://arc.ask3.ru/arc/aa/7d/25/7de295dd5c31539ca9d24a20c67d2325.html
Заголовок, (Title) документа по адресу, URL1:
Exec (Amiga) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)