Jump to content

ЭРОС (микроядро)

ЭРОС
Разработчик Пенсильванский университет
Университет Джонса Хопкинса
ООО «Группа ЭРОС»
Написано в С
Семейство ОС Основанный на возможностях
Рабочее состояние Снято с производства
Первоначальный выпуск 1991 год ; 33 года назад ( 1991 )
Последний выпуск Финал/2005 ; 19 лет назад ( 2005 )
Маркетинговая цель Исследовать
Доступно в Английский
Обновить метод Скомпилировать из исходного кода
Платформы ИА-32
ядра Тип реального времени Микроядро
По умолчанию
пользовательский интерфейс
Интерфейс командной строки
Предшественник КейКОС
Преемник КэпРОС

Чрезвычайно надежная операционная система ( EROS ) — операционная система , разрабатываемая начиная с 1991 года в Пенсильванском университете , а затем в Университете Джона Хопкинса и The EROS Group, LLC. Функции включают автоматическое сохранение данных и процессов , некоторую предварительную поддержку в режиме реального времени и безопасность на основе возможностей . EROS — это чисто исследовательская операционная система, которая никогда не применялась в реальных условиях. По состоянию на 2005 год , разработка остановилась в пользу системы-преемницы CapROS .

Ключевые понятия

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

Основная цель системы EROS (и ее родственников) — обеспечить надежную поддержку на уровне операционной системы для эффективной реструктуризации критически важных приложений на небольшие взаимодействующие компоненты. Каждый компонент может взаимодействовать с другими только через защищенные интерфейсы и изолирован от остальной системы. в Защищенный интерфейс этом контексте — это интерфейс, который поддерживается частью операционной системы самого низкого уровня — ядром . Это единственная часть системы, которая может передавать информацию из одного процесса в другой. Он также имеет полный контроль над машиной и (при правильной конструкции) его невозможно обойти. В EROS механизм, предоставляемый ядром, с помощью которого один компонент называет и вызывает службы другого, представляет собой возможность , использующую межпроцессное взаимодействие (IPC). Применяя интерфейсы с защищенными возможностями, ядро ​​гарантирует, что все сообщения с процессом поступают через намеренно экспортированный интерфейс. Это также гарантирует, что вызов невозможен , если вызывающий компонент не обладает допустимыми возможностями для вызываемого компонента. Защита в системах возможностей достигается за счет ограничения распространения возможностей от одного компонента к другому, часто с помощью политики безопасности, называемой заключение .

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

  • Отдельные компоненты наиболее естественно структурированы как циклы событий . Примеры систем, которые обычно структурированы таким образом, включают системы управления полетом самолета (см. также «Вопросы программного обеспечения DO-178B при сертификации бортовых систем и оборудования ») и системы телефонной коммутации (см. переключатель 5ESS ). Программирование, управляемое событиями, выбрано для этих систем главным образом из-за простоты и надежности, которые являются важными атрибутами жизненно важных и критически важных систем.
  • Компоненты становятся меньше и их можно тестировать по отдельности, что помогает легче изолировать и выявлять недостатки и ошибки.
  • Изоляция каждого компонента от других ограничивает объем любого ущерба, который может возникнуть, если что-то пойдет не так или программное обеспечение работает неправильно.

В совокупности эти преимущества приводят к значительно более надежным и безопасным системам. Plessey System 250 — это система, изначально разработанная для использования в телефонных коммутаторах, конструкция которой с учетом возможностей была выбрана специально из соображений надежности.

В отличие от многих более ранних систем, возможности являются единственным механизмом именования и использования ресурсов в EROS, поэтому ее иногда называют системой чистых возможностей. Напротив, IBM i является примером коммерчески успешной системы возможностей, но это не чистая система возможностей.

Архитектуры с чистыми возможностями поддерживаются хорошо протестированными и зрелыми математическими моделями безопасности. Они использовались для формальной демонстрации того, что системы, основанные на возможностях, можно сделать безопасными при правильной реализации. Было показано, что так называемое «свойство безопасности» разрешимо для систем с чистыми возможностями (см. Липтон ). Было официально подтверждено, что изоляция, которая является фундаментальным строительным блоком изоляции, может быть реализована с помощью систем чистых возможностей. [1] и сводится к практической реализации конструктором EROS и KeyKOS фабрикой . Никакой подобной проверки не существует для любого другого примитивного механизма защиты. В литературе есть фундаментальный результат, показывающий, что безопасность математически неразрешима в общем случае (см. HRU , но обратите внимание, что это, конечно, доказуемо для неограниченного набора ограниченных случаев). [2] ). Более важное практическое значение имеет то, что безопасность оказывается ложной для всех примитивных механизмов защиты, поставляемых в современных операционных системах. Безопасность является необходимой предпосылкой успешного применения любой политики безопасности. невозможно В практическом плане этот результат означает, что в принципе защитить существующие стандартные системы, но потенциально возможно обеспечить безопасность систем, основанных на возможностях, при условии, что они реализованы с достаточной тщательностью. Ни EROS, ни KeyKOS никогда не были успешно взломаны, и их механизмы изоляции ни разу не были успешно взломаны каким-либо внутренним злоумышленником, но неизвестно, были ли эти две реализации достаточно осторожны. Одной из целей проекта Coyotos была демонстрация того, что изоляция и безопасность компонентов были окончательно достигнуты за счет применения методов проверки программного обеспечения.

Система L4.sec, являющаяся преемницей семейства микроядер L4 , представляет собой систему, основанную на возможностях, и на нее существенно повлияли результаты проекта EROS. Влияние взаимное, поскольку работа EROS над высокопроизводительным вызовом была сильно мотивирована успехами Йохена Лидтке с семейством микроядер L4 .

