Контакты

Parallels Desktop: как мы заставляли подружиться Мак и Винду. Parallels Desktop: как мы заставляли подружиться Мак и Винду Как в parallels перетаскивать файлы

To provide Parallels USB passthrough, you just need to:

  1. Install USB Network Gate on the server machine (the PC with a USB device attached).
  2. Share the device over network.
  3. Install the software on Parallels Desktop, start the app, and click ‘Connect’ next to the required USB device. This is it! Now, the shared USB peripheral is connected to your virtual machine and displayed in its Device Manager.

This way, with the help of USB Network Gate Parallels can connect to USB over Ethernet or any other network.

Versatile solution to forward USB to virtual environment

Whether you use Parallels, VMware, Citrix XenDesktop, VirtualBox, or , USB Network Gate will help you redirect any remote USB peripheral to your guest operating system.

Think of the possibilities:

  • The software lets forward a limitless number of USB devices over any network, including Wi-Fi, Ethernet, and the Internet;
  • supports cross-platform connections between different operating systems (Windows, Mac, Linux);
  • offers the traffic encryption option that guarantees security of your connections, and more.

With USB Network Gate you can not only provide Parallels remote USB access but also connect to your valuable USB devices over network from a wide range of other virtualization solutions.

Обзор Parallels Desktop 11 | Введение

Последний материал об одном из самых распространенных средств виртуализации датирован аж весной 2010 года. За это время Parallels Desktop существенно развился. Растущая популярность техники Apple среди российских пользователей способствует и росту популярности этого программного продукта.

Parallels Desktop был первым ориентированным на обычного пользователя приложением виртуализации для OS X. Поэтому доминирование на рынке решений для виртуализации в программной среде Apple естественно. Хотя в какой-то момент VMware пыталась оспорить первенство, однако со временем доминирование Parallels в этом сегменте только укрепилось. А VirtualBox, также поддерживавший Mac OS X в качестве host-системы, солидно отстает до сих пор, как в юзабилити (что очень важно для пользователей Apple), так и в функциональном плане.

Сегодня мы расскажем об очередной версии Parallels Desktop за номером 11. Будет интересно увидеть и продемонстрировать прогресс в развитии приложения. В качестве платформы мы будем использовать Mac Book Pro (Core i5 2.4 ГГц, 4 Гб ОЗУ, SSD 256 Гб).

Обзор Parallels Desktop 11 | Что нового?

Сейчас в рамках каждой версии происходит дополнительное сегментирование продукта. Наряду с версией для рядовых пользователей есть редакция Pro, включающая функции для профессионального использования, например, разработчиками программного обеспечения, дизайнерами и т.д. А также выделено бизнес-решение, Parallels Desktop Business, где внедрено централизованное управление лицензиями на приложение в рамках компании.

Мы сегодня рассмотрим редакцию Pro нового Parallels Desktop 11 .

Прежде чем приступить к обзору, ознакомимся с нововведениями, которыми разработчики порадовали пользователей в новой версии.

Наиболее актуальным является поддержка последних версий популярных операционных систем - Windows 10 и Mac OS X El Capitan. Если последнюю многие пользователи Apple получат в качестве обновления и будут иметь возможность использовать передовые разработки в любом случае, то скорая поддержка свежей операционной системы от Microsoft является как раз тем, ради чего Parallels Desktop и приобретается. Пользователь получает все прелести новой Windows 10, в частности и возможность использовать голосовую помощницу Cortana.

Сервисы геолокации теперь будут работать в гостевой ОС, используя GPS хост. Для печати также больше нет необходимости настраивать принтер в виртуальной машине - вызывается диалог печати Mac OS X и распечатка идет в контексте хостовой машины.

Заметные изменения были включены в редакцию Pro новой версии Parallels Desktop. Так эта версия содержит интегрированные инструменты отладки Visual Studio. Разработчики программного обеспечения, смогут запускать в гостевых операционных системах Microsoft приложения для отладки. Новый Parallels Desktop 11 теперь поддерживает создание виртуальных машин под контейнерную технологию Docker. Подобные технологии, насколько мы можем судить, редко применяются среди отечественных разработчиков. Хотя это эффективная и простая альтернатива клонированию множества виртуальных сред для тестирования приложений.

Пользователь теперь может быстро задать оптимальную конфигурацию виртуальной машины с Windows при ее создании, указав цели, для которых она будет использоваться. Среди таких целей могут быть разработка или тестирование программного обеспечения, офисные задачи, игры, проектирование и дизайн.

Также режим Pro отличают расширенные инструменты настройки сети, позволяющие проводить тестирования сложных сетевых сценариев.

О значительных успехах разработчиков заявляется в части повышения производительности работы (в среднем на 25%), скорости запуска приложений и работы гостевых операционных систем. Также много внимания в новой версии уделено эффективности расходования заряда батареи при работе с Parallels Desktop 11 на ноутбуке. Даже добавлен специальный режим Travel Mode, в котором отключаются ресурсоемкие задачи для продления жизни от батареи.

В обзоре мы коснемся основных нововведений.

Обзор Parallels Desktop 11 | Центр управления

Управление виртуальными машинами осуществляется из окна Control Center. Здесь представлен не просто список виртуалок с миниатюрами, отражающими их текущее состояние, но и предоставлен доступ к настройкам каждой, функциям отладки. В правом верхнем углу окна можно изменить вид списка (от подробного к более компактному) и вызвать мастер создания новой виртуальной машины.

Расширенный и …



компактный список виртуальных машин с пиктограммами, отражающими состояние каждой



