Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Сегодняшняя новость уже успела вызвать неслабый ажиотаж в некоторых кругах. Шутка ли — Microsoft заявила о том, что вносит свой вклад в ядро Linux на условиях General Public License (GPL) 2. Речь идёт, ни много ни мало, о примерно двадцати тысячах строках кода.
Открыты исходные тексты служб интеграции для Hyper-V, и драйверы для синтетических устройств внесены на рассмотрение разработчиков Linux для включения в следующие версии ядра. В разультате службы интеграции Hyper-V станут доступны как в будущих версиях популярных дистрибутивов Linux, так и вообще в любых системах — при сборке ядра с соответствующими условиями.
Что было раньше?
Для того, чтобы правильно понять то, о чём было объявлено сегодня, потребуется разобраться и в том, что же было до того. И начать придётся с понимания того факта, что это уже вторая версия Служб интеграции Hyper-V для Linux.
Первая версия Служб интеграции Hyper-V для Linux | Вторая версия Служб интеграции Hyper-V для Linux |
---|---|
Разработана компанией Citrix | Разработана Технологическим центром открытых исходных текстов Micorsoft (Microsoft Open Source Technology Center, OSTC) |
Поддерживает только первую версию Hyper-V (роль виртуализации в Windows Server 2008 и Hyper-V Server 2008); | Поддерживает обе версии Hyper-V.
первую версию Hyper-V:
|
Требует использования расширений Xen для ядра Linux, так как работает через адаптер гипервызовов (Hypercall Adapter). | Не требует использования расширенй Xen для ядра Linux. Это — одна из причин заявленного увеличения производительности второй версии. |
Доступна для использования в производственной среде. | Опубликована предварительная версия (см. ниже). |
Что стало теперь?
Сегодня Microsoft опубликовала дистрибутив второго Кандидата для выпуска (Release Candidate 2, RC2) второй версии Служб интеграции Hyper-V для Linux. Кроме того, корпорация предложила его исходный текст для включения в ядро Linux. Фактически речь идёт об одном и том же коде, представленном в двух вариантах для двух разных аудиторий и целей.
Готовый дистрибутив | Исходный текст |
---|---|
Предназначен для администраторов | Предназначен для разработчиков |
Опубликован для загрузки на сайте Microsoft Connect | Предложен для включения в ядро Linux и расположен в дереве исходных текстов по адресу «/drivers/staging/hv». |
Предназначен для использования только с дистрибутивами, которые поддерживаются Microsoft по условиям соглашений, заключённых ранее с Novell и Red Hat.
|
Предназначен для свободного использования в любых дистрибутивах Linux, но не предполагает никакой поддержки со стороны Microsoft. Все обязательства по поддержке ложатся на поставщика дистрибутива, включающего Службы интеграции в свой продукт. |
Со временем будет вытеснен кодом Служб интеграции, который будет добавлен в ядро соответствующих дистрибутивов. | Со временем будет добавлен в большинство популярных дистрибутивов. |
Но зачем?
Вы можете поинтересоваться — какая в этом выгода для Microsoft. Ведь Linux всегда был конкурентом Windows — так зачем же за свой счёт облегчать жизнь как разработчикам, так и пользователям конкурирующего продукта?
Дело в том, что эпоха ожесточённой конкуренции на рынке ОС уже фактически в прошлом. Ниши чётко поделены, и по собственной статистике Microsoft в около 80% виртуальных машин запущены различные версии Windows. Для того, чтобы изменить баланс сил, потребовалось бы приложить огромные усилия. Они в любом случае не окупятся за счёт тех долей процента, которые можно было бы выиграть тем или иным образом.
Зато виртуализация — это сравнительно молодая и очень быстро растущая отрасль. И вот здесь конкуренция даёт о себе знать очень остро. Поэтому представить условия для установки любых продуктов поверх своего решения — это очень хороший ход.
Теперь получается, что в недалёком будущем практически любая версия Linux прямо «из коробки» будет отлично работать в виртуальных машинах Microsoft. Во-первых, это даст сильное преимущество перед конкурирующими решениями для виртуализации, если их разработчики не смогут быстро предоставить такое же удобство своим пользователям. А во-вторых, это страхует Microsoft против возможных упрёков во включении служб интеграции в состав своих собственных ОС, что тоже немаловажно.
Но как?
Некоторые технические и организационные подробности для тех, кому близка тема свободных ОС. Текущая версия Служб интеграции Hyper-V для Linux включает три драйвера.
- VMBus (высокопроизводительная шина данных для обмена информацией между ВМ и родительской системой);
- синтетический сетевой контроллер;
- синтетический контроллер дисков с поддержкой быстрой загрузки (FastPath).
Вообще говоря, Linux может работать в виртуальных машинах Hyper-V и без этих драйверов, что уже было неоднократно подтверждено различными энтузиастами. Разница только в производительности — ведь без драйверов синтетических устройств вы сможете использовать только их эмулируемые аналоги. В частности, придётся в явном виде добавить в ВМ эмулируемую сетевую карту, а подсистема работы с дисками хоть и не потребует каких-то изменений в конфигурации ВМ, но просто будет вынуждена работать через обычные драйверы.
Код, предложенный Microsoft, будет добавлен в ядро Linux версии 2.6.32 через Linux Driver Project. Как следует из названия, это команда разработчиков, которые занимаются добавлением и поддержкой драйверов в ядре Linux. Если быть ещё более точным, то со стороны сообщества Linux с программистами Micorosft тесно сотрудничал Грег Кроа-Хартман (Greg Kroah-Hartman).
Более того, Microsoft берёт на себя обязательства и в дальнейшем поддерживать и улучшать код служб интеграции. Для чего специально выделены два сотрудника из лаборатории Microsoft, расположенной в Кэмбридже, штат Массачусетс. Хэнк Джансен (Hank Janssen) и Хайанг Янг (Haiyang Zhang) официально назначены специалистами по поддержке (maintainer) проекта служб интеграции Hyper-V для Linux. В планах по дальнейшему развитию значится добавление таких функций, как:
- симметричная многопроцессорность (SMP). Сегодня в Hyper-V поддерживаются только ВМ с Linux, использующие один вирутальный процессор;
- дополнительные службы, а именно:
- завершение работы гостевой ОС по сигналу из родительской системы (Shutdown);
- обмен парами ключей и значений (KVP Exchange).
По мере завершения работы над этими функциями их код будет так же направляться для включения в ядро Linux.
Важно понимать, что ещё одно популярное дополнение, которое является частью Служб интеграции для Windows, не входит в комплект Служб интеграции для Linux. Речь идёт о драйвере для мыши, также известном как InputVSC. Он позволяет переносить указатель мыши между окнами виртуальной машины и рабочим столом родительской системы без необходимости предварительно извлекать его с помощью клавиатурной комбинации. Также он решает распространённую проблему, которая заключается в том, что мышь вообще не работает в окне подключения к виртуальной машине (VMConnect), открытом через сеанс «Удалённого рабочего стола» (Remote Desktop). Этот драйвер разработан отдельно компанией Citrix в рамках «Project Satori». Вы можете загрузить его на сайте Служб интеграции Citrix для Hyper-V.
Дополнительная информация
- Официальный пресс-релиз: Microsoft Contributes Linux Drivers to Linux Community;
- видеозапись интервью с Томасом Ханраханом (Tom Hanrahan), директором Технологического центра открытых исходных текстов Micorsoft на сайте Девятого канала: Microsoft Contributes Code to the Linux Kernel;
- Microsoft Releases Device Driver Code to the Linux Community;
- More on the Hyper-V Linux Integration Components.
Comments
Anonymous
January 01, 2003
Дело в том, что проверка английской орфографии помечает любые русские слова как неизвестные. В результате толку от неё никакого, и я её отключаю совсем. Таким образом иногда проскакивают ошибки в любых словах — как русских, так и английских.Anonymous
January 01, 2003
The comment has been removedAnonymous
January 01, 2003
Статью писал я. Спеллчекер в WLW есть. Но в английской версии он не проверяет русский язык, а пользоваться русифицированным ПО мне не позволяет религия. Ошибки допустил не нарочно, хотя соглашусь, что статистика забавная. Просто «Linux» — не самое часто употребляемое слово в моём лексиконе, поэтому рука не набита. Но за замечания спасибо. Впредь постараюсь быть внимательнее. Насколько это вообще возможно при написании заметок в четыре часа утра.Anonymous
January 01, 2003
Антон, вы к кому обращаетесь конкретно, и чего именно вас задело? Где вы нашли что0то про издевательства?Anonymous
January 01, 2003
Увы, ОО не умеет писать на блоги. А в Writer нет спелчекера.. Поправил )Anonymous
January 01, 2003
Если кому-то интересно, Линус Торвальдс дал интервью по этому поводу:Anonymous
July 22, 2009
Да уж, шума действительно много... Только почему-то немногие решили хоть чуть-чуть разобраться в сути данного события... Вот один из примеров: http://habrahabr.ru/blogs/linux/64986/Anonymous
July 22, 2009
Петр, растолкуйте в чем та самая суть? :) Из вашей ссылки я ничего не понял. http://lkml.org/lkml/2009/7/20/167 Тут больше по делу.Anonymous
July 22, 2009
The comment has been removedAnonymous
July 22, 2009
В тексте 3 опечатки, поправте Lunux->Linux. Буковки рядом =)Anonymous
July 22, 2009
К афтору статьи. если с орфографией проблемы, установите ООо 3 проверьте в нем. ведь не на заборе статью пишите, а как бы сообществу пытаетсь рассказать какие в Microsoft'e хорошие люди и тут же осокорбляете его.Anonymous
July 22, 2009
Ну проверить текст на орфографию можно и в нем) и спелчекер имеет ФФ или религия не позволяет? :) ЗЫ: Спасибо.Anonymous
July 22, 2009
Антон, у меня нету ООо, но спелчекеры не подчеривают Lunix, ибо такое слово есть. http://en.wikipedia.org/wiki/LUnix :)Anonymous
July 22, 2009
2 Dmitry увы, но слово было Lunux, а не Lunix. 2 Artem Linux ни разу не русское слово, и да спасибо за улучшение качества метериала, из-за этого плохо ни кому не будет.