Основным разработчиком EROS был Джонатан С. Шапиро. Он также был движущей силой Койотос, что было «эволюционным шагом». [3] за пределами операционной системы EROS. [4]

Проект EROS начался в 1991 году как реконструкция более ранней операционной системы KeyKOS . KeyKOS был разработан компанией Key Logic, Inc. и стал прямым продолжением работы над более ранней системой Great New Operating System In the Sky ( GNOSIS ), созданной Tymshare, Inc. Обстоятельства, связанные с закрытием Key Logic в 1991 году, сделали лицензирование KeyKOS непрактичным. Поскольку KeyKOS в любом случае не работал на популярных массовых процессорах, было принято решение реконструировать его по общедоступной документации.

К концу 1992 года стало ясно, что архитектура процессоров существенно изменилась с момента появления идеи возможностей, и практичность систем с компонентной структурой уже не была очевидной. Системы на основе микроядра , которые также отдают предпочтение большому количеству процессов и IPC, сталкивались с серьезными проблемами производительности, и было неясно, можно ли их успешно решить. Архитектура x86 явно становилась доминирующей архитектурой, но дорогостоящая задержка перехода между пользователем и супервизором на 386 и 486 создавала серьезные проблемы для изоляции на основе процессов. Проект EROS превратился в исследовательскую работу и переехал в Пенсильванский университет, чтобы стать центром диссертационного исследования Шапиро. высокопроизводительная реализация процессора Pentium К 1999 году была продемонстрирована , которая по производительности напрямую конкурировала с семейством микроядер L4 , которое известно своей исключительной скоростью в IPC. Механизм изоляции EROS был формально проверен в процессе создания общей формальной модели для систем безопасности.

В 2000 году Шапиро поступил на факультет компьютерных наук Университета Джонса Хопкинса. Целью Университета Хопкинса было показать, как использовать возможности ядра EROS для создания безопасных и защищаемых серверов на уровне приложений. При финансовой поддержке Агентства перспективных исследовательских проектов Министерства обороны и Исследовательской лаборатории ВВС , EROS использовался в качестве основы для надежной оконной системы. [5] высокопроизводительный, защищенный сетевой стек, [6] и начало безопасного веб-браузера. Он также использовался для изучения эффективности облегченной статической проверки. [7] В 2003 году были обнаружены некоторые очень серьезные проблемы безопасности. [8] которые присущи любой системной архитектуре, основанной на синхронных примитивах IPC (в частности, включая EROS и L4). Работа над EROS была остановлена ​​в пользу Coyotos, который решил эти проблемы. [ нужна ссылка ]

По состоянию на 2006 год EROS и его преемники — единственные широко доступные системы, работающие на обычном оборудовании.

Работа первоначальной группы над EROS и Coyotos была остановлена, но существует система-преемница. [4] Система CapROS строится непосредственно на базе кода EROS. Ожидается, что CapROS будет выпущен в различных коммерческих версиях. [ нужна ссылка ]

См. также

[ редактировать ]
  1. ^ Шапиро, Джонатан С.; Вебер, Сэмюэл (29 октября 1999 г.). Проверка механизма локализации EROS (Отчет). Архивировано из оригинала 3 марта 2016 года.
  2. ^ Ли, Питер. «Кодекс подтверждения» . Архивировано из оригинала 22 сентября 2006 года.
  3. ^ Шапиро, Джонатан (2 апреля 2006 г.). «Различия между Койотами и ЭРОСом: краткое изложение» . Архивировано из оригинала 31 июля 2012 г.
  4. ^ Перейти обратно: а б Шапиро, Джонатан С. (7 апреля 2009 г.). «Статус Койотос» . coyotos-dev (список рассылки). Архивировано из оригинала 24 июля 2014 года . Проверено 16 марта 2022 г. Активная работа над Coyotos прекратилась несколько месяцев назад и вряд ли возобновится.
  5. ^ Шапиро, Джонатан С.; Вандербург, Джон; Нортап, Эрик; Чизмадиа, Дэвид. «Проектирование доверенной оконной системы EROS» . Архивировано из оригинала 3 марта 2016 года.
  6. ^ Синха, Аншумал; Сарат, Сандип; Шапиро, Джонатан С. «Перезагрузка сетевых подсистем: высокопроизводительная, защищенная сетевая подсистема» . Архивировано из оригинала 3 марта 2016 года.
  7. ^ Чен, Хао; Шапиро, Джонатан С. «Использование встроенной статической проверки для сохранения инвариантов правильности» (PDF) . Архивировано из оригинала (PDF) 3 марта 2016 г.
  8. ^ Шапиро, Джонатан С. «Уязвимости в синхронных конструкциях IPC» . Архивировано из оригинала 3 марта 2016 года.
  1. Липтон, Р.Дж.; Снайдер, Л. (июль 1977 г.). «Алгоритм линейного времени для принятия решения о безопасности объекта» . Журнал АКМ . 24 (3): 455–464. дои : 10.1145/322017.322025 . S2CID   291367 .
  2. Харрисон, Майкл А .; Руццо, WL; Уллман, Джеффри Д. (август 1976 г.). «Защита в операционных системах» . Коммуникации АКМ . 19 (8): 461–471. дои : 10.1145/360303.360333 . S2CID   5900205 .
[ редактировать ]


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 2af2f61fc95e38b7b50f3f0e431f38c7__1697330220
URL1:https://arc.ask3.ru/arc/aa/2a/c7/2af2f61fc95e38b7b50f3f0e431f38c7.html
Заголовок, (Title) документа по адресу, URL1:
EROS (microkernel) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)