Мастер создания новой виртуальной машины

Как можно видеть, отдельные подготовленные варианты виртуальных машин размещены ниже в виде пиктограмм. Каждый из этих вариантов мы обязательно опробуем далее.

Обзор Parallels Desktop 11 | Windows 10

Создать виртуальную машину с Windows 10 вы сможете либо обновив Windows 7/8/8.1, либо установив заново из iso-образа или с внешнего носителя, например с USB флэшки. При этом обновление предыдущих версий и установка с ISO являются наиболее простыми способами получить Windows 10, а вот в процессе инсталляции с USB есть некоторые нюансы, описанные в отдельной ветви FAQ на сайте разработчика.

Мы решили установить именно с USB-носителя, чтобы проверить возможные сложности. Сначала создается виртуальная машина через мастер без указания источника. Далее в настройках виртуалки указывается USB-носитель, с которого планируется произвести установку.


Только после этого запускается виртуальная машина. Возможно, установку не удастся запустить с первого раза - система может не сразу найти USB-носитель.

В таком случае придется осуществлять перезагрузку виртуалки и установка начнется в нормальном режиме. С чем связана необходимость таких манипуляций не ясно, вероятно, процесс будет упрощен в следующих обновлениях приложения.

По завершению установки перед нами будет стандартный рабочий стол Windows 10. Для использования всех функций Parallels Desktop 11 необходимо проинсталлировать в гостевой операционной системе пакет Parallels Tools (установка запустится автоматически при первом запуске). Запустить установку просто - необходимо выбрать соответствующий пункт в меню Parallels. После этого становится возможным настроить максимально комфортную рабочую среду, переключение между гостевой и хостовой операционными системами вызывало минимальную смену контекста. Так, например, можно расшаривать папки. На скриншоте на рабочем столе Windows 10 расположены файлы с рабочего стола нашего тестового Mac Book Pro.

Оконный режим позволяет выполнять изменение размеров окна, адаптируя резрешение виртуального рабочего стола без каких-либо визуальных искажений. А в полноэкранном режиме вы в полной мере почувствуете себя в среде Windows. Переключение между режимами доступно в контекстном меню Parallels Desktop 11 либо в правом верхнем углу окна виртуальной машины (в случае оконного режима).

Остановимся на специализированном режиме Coherence. Это режим полной согласованности между средой Mac и Windows - вы продолжаете работать в Mac OS X, а гостевая ОС как бы "растворяется". Вы не видите ни рабочего стола, ни стандартной панели задач. Запущенные приложения Windows оформлены в стилистике OS X и переключение между приложениями мира Apple и Microsoft происходит прозрачно.


Единственное, что напоминает нам о гостевой ОС - это сообщение о необходимости активировать запущенную "прозрачно" Windows 10.



Процесс установки браузера Chrome в Windows 10 в режиме Coherence



Браузер Chrome, запущенный в виртуальной машине, и меню Parallels Desktop.

Все приложения и системные иконки, присутствующие в системной панели Windows, перебираются в панель Mac OS X в верхней части экрана. Через меню Parallels можно вызвать "Пуск" из Windows.


Меню "Пуск" Windows 10 в режиме Coherence

Иконки Windows приложений появляются в Dock-панели и могут там закрепляться. Таким образом, после загрузки Mac OS X можно сразу запускать Windows-приложение из панели, а Parallels Desktop 11 в фоне запустит виртуальную машину (из спящего режима это осуществляется менее чем за 10 секунд).


На скриншоте показан момент запуска Windows-приложения, когда виртуальная машина запускается в фоне.

В качестве нововведения представлена поддержка голосовой помощницы Cortana. Для российского рынка это не так актуально, потому что Microsoft пока не представила поддержку русского языка. Тем не менее. Учитывая хорошую интеграцию оборудования хост-машины в виртуальные гостевые ОС, проблем с реализацией этой функциональности возникнуть не должно было. В настройках необходимо перенаправить встроенный в MacBook микрофон в Windows 10 и для удобства включить синхронизацию уровня звука между основной и гостевой операционными системами. После этого Cortana стала отвечать на наши вопросы.


Работа с Windows 10 в Parallels Desktop 11 не вызывает никаких сложностей. Если процесс установки будет упрощен или ОС будет добавлена в преднастроенные шаблоны, будет отлично.

Обзор Parallels Desktop 11 | Windows XP

Мы проверили и старую добрую Windows XP SP3. Обычные пользователи её уже используют редко. А вот разработчикам программного обеспечения она до сих пор бывает необходима для тестирования приложений. Установку мы проводили из образа iso.

Как мы уже упоминали, в редакции Pro возможна автоматическая настройка параметров виртуальной машины в зависимости от её назначения. Необходимо выбрать один из сценариев использования и Parallels Desktop 11 подберет оптимальные настройки и состав виртуальных устройств. Далее необходимо указать имя виртуальной машины и местоположение её файлов.


Через несколько минут установки появится старая-добрая заставка "безмятежность".



После установки самой операционной системы необходимо доустановить в неё Parallels Tools, чтобы использовать всю функциональность. Работа с XP уже отлажена многими версиями Parallels Desktop, поэтому никаких сложностей с интеграцией и работой не возникает. Работать удобно в любом режиме: оконном, полноэкранном, Coherence.


Меню пуск при использовании Windows XP в режиме Coherence

Обзор Parallels Desktop 11 | Ubuntu

Поддержка Linux-систем в Parallels Desktop 11 реализована отлично. Самым распространенным дистрибутивом является Ubuntu. Поэтому именно она добавлена в шаблоны для экспресс-установки на первой странице мастера создания новой виртуальной машины.

