Опубликована вторая версия Служб интеграции Hyper-V для Linux


Сегодняшняя новость уже успела вызвать неслабый ажиотаж в некоторых кругах. Шутка ли — 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:



    • роль виртуализации в составе Windows Server 2008 Standard, Enterprise и Datacenter;


    • Microsoft Hyper-V Server 2008;


  • вторую версию Hyper-V — в Release Candidate (RC):



    • роль виртуализации в составе Windows Server 2008 R2  Standard, Enterprise, and Datacenter;


    • Microsoft Hyper-V Server 2008 R2.
  • Требует использования расширений 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.



    • SUSE Linux Enterprise Server 10 SP1, 10 SP2 и 11 (x86 и x64);

    • Red Hat Enterprise Linux 5.2 и 5.3 (x86 и x64).
    Кроме того, Microsoft работает с 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.


    Дополнительная информация

    Comments (14)

    1. Pronichkin says:

      Дело в том, что проверка английской орфографии помечает любые русские слова как неизвестные. В результате толку от неё никакого, и я её отключаю совсем. Таким образом иногда проскакивают ошибки в любых словах — как русских, так и английских.

    2. Alex A says:

      Суть шума в том, что некие линуксоиды, MS-ненавистники, кипят от того, что Microsoft пищет свои коды так как принято в Microsoft, а не так как они привыкли. Это ничего не изменит, разве что коммьюнити реально перепишет драйверы.

      Суть самого события Артём изложил выше. Кроме факта "открытого кода" и поддержки RedHat, стоит понимать, что включение драйверов в ядро позволит использовать синтетические устройства Hyper-V, включая шину VMBus и в других дистрибуциях линукс.

    3. Pronichkin says:

      Статью писал я. Спеллчекер в WLW есть. Но в английской версии он не проверяет русский язык, а пользоваться русифицированным ПО мне не позволяет религия.

      Ошибки допустил не нарочно, хотя соглашусь, что статистика забавная. Просто «Linux» — не самое часто употребляемое слово в моём лексиконе, поэтому рука не набита.

      Но за замечания спасибо. Впредь постараюсь быть внимательнее. Насколько это вообще возможно при написании заметок в четыре часа утра.

    4. Alex A says:

      Антон, вы к кому обращаетесь конкретно, и чего именно вас задело?

      Где вы нашли что0то про издевательства?

    5. Alex A says:

      Увы, ОО не умеет писать на блоги. А в Writer нет спелчекера.. Поправил )

    6. Alex A says:

      Если кому-то интересно, Линус Торвальдс дал интервью по этому поводу:

    7. Petr Karpenko says:

      Да уж, шума действительно много… Только почему-то немногие решили хоть чуть-чуть разобраться в сути данного события… Вот один из примеров: http://habrahabr.ru/blogs/linux/64986/

    8. Dmitry says:

      Петр, растолкуйте в чем та самая суть? 🙂 Из вашей ссылки я ничего не понял.

      http://lkml.org/lkml/2009/7/20/167

      Тут больше по делу.

    9. anton says:

      Lunux — это издевательство? фу на вас, перечитывайте хотя бы что пишите.

    10. Dmitry says:

      В тексте 3 опечатки, поправте Lunux->Linux. Буковки рядом =)

    11. anton says:

      К афтору статьи. если с орфографией проблемы, установите ООо 3 проверьте в нем. ведь не на заборе статью пишите, а как бы сообществу пытаетсь рассказать какие в Microsoft’e хорошие люди и тут же осокорбляете его.

    12. anton says:

      Ну проверить текст на орфографию можно и в нем) и спелчекер имеет ФФ или религия не позволяет? 🙂

      ЗЫ: Спасибо.

    13. Dmitry says:

      Антон, у меня нету ООо, но спелчекеры не подчеривают Lunix, ибо такое слово есть.

      http://en.wikipedia.org/wiki/LUnix

      🙂

    14. anton says:

      2 Dmitry

      увы, но слово было Lunux, а не Lunix.

      2 Artem

      Linux ни разу не русское слово, и да спасибо за улучшение качества метериала, из-за этого плохо ни кому не будет.

    Skip to main content