~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ 97C0F2D69162AAD37C692ACFC647EB76__1715663880 ✰
Заголовок документа оригинал.:
✰ Unikernel - Wikipedia ✰
Заголовок документа перевод.:
✰ Юникернел — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Unikernel ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/97/76/97c0f2d69162aad37c692acfc647eb76.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/97/76/97c0f2d69162aad37c692acfc647eb76__translat.html ✰
Дата и время сохранения документа:
✰ 21.06.2024 04:53:31 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 14 May 2024, at 08:18 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Юникернел — Википедия Jump to content

Юникернел

Из Википедии, бесплатной энциклопедии
Сравнение традиционного стека ОС и одноядра MirageOS

Unikernel , — это компьютерная программа , статически связанная с кодом операционной системы от которого она зависит. Unikernels создаются с помощью специализированного компилятора , который идентифицирует службы операционной системы, используемые программой, и связывает их с одной или несколькими библиотеками операционных систем , которые их предоставляют. Такая программа не требует отдельной операционной системы и может работать в качестве гостя гипервизора . [1]

Одноядерная архитектура основана на концепциях, разработанных Exokernel и Nemesis в конце 1990-х годов.

Дизайн [ править ]

В библиотечной операционной системе границы защиты смещаются на самые нижние аппаратные уровни, что приводит к:

  1. набор библиотек, реализующих такие механизмы, как те, которые необходимы для управления оборудованием или обмена сетевыми протоколами;
  2. набор политик, которые обеспечивают контроль доступа и изоляцию на уровне приложений.

Архитектура библиотечной ОС имеет ряд преимуществ и недостатков по сравнению с традиционными конструкциями ОС. Одним из преимуществ является то, что, поскольку существует только одно адресное пространство, нет необходимости повторять смену привилегий для перемещения данных между пространством пользователя и пространством ядра. Таким образом, библиотечная ОС может обеспечить повышенную производительность, предоставляя прямой доступ к оборудованию без необходимости перехода между пользовательским режимом и режимом ядра (в традиционном ядре этот переход состоит из одной инструкции TRAP). [2] и это не то же самое, что переключение контекста [3] ). Повышение производительности может быть достигнуто за счет устранения необходимости копирования данных между пространством пользователя и пространством ядра, хотя это также возможно с помощью драйверов устройств с нулевым копированием в традиционных операционных системах.

Недостаток заключается в том, что из-за отсутствия разделения попытка одновременного запуска нескольких приложений в библиотечной ОС, но с сильной изоляцией ресурсов, может стать сложной. [4] Кроме того, требуются драйверы устройств для конкретного оборудования, на котором работает ОС библиотеки. Поскольку оборудование быстро меняется, возникает необходимость регулярно переписывать драйверы, чтобы оставаться в курсе последних событий.

ОС Виртуализация может устранить некоторые из этих недостатков обычного оборудования. Современный гипервизор предоставляет виртуальным машинам процессорное время и строго изолированные виртуальные устройства. Библиотечной ОС, работающей как виртуальная машина, необходимо только реализовать драйверы для этих стабильных виртуальных аппаратных устройств, и она может зависеть от гипервизора для управления реальным физическим оборудованием. Однако библиотеки протоколов по-прежнему необходимы для замены служб традиционной операционной системы. Создание этих библиотек протоколов — это основная часть работы при реализации современной библиотечной ОС. [1] Кроме того, использование гипервизора может вновь привести к снижению производительности при переключении между одноядерным ядром и гипервизором, а также при передаче данных на виртуальные устройства гипервизора и обратно.

Уменьшая объем развертываемого кода, юникеры обязательно уменьшают вероятную поверхность атаки и, следовательно, улучшают свойства безопасности. [5] [6]

Пример клиента обмена сообщениями на основе одноядерного ядра имеет размер примерно 4% от размера эквивалентной базы кода, использующей Linux. [7]

Благодаря характеру их конструкции можно выполнять оптимизацию всей системы, включая драйверы устройств и логику приложений, тем самым улучшая специализацию. [8] [9] [10] Например, готовые приложения, такие как nginx, SQLite и Redis, работающие на одноядерном процессоре, показали повышение производительности в 1,7–2,7 раза. [11]

Unikernels регулярно загружаются очень быстро, успевая реагировать на входящие запросы до истечения времени ожидания запросов. [12] [13] [14]