Разработчиками выбран дистрибутив 14.04. Это версия с длительной поддержкой, поэтому именно она и выбрана компание Parallels. Тезис о сложностях установки Linux-систем становится мифом, если речь идет об Ubuntu. Ну а в Parallels Desktop 11 этот процесс оказался ещё более простым (установка Windows 10 нам показалась танцем с бубном в сравнении с установкой Linux-системы). Parallels Desktop 11 загружает образ Ubuntu 14.04 LTS из сети.


При первой загрузке ОС предлагает ввести пользовательский пароль. А при входе в систему первым делом автоматически устанавливаются Parallels Tools. Готово!


В итоге все вмешательство в установку свелось к вводу пользовательского пароля.

К работе самой операционной системы в виртуальной машине нареканий никаких нет. Наибольший интерес для нас представляла реализация режима Coherence для Linux-системы. Приложения в данном режиме запускаются без проблем. Окна, правда, не оформляются в стиль Mac OS X, а системная панель в верхней части экрана не интегрируется с системной панелью OS X и так и висит вторым ярусом. Панель запуска приложений оболочки Unity также всегда находится сбоку. А вот запускаемые приложения также как в случае Windows можно закреплять в Dock-панели OS X.

Так как версия 14.04 все-таки уже устаревшая с точки зрения Ubuntu (апрель 2014 года), релизы которой выпускаются каждые полгода, мы решили попробовать установить более свежую версию дистрибутива. И сразу замахнулись на ещё находящуюся в стадии тестирования Ubuntu 15.10 (релиз намечен только на 26 октября). Несмотря на статус beta 2, мы надеялись на сквозную преемственность релизов.



Если описать парой предложений результат, то да, Ubuntu 15.10 без проблем установилась с iso-образа и нормально работала, насколько это возможно для beta-версии. Но, к сожалению Parallels Tools нам установить не удалось ни в графическом режиме, ни в терминале.


Надо отметить, что решение поместить в шаблоны именно LTS версию, на наш взгляд, верное. Поэтому с выходом Ubuntu 16.04 в апреле, мы уверены, Parallels выпустит и соответствующую версию Parallels Tools, и обновит шаблон.

Обзор Parallels Desktop 11 | Android

Ещё один шаблон - мобильная ОС Android версии 4.4.2. Поддержка этой операционной системы экспериментальная. Тем не менее, установка прошла гладко, а в работе не было замечено никаких проблем.




Для данной ОС не доступен режим Coherence, а в полноэкранном режиме происходит масштабирование изображения, а не изменение разрешения (из-за чего есть небольшое размытие). Но для отладки мобильных приложений наличие быстро разворачиваемого шаблона несомненный плюс.

Обзор Parallels Desktop 11 | ChromeOS

Chrome OS не пользуется популярностью в нашей стране. Хотя, на наш взгляд, эта легковесная ОС для ограниченного круга задач недооценена. Её также можно установить из шаблона в мастере создания виртуальной машины. Образ закачивается с интернета и очень быстро инсталлируется.


Все что нужно для полноценного использования Crome OS - это учетная запись Google. Для тех, у кого нет аккаунта Google, предусмотрен режим работы под гостевым пользователем.


В данной виртуальной машине также доступны оконный и полноэкранный режимы работы.

Обзор Parallels Desktop 11 | Modern.IE

Сначала мы были удивлены, не увидев вреди шаблонов хотя бы одной ОС от Microsoft. Зато присутствовал вариант Modern.IE со значком Internet Explorer. В данном шаблоне создается тестовая среда для отладки, видимо, веб-приложений в браузерах от Microsoft. Причем в качестве среды доступны варианты от IE 6 на Windows XP до Microsoft Edge в Windows 10. Предполагаем, что под соусом "тестовых сред" Parallels удалось обойти некоторые лицензионные ограничения на установку разных Windows. А несколько предупреждений, необходимость принять лицензионное соглашение и настоятельная рекомендация активировать Windows после установки, только подтверждают эту версию.

Мы выбрали для установки IE 11 на Windows 8.1.


Образ тестовой среды загружается из интернета. В нашем случае образ достаточно объемный и потребовалось некоторое время на загрузку. Это надо учитывать.

После запуска ОС мы увидели на рабочем столе в качестве обоев большое предупреждение об ограничениях в использовании данного образа. А после установки Parallels Tools появился ещё и дополнительный дисклеймер, извещающий о том, что этой пробной версией виртуального образа можно пользоваться в течении 90 дней.

При этом образ является полнофункциональным, можно устанавливать и использоваться необходимые программы. Вот так выглядит метро-меню в режиме Coherence.

Обзор Parallels Desktop 11 | Миграция с PC

Отдельная проблематика - миграция с существующего компьютера на Mac. Самый простой способ для начала перехода в новую среду - это создать виртуальную машину-копию. Как это сделать, если вы привязаны к миру Windows приложениями на своем ноутбуке? Что делать, если настройки, программы накопились в течении последних лет и воссоздать все на чистой ОС кажется невероятным?

В Parallels Desktop 11 есть инструмент миграции, который позволяет перенести вашу среду в виртуальную машину на Mac. При этом речь идет не только о Windows, но и о Linux.

Существует два режима. Первый предполагает перенос с существующего жесткого диска или иного носителя, подключаемого непосредственно к хосту. И это достаточно простой с точки зрения реализации способ: Parallels Desktop 11 просто создает клон раздела с ОС в виртуальный жесткий диск.

