Эксперимент по использованию бинарных модулей ядра NetBSD в Linux

Разработчики проекта NetBSD продолжили эксперименты с запуском компонентов ядра Linux во внешних окружениях. После успешного запуска ядра системы под управлением web-браузера, была предпринята попытка обеспечения работы модулей ядра NetBSD в Linux. В качестве полезного с практической стороны использования модулей NetBSD приведён пример задействования в Linux модуля с реализацией файловой системы FFS, а также других специфичных возможностей NetBSD, не поддерживаемых в Linux.

В проекте задействованы недавно внесённые в подсистему RUMP (Runnable Userspace Meta Program) улучшения, позволяющие запустить собранное в режиме RUMP ядро NetBSD на платформах, отличных от NetBSD. После небольшой доработки удалось обеспечить запуска rump-ядра в форме пользовательского процесса в Linux и реализовать функции загрузки модулей, собранных для ядра NetBSD. Для демонстрации разработки подготовлено небольшое приложение, запускающее в Linux ядро NetBSD и позволяющее монтировать разделы с файловой системой FFS, используя для работы с ними модуль ffs.kmod из состава NetBSD.

Напомним, что режим RUMP даёт возможность организовать выполнение частей ядра NetBSD в адресном пространстве пользователя. В частности, RUMP позволяет в виде оформленного в стиле микроядра серверного процесса выполнять в пространстве пользователя драйверы, изначально работающие на уровне монолитного ядра системы. По сути rump-ядро является частично паравиртуализированным ядром, запускаемым поверх высокоуровневного гипервизора. Указанная возможность позволяет легко портировать NetBSD под различные системы, так как для обеспечения работы rump-ядра достаточно подготовить для платформы только соответствующий небольшой гипервизор.

Источник:
http://www.opennet.ru/opennews/art.shtml?num=35602

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>