Разработчики проекта NetBSD объявили (http://blog.netbsd.org/tnf/entry/from_zero_to_nvmm) о создании нового гипервизора и связанного с ним стека виртуализации, которые уже включены в состав экспериментальной ветки NetBSD-current и будут предложены в стабильном релизе NetBSD 9. NVMM пока ограничен поддержкой архитектуры x86_64 и предоставляет два бэкенда для задействования аппаратных механизмов виртуализации: x86-SVM с поддержкой расширений виртуализации CPU AMD и x86-VMX для CPU Intel. В текущем виде возможен запуск на одном хосте до 128 виртуальных машин, каждой из которых может выделять до 256 виртуальных процессорных ядер (VCPU) и 128 Гб ОЗУ.NVMM включает драйвер, работающий на уровне ядра системы и координирующий доступ к аппаратным механизма виртуализации, и стек Libnvmm, выполняемый в пространстве пользователя. Взаимодействие компонентов ядра и пространства пользователя осуществляется через IOCTL. Особенностью NVMM, отличающей его от таких гипервизоров, как KVM, HAXM (https://github.com/intel/haxm) и Bhyve, является то, что на уровне ядра выполняется только минимальной необходимый набор обвязок вокруг аппаратных механизмов виртуализации, а весь код эмуляции оборудования вынесен из ядра в пространство пользователя. Подобный подход позволяет сократить объем кода, выполняемого с повышенными привилегиями, и снизить риск компрометации всей системы в случае атак на уязвимоcти в гипервизоре. Кроме того, заметно упрощается отладка и fuzzing-тестирование проекта.
При этом Libnvmm сам по себе не содержит функции эмулятора, а лишь предоставляет API, позволяющий интегрировать поддержку NVMM в существующие эмуляторы, например, в QEMU. API охватывает такие функции как создание и запуск виртуальной машины, выделение памяти гостевой системе, распределение VCPU. Для повышения безопасности и снижения возможных векторов атаки libnvmm предоставляет только явно запрошенные функции - по умолчанию сложные обработчики не вызываются автоматически и вообще могут не применяться, если без них можно обойтись. NVMM пытается обходиться простыми решениями, не впадая в усложнения и позволяя контролировать как можно больше аспектов работы.
Работающая на уровне ядра часть NVMM достаточно плотно интегрирована с ядром NetBSD, и позволяет добиться повышения производительности за счёт сокращения числа переключения контекста между гостевой ОС и хост-окружением. На стороне пространства пользователя libnvmm старается агрегировать типовые операции ввода-вывода и без необходимости не обращаться к системным вызовам. Система выделения памятью основана на подсистеме pmap, что позволяет вытеснять страницы памяти гостевых систем в раздел подкачки в случае нехватки памяти в системе. NVMM избавлен от глобальных блокировок и хорошо масштабируется, позволяя одновременно использовать разные ядра CPU для выполнения разных гостевых виртуальных машин.На базе QEMU подготовлено решение, использующее NVMM для задействования аппаратных механизмов виртуализации. Ведётся работа по включению подготовленных патчей в основной состав QEMU. Связка QEMU+NVMM уже позволяет (http://m00nbsd.net/4e0798b7f2620c965d0dd9d6a7a2f296.html) успешно запускать гостевые системы с FreeBSD, OpenBSD, Linux, Windows XP/7/8.1/10 и другими ОС на системах x86_64 с процессорами AMD и Intel (сам NVMM не привязан к определённой архитектуре, например, при создании соответствующего бэкенда сможет работать на системах ARM64). Из областей дальнейшего применения NVMM также отмечается sandbox-изоляция отдельных приложений.
URL: http://blog.netbsd.org/tnf/entry/from_zero_to_nvmm
Новость: https://www.opennet.dev/opennews/art.shtml?num=50518
Принципиально новый гипервизор скачать бесплатно без смс.Чем существующие-то не угодили?
А какие это существующие гипервизоры в NetBSD? Был Xen, но заброшен давно.
По-моему, в новости достаточно подробно описано, чем существующие не угодили.
> Чем существующие-то не угодили?
> Особенностью NVMM, отличающей его от таких гипервизоров, как KVM, HAXM и Bhyve, является то, что на уровне ядра выполняется только минимальной необходимый набор обвязок вокруг аппаратных механизмов виртуализации, а весь код эмуляции оборудования вынесен из ядра в пространство пользователя. Подобный подход позволяет сократить объем кода, выполняемого с повышенными привилегиями, и снизить риск компрометации всей системы в случае атак на уязвимоcти в гипервизоре.
> весь код эмуляции оборудования вынесен из ядра в пространство пользователяА qemu это не тоже самое, с ускорялкой kvm, которая как раз на уровне ядра работает и за счет прямого использования проца и прочего железа повышает производительность вм до уровня хоста, 2003 год в netbsd наступил, поздравляю.
судя по описанию проблемы - недостаточно тормозили из-за переноса всего кода из ядра в userspace.
А с ring0 код чудесным образом начинает работать быстрее?
при меньшем числе context-switch'ей - да, быстрее.
Очередной пердежь анонимуса. Ну давай расскажи мне какие на бсд есть юзабельные гипервизоры.
Кроме bhyve, xen и qemu?
qemu - не гипервизор
собственно, ентот вот гипервизор на qemu почти всю работу и перекладывает.
NeVerMindMe
> на уровне ядра выполняется только минимальной необходимый набор обвязок вокруг аппаратных механизмов виртуализации, а весь код эмуляции оборудования вынесен из ядра в пространство пользователя. Подобный подход позволяет сократить объем кода, выполняемого с повышенными привилегиями, и снизить риск компрометации всей системы в случае атак на уязвимоcти в гипервизореи обычно проиводит к заметным потерям в производительности. да и так-ли уж страшны атаки в гипервизоре при дырявых процессорах?
>обычно проиводит к заметным потерям в производительностида, но есть надежда, что разработчики знают, что делают и смогут избежать накладных расходов
разработчики netbsd? Не смешите.
> и обычно проиводит к заметным потерям в производительности. да и так-ли уж страшны атаки в гипервизоре при дырявых процессорах?Разработчики NetBSD долго запрягают, но быстро едут. Это в линуксе тяп-ляп-тормозит-фпродакшон и перед дядей из корпорации отчитались.
Это да, красоту решений в линуксе мы все видели на примере netfilter, который больше напоминает набор написанных левой индусской пяткой грязных хаков, чем продуманную систему.
судя по тексту, ты с netfilter не соприкасался последние лет 10 не меньше
наоборот. Десять лет назад там был еще вполне прямой и понятный код.Более того, написать собственный модуль мог любой деревенский дурачок (что пару раз на моей памяти и случалось), если осиливал разобраться в протоколе. Вот gre и ipsec'у - не повезло.
С тех пор ошибки не исправляются, функционал не добавляется а только ломается, ну а что вы хотите, когда в майнтейнеры прорвался gnu-активист с тремя комитами в readme.md ?
Теперь вот и вовсе пришли стильные-модные-молодежные, и давай ломать что до них построили.
(нет, что что-то исправят или восстановят функционал 2000го года - не надейтесь, разумеется, Оно не для этого приперлись)
красоту решений bdsm'щиков мы видим на примере простыней ipfw, совершенно нечитаемого и неуправляемого синтаксиса pf, и то и другое не работает без кривого и уродливого userspace, который для pf еще и ниасилили написать, видимо, это не так-то легко и просто как для ipchains, если протокол чуть посложнее ftp.
> совершенно нечитаемого и неуправляемого синтаксиса pfсэр, Ваша ирония чересчур располнела, ей непременно надо похудеть, ибо она сюда не влезает.
> Разработчики NetBSD долго запрягают, но быстро едут.USB3 в твоём обожаемом NetBSD давно появился? как у них вообще с поддержкой устройств? по принципу "лишь то что наконец осилили а остальное нам не нужно"? подумай прежде чем говорить
А у вас гостевая ОС крутится в ядре, да? Там есть возможность обойтись без передачи данных от ядра к юзерспейсу и обратно?
сначала научись читать. статья (как и моё замечание) про гипервизор, а не про гостевую ОС
Служебный I/O самого гипервизора - это прах по сравнению с гостевой ОС. Вполне можно пойти на небольшое увеличение оверхеда ради безопасмности.
по сути - поленились там и недоделали сям. вот и ограничились API совсместимым с qemu и вынесли часть в пространство пользователя. и всё лишь для твоей воображаемой безопасности. вот ведь новинка! упасть не сидеть на стуле
там хотя бы есть возможность не _эмулировать_ куемой переключение контекстов и изоляцию ядра от юзерспейса. Конечно же это работает быстро, прям очень, ага.
Больше гипервизоров богу гипервизоров!Но вообще я за - люблю когда умные люди экспериментируют.
Вот это новость! А я думал, что NetBSD уже почила в бозе.
Иногда ее достают. Протирают. Сдуваю пыль. Тыкають в нее палкой.
А OpenSSH вы тоже протираете пылью? И настолько он уже устарел и не используется никем? А ведь пришёл в linux от OpenBSD.
ничего что до его пришествия мы неплохо жили с ssh Tatu Ylonen'а - и, вероятно, жили бы и дальше, если бы охочие до халявы ящерки не поломали ему бизнес?
Ой тля поломали ему бЫзнесс ... щазз заплАчу :)
Ты ещё про BitKeeper поплачь, мол подлый шведофинн сломал весь бЫзнесь :)Вон Сысоеву чего то никто бЫзнессь отломать не может, хотя тужатся многие и часто :)
А рецепт прост - надо не только купончики стричь но и ... не поверишь! - ещё и работать надо!
нет, биткипер это как раз наоборот. Закрытый код, ограничения на разработчиков и преследование конкурентов - самовыпилился из-за черезмерной жадности, а то бы Линус и по сей день никуда с него не слез.Йлонен никому не мешал делать форки или вообще конкурирующие проекты - за что и поплатился. А владелец биткипера вроде как раз и не банкрот.
> Вон Сысоеву чего то никто бЫзнессь отломать не может, хотя тужатся многие и часто :)
Вообще-то с добрым утром - они продались F5.
> А рецепт прост - надо не только купончики стричь но и ... не поверишь! - ещё и работать надо!угу, закрыть половину кода (например, нормальную статистику, нормальное управление сервером) - и работать, две с половиной штуки зеленых за саппорт вида мы о тебе слышали - вот и заработались.
А баги пусть любители бесплатного бесплатно исправляют, поди плохо.А Йлонен был лох, выпустил код под пермиссивной лицензией, причем честно-честно переписал его практически с нуля во второй версии, чтобы не обвиняли в воровстве чужого труда (ну и в общем пора было - мир к тому моменту изменился, ssh1 уже не был настолько хорош), а не быстренько допилил поверх в режиме модного ныне opencore - лохам устаревший и ненадежный протокол, правильным ребята за денежку - современный.
1. Тату сам и отдал исходники OpenSSH, там до сих пор его копирайты в коде.2. Так Тату и продаёт свой ссш сервер, криптоаудитор и ещё какой то софт который этот ссш реализует.
А проблемы там с тем, что по качеству оно отстало от опенсорца и в том, что не у всех програмистов получается принимать правильные бизнес решения. У того же Сысоева бизнес управлением другие люди занимаются а не он сам.
> Тату сам и отдал исходники OpenSSHон как раз спохватился и попытался изменить лицензию - но ничто не помешало авторам форка просто взять версию постарее.
> Так Тату и продаёт свой ссш сервер
давным-давно он ничего уже не продает, загажена поляна, никто это не покупал. Функционал используется в каких-то других проектах, но тоже непонятно, покупает ли их кто вообще.
> А проблемы там с тем, что по качеству оно отстало от опенсорца
какому качеству, вы о чем... проблема была ровно одна - на основном рынке, серверов под юникс-like, места для платной не включаемой ни в какие дистрибутивы программы не осталось. Все зохавал openssh.
А для винды оно ненужно, потому что word не запускается.
В начале 200х криптография была уделом фриков. Если бы тогда ссш не ушёл в опенсорц он бы просто сдох как протокол.ССШ сервер и всякие клиенты к нему вообщето покупали и наверное даже щас покупают в каких то количествах. Там есть всякие фичи типа х509 авторизации и прочего, чего в опенсорце никто не пилит за ненадобностью. Это уже давно не основной продукт который кормит.
Ещё контора продаёт платформу для записи ссш, рдп, тцп и потом это можно смотреть как видео (кроме тцп), ну там всякие ещё фишки с контролем доступа.
Отдельно манагемент ключей автоматический.
и тп...В общем у них и сейчас на сайте прекрасно видно чем они торгуют, и на хлеб с маслом ему уж точно хватает.
Порасказывал бы инсайды но не стану - нда. Самого видел, в офисе у них был, код тоже видел и писал.Я именно так вижу ситуацию: чел создал нишу и теперь кормится с её кусочка. Как умеет - так и получается.
> для винды оно ненужноКрум Григоров с Вами вряд ли согласится...
> Все зохавал openssh.Вот ужас, вероломное добро зохавало рынок и бедному злу не осталось места.
вы в слове г0вн0 сделали три опечатки. Сколько уязвимостей с remote root вы знаете в ssh2? В ssh1 была одна, причем такого рода, что не вляпаться можно было только по случайности - поскольку это изначально дырявая системная функция, освященная стандартами 80х и традицей.
А сколько в open - я давно со счета сбился, тем более что еще каждую уязвимость в openssl надо разбирать, не приложима ли она и к нему.И вместо "вероломное" надо было написать просто "нищее, жадное и не по умениям самоуверенное".
Желание паталогического раба платить денежки за закрытый продукт, в котором уязвимости не публикуют и душа спокойна в принципе понятно.
желание мальчика-де6ила обоссать то, что недоступно его представлениям о мире - тоже вполне понятно.Код ssh2 был открытый, в смысле - исходники доступны, да, собственно, как-то и не принято тогда было тянуть бинарники откуда попало, а не в смысле халява, и бесплатный для личного пользования (с некоторыми оговорками и для неличного, но нежелание паталогоически жадных и бестолковых детишек платить даже за то что не из их кармана и на чем зарабатывает дядин бизнес - тоже понятно).
теперь вот имеем что имеем - плохой и уязвимый код, пишущийся деятельными иди...запрещенное на опеннете слово, и опирающийся на совершенно непредназначенную первоначальным автором для таких целей плохую и уязвимую "секьюрити" библиотеку, зато халява, все как вы любите.
Мешать в одну кучу халяву и свободу это просто свинство. И да, дядю который пытается ограничить свободу можно только обоссать. Тебе-то, паталогическому рабу, свобода неведома, вот ты и думаешь что всё дело только в цене, а от твоих оправданий ("свобода для личного", "с оговорками", ох) воняет торгашнёй.
А ничего что новость об НетБсде, а не об опен? Ссш из опенБзди к нам пришёл и она (опен) в отличии от нет все ещё шевелится
Это не важно.
Важно показать какой ты умный. Ну или типа умный.
В последнее время новости из мира BSD не могут не радовать! Система куда более юзабильна чем всякие линуксы...
> Система куда более юзабильна чем всякие линуксыв самом деле? ждём BSD на мобильных телефонах
да ты netbsd хотя бы на десктопе своем загрузи, юзабельно-преюзабельно.
а тэг "сарказм" в контексте BSD на мобильниках ты не заметил?
>да ты netbsd хотя бы на десктопе своем загрузиНе вижу проблем, с неё и пишу.
Неужели хоть на каком-то железе работает это чудо? Там же с драйверами полная беда.
>Там же с драйверами полная бедаДа нормально NetBSD работает. Вот с принтерами да, проблематично (но их и для Линукса зачастую вендоры делают, а не сообщество), а так полёт нормальный.
все остальные вендоры пишут и предоставляют драйвера своих устройств для NetBSD? пожалуйста, назови хоть одного такого (у кого драйвера для современной NetBSD), он тут-же станет моим кумиром
Бывают у людей иногда проблемы с сетевыми картами, нет естественно драйверов от Н(е)видии, но в остальном в плане устройств всё работает нормально, куда бы я эту систему не ставил.
на IPhone посмотри повнимательнее...
там остался только огрызок от mach ядра
остальное BSD (много FreeBSD, остальное откуда попало)
> на IPhone посмотри повнимательнее...нет желания подобный хлам рассматривать вообще
> там остался только огрызок от mach ядра
> остальное BSD (много FreeBSD, остальное откуда попало)да, по части user-space. но, надеюсь, ты в курсе, что пока нет возможности установить NetBSD (или FreeBSD) на IPhone. а так они (BSD) конечно развиваются. процесс разложения трупа в могиле тоже можно назвать развитием