Второй способ предполагает миграцию по локальной сети. И это очень желанный сценарий, особенно, когда речь идет, например, о переносе ОС с ноутбука (разбирать который и доставать жесткий диск из которого совершенно не с руки). Именно этот сценарий мы и решили опробовать.

Прежде чем приступать, убедитесь, что на Mac у вас достаточно места, так как при миграции будет клонироваться целевой системный раздел. На компьютере, с которого вы планируете осуществить миграцию, необходимо установить Parallels Transporter Agent. Это утилита, которая будет обеспечивать передачу необходимых данных в Parallels Desktop на вашем Mac.

Целевой компьютер можно указать через Transporter Agent, указав pin-код, либо прямо из Parallels Desktop 11 по IP-адресу.

Если документы и другие файлы из пользовательской директории уже были зарезервированы, при миграции можно пропустить их копирование. Это может ускорить процесс.

Далее необходимо указать параметры виртуальной машины. Parallels Desktop 11 укажет необходимое на диске место и запустит миграцию.


Время, которое понадобится для завершения миграции, зависит от скорости сетевого подключения. Мы все-таки рекомендуем использовать проводное подключение, так как Wi-Fi менее надежный. В нашем случае миграция заняла чуть больше часа. В итоге мы получили виртуальную машину с конфигурацией, полностью идентичной той, что была на целевом компьютере. И в режиме Сoherence мы уже могли запускать необходимые нам преднастроенные приложения, будучи уже в среде Mac OS X.

Обзор Parallels Desktop 11 | Дополнительное ПО

Вместе с Parallels Desktop 11 распространяется дополнительное программное обеспечение.

На все Windows-машины предлагается установить антивирус прямо из панели управления. В качестве антивируса, как и раньше, предлагается Kaspersky Internet Security 2015. Установить его можно как на виртуальную машину, так и в основную Mac OS X.

На момент подготовки обзора Parallels Desktop 11 загружал для установки версию антивируса, не поддерживающую Windows 10. Однако мы выяснили, что в компании уже внедряют обновленную версию KIS и вскоре установить ее можно будет и в Windows 10. А пока мы опробовали установку в Windows XP.


Parallels Desktop 11 загружает антивирус для установки



Окно KIS в режиме Coherence в Windows XP

Вторым приложением, прилагающимся в дополнение к Parallels Desktop 11 оказалась утилита Acronis True Image 2016 for Mac, позволяющая систематизировать работу по созданию и хранению резервных копий системы, удалению конфиденциальной информации и т.д. Запустить установку можно из меню Parallels. Программа скачивается и устанавливается в системе.


Обзор Parallels Desktop 11 | Заключение

Популярность Mac’ов в нашей стране растет. Многие хотели бы перейти на новую модную платформу, но вот незадача - многолетние привычки держат в мире PC, сложно представить себе жизнь без любимых игр, а уж профессиональные приложения и вовсе не оставляют надежд на полный переход к новой ОС. Использование двух операционных систем на одном Mac, конечно, выход, но сомнительный, так как придется постоянно перезагружаться.

Parallels Desktop 11 эту боль решает, "прозрачно" совмещая несколько наиболее популярных программных миров в рамках одной OS X. При этом на лицо явная направленность на рядовых пользователей, так как создание и управление виртуальными машинами упрощено максимально. Вам может даже не потребоваться лезть в подробные настройки виртуальной машины - поставить Windows, включить режим Coherence и вперед! Приложение само оптимально подбирает конфигурацию.

С другой стороны, если потребуется, вы можете тонко настраивать виртуалки, их работу в сети, осуществлять отладку запущенных приложений и другие нетривиальные действия, необходимые чаще всего в профессиональной сфере.

Отдельно скажем о производительности. На нашем тестовом MacBook Pro мы одновременно использовали две виртуальные машины: Windows 10 и Ubuntu 14.04. Первая работала в режиме Coherence, вторая - в оконном режиме. Подтормаживания начались только тогда, когда мы стали запускать офисные приложения в обеих виртуалках, а в Windows 10 запустили еще и Chrome с вкладками в Документах Google и Youtube. Узким местом хостовой машины при этом оказался объем оперативной памяти. Работа с ресурсами более чем достойная разработчики хорошо поработали над производительностью.

Отметим, однако, что несмотря на заявленную поддержку Windows 10 и фактический запуск ОС в виртуальной машине, пожелания все же имеются. Например, хотелось бы упростить шероховатый процесс установки этой системы с USB-носителей. А саму Windows 10 внести в список шаблонов. Во-вторых, попытка установить антивирус приводила к возникновению ошибки, что пользователь без сомнения связал бы с недочетом Parallels Desktop 11 , а не с отсутствием поддержки Windows 10 самим антивирусом. Но на момент выхода статьи, нас заверили, проблема уже была решена и Kaspersky предоставил сборку с полной поддержкой Windows 10.

Сейчас в нашей последней версии Parallels Desktop 9 for Mac есть 75 новых функций. Из них 33 так или иначе связаны с интеграцией OS X и Windows. А в самых первых версиях продукта эти функции были попросту базовыми. Сегодня специально для Хабра пишем о том, что и как было придумано, чтобы Windows и Mac жили вместе долго и счастливо, зачем «внедрились» в «Проводник» и как обманули мышь.
Александр Гречишкин, руководитель Integration Team в Parallels