Unikernels подходят для создания систем, которые следуют сервис-ориентированной или микросервисной архитектуре программного обеспечения.

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

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

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

  1. ^ Перейти обратно: а б «Юникеры: развитие операционной системы виртуальной библиотеки» . Проверено 31 августа 2015 г.
  2. ^ Таненбаум, Эндрю С. (2008). Современные операционные системы (3-е изд.). Прентис Холл. стр. 50–51 . ISBN  978-0-13-600663-3 . . . . почти все системные вызовы вызываются из программ на языке C путем вызова библиотечной процедуры. . . Библиотечная процедура. . . выполняет инструкцию TRAP для переключения из пользовательского режима в режим ядра и начала выполнения. . .
  3. ^ Переключение контекста # Переключение режима пользователя и ядра
  4. ^ Чиа-Че, Цай; Арора, Кумар-Саураб; Банди, Нехал; Джайн, Бхушан; Яннен, Уильям; Джон, Джитин; Калоднер, Гарри; Кулкарни, Врушали; Оливьера, Даниэла; Портер, Дональд Э. (2014). «Сотрудничество и изоляция безопасности библиотечных ОС для многопроцессных приложений». Материалы Девятой Европейской конференции по компьютерным системам (PDF) . стр. 1–14. CiteSeerX   10.1.1.589.1837 . дои : 10.1145/2592798.2592812 . ISBN  9781450327046 . S2CID   13771821 . Архивировано из оригинала (PDF) 4 марта 2016 г. Проверено 31 августа 2015 г.
  5. ^ «Почему Unikernels может повысить безопасность в Интернете» . Апрель 2015 года . Проверено 31 августа 2015 г.
  6. ^ Мадхавапедди, Анил; Мортье, Ричард; Харалампос, Ротсос; Скотт, Дэвид; Сингх, Балрадж; Газаньер, Томас; Смит, Стивен; Хэнд, Стивен; Кроукрофт, Джон (март 2013 г.). «Unikernels: библиотечные операционные системы для облака» (PDF) . Уведомления SIGPLAN (ASPLOS 13) . 48 (4): 461. дои : 10.1145/2499368.2451167 .
  7. ^ Калопер-Мершиняк, Давид; Менерт, Ханнес; Мадхавапедди, Анил; Сьюэлл, Питер (2015). «Не такой уж и сломанный TLS: уроки реорганизации спецификации и реализации протокола безопасности» . Материалы 24-го симпозиума по безопасности USENIX (USENIX Security 15) .
  8. ^ Тибо, Самуэль; Диган, Тим (2008). «Повышение производительности за счет внедрения приложений HPC в облегченные домены Xen» (PDF) . 2-й семинар по виртуализации системного уровня для высокопроизводительных вычислений (HPCVIRT'08) . дои : 10.1145/1435452.1435454 .
  9. ^ Мадхавапедди, Анил; Мортье, Ричард; Сохан, Рипдуман; Газаньер, Томас; Хэнд, Стивен; Диган, Тим; Маколи, Дерек; Кроукрофт, Джон (2010). «Выключение лампы: специализация программного обеспечения для облака» (PDF) . Материалы 2-й конференции USENIX по актуальным темам облачных вычислений .
  10. ^ Мартинс, Жоао; Мохамед, Ахмед; Райчу, Костин; Уичи, Фелипе (2013). «Включение быстрой и динамической сетевой обработки с помощью clickOS». Материалы второго семинара ACM SIGCOMM «Актуальные темы программно-конфигурируемых сетей» (PDF) . стр. 67–72. дои : 10.1145/2491185.2491195 . ISBN  9781450321785 . S2CID   12514038 .
  11. ^ Кюнцер, Саймон; Бадою, Влад-Андрей; Лефевр, Гюго; Сантанам, Шаран; Юнг, Александр; Выиграй, Готье; Солдани, Кирилл; Лупу, Костин; Теодореску, Штефан; Рэдукану, Кости; Бану, Кристиан (21 апреля 2021 г.). «Unikraft: быстрые специализированные юникеры простым способом» . Материалы шестнадцатой Европейской конференции по компьютерным системам . Онлайн-мероприятие Великобритания: ACM. стр. 376–394. arXiv : 2104.12721 . дои : 10.1145/3447786.3456248 . ISBN  978-1-4503-8334-9 . S2CID   241528818 .
  12. ^ «Мгновенный вызов одноядерных процессоров (v0.2)» . Магнус Скьегстад . Проверено 30 августа 2015 г.
  13. ^ «Зерг» . Зерг — демонстрация экземпляра по запросу . Проверено 30 августа 2015 г.
  14. ^ Мадхавапедди, Анил; Леонард, Томас; Скьегстад, Магнус; Газаньер, Томас; Шитс, Дэвид; Скотт, Дэвид; Мортье, Ричард; Чаудри, Амир; Сингх, Балрадж; Лудлам, Джон; Кроукрофт, Джон; Лесли, Ян (2015). «Джитсу: своевременный вызов одноядерных процессоров» (PDF) . 12-я конференция USENIX по проектированию и внедрению сетевых систем (NSDI) . ISBN  978-1-931971-218 .

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: 97C0F2D69162AAD37C692ACFC647EB76__1715663880
URL1:https://en.wikipedia.org/wiki/Unikernel
Заголовок, (Title) документа по адресу, URL1:
Unikernel - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)