Jump to content

vkernel

vkernel
Оригинальный автор(ы) Мэтью Диллон
Разработчик(и) Стрекоза БСД
Первоначальный выпуск DragonFly BSD § 1.8 (30 января 2007 г .; 17 лет назад ( 30 января 2007 г. ) ) [1] [2]
Репозиторий sys/vkernel.h , dev/virtual/vkernel/ , vm/vm_vmspace.c , …
Написано в С
Операционная система Стрекоза БСД
Тип Виртуализация на уровне ОС , виртуализированное ядро ​​пользовательского пространства
Лицензия Лицензия БСД
Веб-сайт vkernel(7)

Архитектура виртуального ядра ( vkernel ) — это операционной системы парадигма виртуализации , при которой код ядра может быть скомпилирован для запуска в пользовательском пространстве , например, для облегчения отладки различных компонентов уровня ядра. [3] [4] [5] в дополнение к виртуализации общего назначения и разделению системных ресурсов . Он используется DragonFly BSD в своей реализации vkernel, начиная с DragonFly 1.7. [2] впервые было обнаружено в сентябре 2006 года (17 лет назад) ( 2006-09 ) , [3] [6] и впервые выпущен в стабильной ветке вместе с DragonFly 1.8 в январе 2007 года (17 лет назад) ( 2007-01 ) . [1] [7] [8] [9] Долгосрочная цель, помимо упрощения разработки ядра, состоит в том, чтобы упростить поддержку подключенных к Интернету компьютерных кластеров без ущерба для локальной безопасности . [3] [4] Подобные концепции существуют и в других операционных системах; в Linux аналогичная концепция виртуализации известна как Linux пользовательского режима ; [10] [7] тогда как в NetBSD с лета 2007 года он был первоначальным фокусом инфраструктуры ядра ядра . [11]

Концепция виртуального ядра почти полностью противоположна концепции unikernel : с помощью vkernel компоненты ядра могут запускаться в пользовательском пространстве, что упрощает разработку и отладку ядра, поддерживаемые обычным ядром операционной системы; тогда как при использовании unikernel компоненты уровня пользовательского пространства могут запускаться непосредственно в пространстве ядра для дополнительной производительности, поддерживаемые аппаратным обеспечением без ОС или аппаратным стеком виртуализации. Однако как vkernels, так и unikernels можно использовать и для аналогичных задач, например, для автономного размещения программного обеспечения в виртуализированной среде с низкими накладными расходами. Фактически, ядро ​​NetBSD , первоначально предназначенное для запуска компонентов ядра в пользовательском пространстве, с тех пор также переместилось в пространство одноядерных систем (вслед за прозвищем Anykernel для поддержки обеих парадигм).

Концепция vkernel отличается от джейла FreeBSD тем, что джейл предназначен только для изоляции ресурсов и не может использоваться для разработки и тестирования новых функций ядра в пользовательской среде, поскольку каждая джейл использует одно и то же ядро. [7] (Однако DragonFly по-прежнему поддерживает тюрьму FreeBSD . [7] )

В DragonFly vkernel можно рассматривать как первоклассную компьютерную архитектуру , сравнимую с i386 или amd64, и, по словам Мэтью Диллона примерно в 2007 году, его можно использовать в качестве отправной точки для портирования DragonFly BSD на новые архитектуры. [12]

Ядро DragonFly поддерживается ядром хоста посредством новых системных вызовов , которые помогают управлять адресным пространством виртуальной памяти ( vmspace ). vmspace_create() и др., [3] [9] [13] а также расширения нескольких существующих системных вызовов, таких как mmap's madvisemcontrol. [9] [14] [15]

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

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

  1. Перейти обратно: Перейти обратно: а б «Примечания к выпуску DragonFly 1.8.0» . Драгонфлай БСД . 30 января 2007 г. Проверено 08 апреля 2019 г.
  2. Перейти обратно: Перейти обратно: а б Саша Вильднер (8 января 2007 г.). «vkernel, vcd, vkd, vke — архитектура виртуального ядра» . Прочее информационное руководство по DragonFly . Драгонфлай БСД .
  3. Перейти обратно: Перейти обратно: а б с д Мэтью Диллон (2 сентября 2006 г.). «Когерентность кэша, кластеризация и виртуализация ядра» . kernel@ (список рассылки). Драгонфлай БСД .
  4. Перейти обратно: Перейти обратно: а б Джереми С. Рид, изд. (10 февраля 2007 г.). «Ответы Мэтта Диллона о виртуальном ядре DragonFly» . Информационный бюллетень BSD .com . Рид Медиа.net. Архивировано из оригинала 24 февраля 2007 г.
  5. ^ Дэниел Лорх (10 июня 2009 г.). «Портирование файловой системы HAMMER в Linux» (PDF) . UML запускает ядро ​​Linux как процесс пользовательского пространства, аналогичный виртуальным ядрам DragonFly BSD… допускает быстрый цикл перекомпиляции-перезапуска и может легко отлаживаться с помощью стандартного GDB.
  6. ^ Мэтью Диллон (2006). "sys/vkernel.h" . Перекрестная ссылка BSD . Драгонфлай БСД .
  7. Перейти обратно: Перейти обратно: а б с д Дэвид Чисналл (15 июня 2007 г.). «DragonFly BSD: UNIX для кластеров?» . ИнформИТ . Прентис Холл Профессионал . Проверено 6 марта 2019 г.
  8. ^ Аггелос Экономопулос (29 марта 2010 г.). «Взгляд на виртуальное ядро ​​DragonFly (часть 1)» . LWN.net . Проверено 08 апреля 2019 г.
  9. Перейти обратно: Перейти обратно: а б с Аггелос Экономопулос (16 апреля 2010 г.). «Взгляд на виртуальное ядро ​​DragonFly (часть 2)» . LWN.net . Проверено 08 апреля 2019 г.
  10. ^ Коэн Вервлёсем (21 апреля 2010 г.). «DragonFly BSD 2.6: на пути к операционной системе со свободной кластеризацией» . LWN.net . Проверено 7 марта 2019 г.
  11. ^ Антти Канти (5 августа 2007 г.). «CVS-фиксация: src/sys/rump» . source-changes@ (список рассылки). НетБСД . Представляем RUMP — запускаемые метапрограммы пользовательского пространства
  12. ^ Джереми Эндрюс (6 августа 2007 г.). «Интервью: Мэтью Диллон» . Ядерная ловушка . Архивировано из оригинала 7 февраля 2012 г. Проверено 3 марта 2019 г.
  13. ^ Мэтью Диллон (2006). «vm/vm_vmspace.c § sys_vmspace_create()» . Перекрестная ссылка BSD . Драгонфлай БСД .
  14. ^ «madvise, posix_madvise, mcontrol — дать совет по использованию памяти» . Руководство по системным вызовам DragonFly . Драгонфлай БСД .
  15. ^ "керн/syscalls.master" . Перекрестная ссылка BSD . Драгонфлай БСД .

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


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