- С чего все началось?
А.Г.:
Сначала нам нужно было воспользоваться теми технологиями, которые в то время уже были на рынке. Виртуализация и эмуляция существовали еще с 1990-ых годов, и даже были решения для работы с одними ОС на компьютерах под другими ОС. Поэтому задачи в первых версиях у нас были такие: во-первых, сделать технологии и базовые функции точно такими же, как в уже существующих решениях. Во-вторых, придумать что-то свое, оригинальное. «Своими» уникальными функциями стали режим Coherence (возможность видеть и работать с Windows-программами на Mac так, как будто это родные приложения OS X) и Shared applications (иконки программ Windows в панели приложений Dock).

Функция Coherence позволяет полностью скрыть сам Windows, оставив только само приложение. В простонародье этот режим называют «Не показывать десктоп Windows». Звучит очень просто, но чтобы реализовать эту возможность, нам потребовалась масса усилий. Это очень тяжелая технология, связанная со множеством программных проблем и необходимостью решать их нестандартными способами. Ее также сложно поддерживать. И, кстати, она до сих пор развивается.
Конечно, дальше - с каждой новой версией - нам приходилось придумывать и реализовывать все новые и новые вещи, аналогов которым не было. Но изначально половину базовой интеграции типа Mouse Synchronization, Shared folders, Copy-Paste, Drag&Drop, Time-синхронизации мы делали по аналогии с тем, что уже в каком-то виде было. Например, существовало достаточно много виртуализационных эмуляторов (под разные платформы) со своим набором функций. Выпускать новый продукт без этого набора было бы просто бессмысленно.
Конечно, мы могли бы создать эмулятор вообще без интеграции, что-то типа DOSbox (в котором интерграционных функций нет, зато он прекрасно запускает старые dosовские игрушки). Кстати, у нас до сих пор есть некоторое количество пользователей, которые работают с Parallels Desktop по такому же принципу: запускают виртуальную машину, в ней работает Windows в окне, и больше им ничего не надо.
Но, понятное дело, путь развития подавляющего большинства программных продуктов – эволюционный: сначала надо сделать базовую функциональность, а потом ее постепенно расширять. Пользователя нужно замотивировать перейти на новую версию (особенно если она платная). И не только за счет увеличения скорости, поддержки новых технологий (например, нового Direct X), улучшенной стабильности и прочего, но и привлечь интересными и полезными фичами. В нашем случае такой кастомизацией - «тюнингом» продукта - очень часто выступает интеграция – сначала так было с Windows, а потом и с другими ОС.

- И на что ориентировались среди существовавших технологий?
А.Г.:
Вообще идея была такая: реализовать виртуализационную технологию так, как это сделано у Apple. В 2005 году Стив Джобс заявил о планах Apple «прикончить» PowerPC на своих компьютерах и перейти на чипы Intel. В 2009 году появилась OS X 10.6 Snow Leopard, первая операционная система Apple, больше не поддерживающая PowerPC. Но, скорее всего, у них все началось еще десять с половиной лет назад, когда Apple начала составлять график модернизации своей Mac OS и план перехода на x86.
Им пришлось перейти с Mac OS 9, заточенной под старое железо, на Mac OS X, а для поддержки всех существующих программ написать свой эмулятор. Они сделали это достаточно эффективно, с высоким быстродействием, и, что важно, эта технология оказалась очень прозрачной и «незаметной» для пользователя. Пользователь кликает на программу, написанную под PowerPC, на своем компьютере, и открывается тот же Coherence, то же самое окно под эту программу. Единственное, что в ней уживаются не две разных операционных системы, а две Mac OS – старая и новая. В общем, очень похоже на нас.
К сожалению, в то время разработчики Parallels Desktop не знали о существовании в Mac OS X технологии Rosetta – динамического транслятора для запуска приложений под PowerPC на компьютерах с процессорами Intel. Мне пришлось даже принести им свой компьютер из дома, чтобы ее показать. Принес, показал – и разработчики признали в технологии наш Coherence, хотя и реализованный иначе: что-то между Wine и простым эмулятором. И в итоге у нас выкристаллизовалась идея сделать как у Apple в том отношении, чтобы пользователю не показывалось никаких загрузочных образов и виртуальных оболочек от Parallels Desktop. Например, чтобы сразу открывался Word, и при этом обычный пользователь даже не догадывался, что это приложение лежит не в папке Application, а где-то еще.

- Как разрабатывался Coherence?
А.Г.:
Автором идеи был Сергей Белоусов (прим. - основатель компании Parallels) , он тогда ходил по офису и рассказывал всем желающим, что есть гениальная идея - убрать десктоп, чтобы все виндовые окна выглядели бы точно так же, как маковские. Мы сразу же поняли, что эта идея очень хорошая и нужно над ней работать. «Вырезать окошко и убрать десктоп» мы смогли достаточно быстро и просто. А затем вся технология представления Coherence была написана одним-единственным человеком, который до сих пор у нас работает – Сергеем Концовым. На достижение того, чтобы пользователь практически не заметил отличий между приложениями Windows и Mac, ушли годы кропотливого труда.
Доказательством тому, что идея и правда была хорошей, стало то, что ее потом у нас все скопировали. Но в начале пути мы не были уверены в том, что технология станет революционной. И хотя Белоусов нас уверял, что все будут на ней работать, мы все-таки постеснялись поставить ее по умолчанию при загрузке виртуальной машины в первой же версии (прим. - слева - скриншот с версии 2.5) . Но как только поняли, что это работает и пользуется популярностью, то сразу поставили по умолчанию (с версии 3.0). И этот режим до сих пор в лидерах, им в Parallels Desktop пользуется почти 80% юзеров.
Также реализовали простую инсталляцию Windows через Wizard, чтобы пользователь просто нажимал пару кнопок и получал свою вирутальную ОС. Эта технология была заимствована у OEM-установщиков, но впервые для конечных пользователей была реализована именно у нас в продукте.
Мы так долго работали с Coherence еще и потому, что это название из одного слова объединяет на самом деле много технологий. В частности, туда входит такая большая функция, как Shared Applications, которая заставляет пользователя видеть тот же Microsoft Word как нативное приложение в Маке. Вот это и есть самое сложное. Внешне функция выглядит просто, но «внутри» скрыто много логики, над которой мы до сих пор продолжаем работать.
В Coherence вложено 15 человеко-лет – целая карьера программиста. И этот код составляет около 8% всех исходников Parallels Desktop – настолько это большой и сложный продукт.

- Что еще было так же сложно сделать?
А.Г.:
Сложность может быть разная. Программная сложность, алгоритимическая, сложность понять, как реализовать вещь или как она будет работать. Часто нам приходилось идти совершенно нетривиальным путем.
Например, расскажу про функцию, ради которой пришлось влезть во внутренности Windows. Есть у нас такая технология - SmartMount. Вот в чем ее суть: когда пользователь втыкает флешку в компьютер Mac, то она появляется только на маковском десктопе. Человек, работающий в режиме Coherence, хочет полной интеграции – то есть видеть содержимое своей флешки и в Windows. Но, чтобы она там появилась, ее нужно переконнектить в виртуальную машину, а ведь делать это каждый раз очень неудобно. Мы решили использовать Shared Folders. Поскольку эта функция представляет из себя драйвер сетевой файловой системы и показывается в Windows как сетевой носитель, то, когда флешка коннкетится в Мак, мы пробрасываем ее через Shared Folders в Windows. Тогда она автоматически попадает в Network location. Но пользователю непонятно, что свою флешку он должен найти именно в Network location: он привык, что это USB-девайс, который выглядит определенным образом и показывается именно там, где и все removable media. Стандартными способами невозможно сделать так, чтобы сетевая шара показывалась в списке устройств как подключаемый девайс и при этом еще и отражалась как USB. И вот наш разработчик Василий Жданов «внедрился» (назовем это так) в «Проводник», и доходчиво «объяснил» этой программе, что вот эту вещь надо показывать именно так. И теперь у нас SmartMount показывает USB-флешки как внешние накопители.


Вставили флешку


Увидели флешку

Или можно привести в пример оригинального способа решения задачи Smart Mouse – технологии, которая позволяет компьютерной мышке адаптироваться к тому приложению, с которым пользователь сейчас работает. Если это офисное приложение – она ведет себя одним образом, если игрушка – по-другому.
В Parallels Desktop есть два режима мышки – absolute pointing device, который позволяет курсору и в винде, и в маке двигаться одинаково – с одинаковой скоростью, перемещением. При этом используется только хостовая мышь. И есть режим relative mouse, при котором мышь работает внутри виртуальной машины со своей собственной скоростью. Последний режим используется в компьютерных играх, так как они совсем не заточены под absolute pointing device. Раньше курсор в играх начинал с бешеной скоростью передвигаться и играть было невозможно. Мы придумали способ, как обнаруживать нужный режим без каких-либо привязок к именам программ, библиотек или файлов. Все очень просто: если во время работы программы на ее экране визуально наблюдается курсор – то нужен absolute pointing device. В играх же стандартный курсор почти всегда выключается и игра его рисует сама, следовательно, в данном типе программы нужен relative mode. Выбор режима мыши по этому принципу, как в итоге оказалось, работает правильно в 95% случаев.

- Что за команда делает всю интеграцию?
А.Г.:
Сейчас в команде Integration работает 6 человек, и это очень разные люди. Чем-то похожие, но не одинаковые. Практически всю команду я набирал сам. Единственный, кто уже работал, когда я пришел, – это уже упомянутый «отец Coherence» Сергей Концов. Так что я стал руководителем отдела из 1 человека, где сам выступал в качестве играющего тренера.
Вся интеграция в первой версии делалась силами этих двух человек – и Shared folders, и работа мышки, и копипаст, и drag&drop, и Coherence – практически вся базовая интеграция. Чуть позже появился Василий Жданов. Потом - Андрей Покровский, который сделал Shared applications для первой версии. Причем, что интересно, он сделал это очень быстро. Когда мы закончили продукт и уже захотели его продавать, то поняли, что без иконок в панели приложений Dock основная когеренция выглядит недоделанной. Пришел Коля (прим. - Николай Добровольский, вице-президент по виртуализации ПК) и спросил, можем ли мы это быстро реализовать. И Андрей сделал это за одни выходные, написав и отладив порядка 2000 строчек кода. Приложения показывались где надо, их можно было запускать из Dock. Вот это можно назвать по-настоящему продуктивной работой.
А вот, например, у Василия Жданова, о котором мы уже говорили, очень хорошо получается реверс-инжиниринг. Он быстро вникает во внутренности программ, что очень нужно для реализации интеграции, так как в этом процессе очень многое сделать стандартными способами просто нельзя. И Василий очень любит этим заниматься: просто приходит на работу и вкалывает, не отвлекаясь на голод и самочувствие. Вообще ничего не видит и не слышит. Часто даже не знает статус проекта, ему интересна лишь его конкретная задача в данный момент.
В общем, все они умеют разное, и производительность у них разная. Но они – КОМАНДА. Они абсолютно все умеют и хотят работать, у всех обширные и глубокие знания (которые за годы работы стали ОЧЕНЬ большими знаниями), и у них очень высокий уровень программирования. За семь лет их уровень настолько поднялся, что они могут сделать практически любую задачу, какую ни дай.

- То есть шестерых достаточно?
А.Г.:
На данному этапе уже нет. У нас очень короткие циклы разработки, а, как я уже говорил, у нас примерно 30 интеграционных функций каждый год. Получается, что нужно делать примерно по 3 фичи в месяц. Тут надо отметить, что интеграционных фич много, но не все они делаются именно нашей командой.
В общем, мне сейчас требуется 3 человека в команду Integration. Это вакансии для тех, кто хочет программировать под все платформы и разбирается в Windows, Mac и Linux (ну, или хотя бы в одной из этих ОС). Основные языки – С++ и Objective C.
Так что те, кто хочет работать в Parallels в команде OS Integration, могут писать лично мне на адрес [email protected]. Одно точно могу пообещать – интересные нестандартные задачи гарантированы. Остальное обсудим на месте.

С решением Parallels Desktop мы знакомы уже лет 7. Как это ни парадоксально, до сих пор потребность в работе с Windows (у кого-то Linux) на Mac сохраняется. Каждый год, в каждой новой версии разработчики Parallels стараются сделать ее быстрее предыдущей, однако вопросы о том, сколько памяти потребляет виртуальная машина и как сделать так, чтобы гостевая операционная система работала так же быстро, как нативная, похоже, не исчезают (и не исчезнут до тех пор, пока аппаратные возможности не позволят запускать одновременно Windows и Mac OS X, оставляя при этом больше свободных ресурсов для приложений).

Редакция MacDigger нашла 5 полезных хинтов последних версий, которые помогут снять возможные «тормоза» виртуальной машины и выжать максимум из своего яблочного помощника. Все они посвящены разгрузке памяти и повышению скорости работы. Очевидные советы (например, взять более современный Мак с четырьмя (а то и восемью – память нынче дешева) Гб оперативной памяти или перейти на последнюю 9-ю версию Parallels, в которой разработчики обещают прирост производительности до 40%), мы опустим. Потому что купить железку и ПО поновее – это всякий сможет, а вот что можно сделать из не столь очевидного?

Способ 1: полезные настройки

Например, в меню Parallels Desktop выберите Preferences, затем Advanced. Отключите там возможность отправки детализированных логов (Use detailed log messages). Эту функцию стоит включать, только если у вас есть какие-то проблемы, связанные с работой виртуальной машины, и вы по этому поводу общаетесь с техподдержкой Parallels. Сбор детализированных логов потребляет больше ресурсов.

А теперь поиграем с настройками производительности и энергопотребления. В меню Virtual Machine выбираем последовательно: Configure, Options, Optimization. В разделе Performance выбираем Faster Virtual Machine и ставим галочки рядом с Enable Adaptive Hypervisor и Tune Windows for Speed. Опции Faster Virtual Machine и Enable Adaptive Hypervisor устанавливают приоритет процессам виртуальной машины над процессами OS X. Tune Windows for speed ускоряет загрузку Windows и оптимизирует работу приложений в виртуальной машине.

Если в ближайшее время вы не планируете отключать свой Мак от электросети, можно также в разделе Power вместо Longer Battery Life выбрать опцию Better Performance. Если вы являетесь счастливым обладателем MacBook Pro c двумя графическими чипами, то, помимо принятия общих энергосберегающих мер, эта опция заставит Мак переключиться на интегрированный графический чип – менее производительный, но потребляющий значительно меньше заряда аккумулятора. Чтобы все измененные настройки вступили в силу, потребуется полностью перезапустить Parallels Desktop.

Дальше, что ест много ресурсов? Правильно, видео и 3D-графика. Поэтому можно уменьшить количество видеопамяти, отведенной для виртуальной машины. По умолчанию ее значение равняется 256 Мб. Для офисной работы и даже для двухмерной графики (например, Photoshop) это излишне. В меню Virtual Machine выбираем Configure, затем Hardware, и в разделе Video снижаем значение Video memory до 128 Мб. Там же можно выбрать режим ускорения 3D, либо вовсе отключить его (особенно полезно тем, у кого не очень новый Мак).

Что еще можно сделать? Например, попробуйте отключить доступ к папкам Windows из OS X. Это можно сделать в разделе Sharing на вкладке Options.

Но все это мелочи, а теперь о важном – о самостоятельном регулировании количества процессоров и памяти, которые можно назначить виртуальной машине. По дефолту у всех в настройках виртуальной машины стоит 1 процессор и 1 Гб памяти, и по умолчанию у многих чешутся руки непременно добавить себе всего и побольше. При этом юзеры забывают о том, что виртуальные процессоры и память не ведут себя в точности так же, как «железные», «больше памяти» не всегда будет значить «шустрее летает», а передоз иногда может просто навредить.

На самом деле в большинстве случаев лучшая производительность будет, если оставить один процессор на одну виртуальную машину. Несколько процессоров может потребоваться только в случае, если вы запускаете несколько приложений, каждое из которых связано с обработкой больших массивов данных, например, научные вычисления или системы онлайн-трейдинга. При этом минимум назначенной памяти должен соответствовать тому минимуму, который в системных требованиях рекомендуют для вашей гостевой ОС (они обычно вывешены на сайте ее разработчика).

Если вы не уверены, что настройки по умолчанию спасут отца русской демократии ваши приложения, то нужно сначала все протестировать. Допустим, у вас виртуальная машина Windows и обычно вы работаете с Microsoft Office Suite, FireFox и парой других приложений. Запустите под дефолтными настройками свой Windows и по нескольку файлов приложений, с которыми вы обычно работаете, скажем, откройте несколько сообщений в Microsoft Outlook, 3 документа Microsoft Word, пару файлов Microsoft Excel, 10 вкладок в Firefox и IE до кучи, презентацию PowerPoint и еще пару приложений – и поработайте с ними немного. Кликните правой кнопкой мыши на панели задач Windows и запустите Диспетчер задач. Переключитесь на вкладку Приложения и проверьте, сколько сейчас чего используется.

Обычно можно увидеть, что все запущенное потребляет около 80% памяти и меньше 1% процессора, значит, установленного по умолчанию достаточно, чтобы все прилично работало. Однако если вы будете использовать что-нибудь флешовое, этого может не хватить (о флеше мы поговорим в хинте ниже).

Если показатели не радуют, то выключаем Windows через кнопку Пуск. После завершения работы ОС идем в верхнее меню Virtual Machine, выбираем Configure, затем General. Здесь с небольшим запасом выставляем значение оперативной памяти, показанное Диспетчером задач Windows с небольшим запасом, скажем, в 15%. Мы рекомендуем добавлять не более 256-512 Мб за раз. В итоге: по сравнению даже с дефолтными настройками количество памяти снизится. Сэкономленный объем быстрой (в отличие от жесткого диска) памяти останется у Mac OS X. “Хост” не будет тормозить, а значит, будет быстрее работать и виртуальная машина.

Способ 2: используем неиспользуемое

По статистике разработчиков, у пользователей не так уж много свободного места на диске (у 8% – менее 10 Гб). Функция Reclaim проверяет, находит и позволяет работать с неиспользуемым дисковым пространством в виртуальной машине. Например, заняли в свое время часть дискового пространства виртуальной машиной, место осталось выделенным, но больше не нужно. В этом случае можно вернуть его из виртуальной машины обратно в Мак. Для этого надо открыть меню виртуальной машины, выбрать там Configure, затем General. Под кнопкой Reclaim… будет обозначено дисковое пространство, которое можно заново пустить в работу. Кликните Reclaim… и подтвердите. Функция работает в версиях 8 и 9.

Способ 3: снапшоты

Люди, которые используют снапшоты, часто забывают удалить их. Люди, которые забывают удалить снапшоты, часто забывают о том, сколько дискового пространства они едят.

Снапшоты обычному пользователю без надобности, зато их в больших количествах (особенно, если подключен режим автоматического их создания во время работы виртуальной машины) плодят товарищи разработчики в гостевых ОС и любители что-нибудь эдакое установить или реконфигурировать (чтобы можно было всегда откатиться назад). Если вам ничего этого не нужно, лучше проверить, не включен ли режим автоматического создания снапшотов SmartGuard (и выключить его) в разделе Backup на вкладке Options. А если снапшоты вам нужны и полезны, но от случая к случаю, то там же можно выбрать следующую опцию Custom, тогда вы сможете сами ограничить частоту и максимальное количество хранимых снапшотов (по умолчанию максимум – это 100 штук, когда появляется 101 – самый старый удаляется). Опция Notify me before snapshot creation позволит отклонить создание ненужного снапшота и информировать о его создании.

Правда, все равно потом забудете, поэтому вот как удалить снапшот:

  1. Запустите Parallels Desktop.
  2. В списке Parallels Virtual Machines выберите виртуальную машину, в которой вы хотите удалить снапшоты.
  3. Кликните меню виртуальной машины и выберите Manage Snapshots.
  4. Выберите ненужные снапшоты и нажмите Delete.

Все упомянутое – это для версий с 6 по 8, а также с версии 8 в Parallels Desktop есть возможность удалять снапшоты даже если места на диска меньше, чем размер снапшота.

Способ 4: управляем прожорливыми приложениями

Во-первых, «торможение» вполне может возникать из-за использования некоторых антивирусов. Попробуйте применять только те антивирусные программы, которые предлагает Parallels Desktop – их выбирали, исходя из того, что они оптимально работают в виртуальной машине. В 9-й версии Parallels Desktop, кстати, сейчас есть довольно удобный мастер безопасности, где все операции со всеми доступными антивирусными программами можно сделать в одном окне. Если у вас антивирус «не из списка», попробуйте его временно выключить и посмотреть на показатели.

Во-вторых, есть серьезные жалобы на Adobe Flash, который неконтролируемо кушает память, особенно если вы активно серфите по Интернету, а там много флешевых баннеров. Под браузер выделяется память операционной системы. Кэш переполняется, и данные сбрасываются на жесткий диск в файл подкачки (swap). Если у вас долго висит свернутый (а не закрытый) браузер, то в «свопе» накапливается огромное количество данных.

Поэтому посматривайте на параметр Swap used в Activity Monitor. Если количество данных там растет и стало явно больше 1 Гб, вероятно, какое-то приложение не отпускает свою память.

Профилактика очень простая – периодически закрывать браузер целиком, используя Cmd+Q, и вообще, почаще пользоваться этой функцией.

Способ 5: SSD, и еще раз SSD

По словам разработчиков, 30% пользователей Parallels Desktop уже используют Маки с SSD и от них никаких жалоб на прожорливость продукта не поступает. Дело в том, что Parallels Desktop использует многопоточные операции ввода-вывода при работе с жестким диском, что дает особенно ощутимый прирост производительности на Маках с SSD. Кроме того, информация о типе диска предоставляется гостевой ОС, благодаря чему та может использовать свои собственные механизмы для оптимизации работы с SSD.

Понравилась статья? Поделитесь ей