Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Программы Обои   Экспорт RSS E-Books
 
 

   Компьютеры -> Разное -> Вложенные компьютеры


Вложенные компьютеры

Применение технологии создания виртуальных машин позволяет расширить функциональность компьютеров и сэкономить значительные средства в организации вычислительных систем

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

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

В свою очередь применение разновидности эмулятора - виртуальных машин (ВМ) - на мэйнфреймах IBM позволило создать на одном аппаратном комплексе несколько независимых ЭВМ, каждая из которых решала свои задачи. Подобная архитектура используется в наши дни для консолидации (объединения) серверов, когда несколько серверных приложений, требующих отдельного компьютера, можно запустить в виртуальных машинах на базе одного мощного сервера. Кстати, такая же технология применяется также в компаниях, предоставляющих Windows-хостинг, которые теперь могут обеспечить своим клиентам полный контроль за их серверами.

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

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

Если кто-либо из читателей посещал курсы обучения пользователей и системных администраторов, то он, возможно, сталкивался с ситуацией, когда для практического процесса обучения требовалось наличие нескольких операционных систем одновременно. В этом случае вместо того, чтобы каждому пользователю выделять несколько компьютеров, на один ПК устанавливали несколько виртуальных машин, в каждой из которых б_ыла инсталлирована своя операционная система.

Ну и, наконец, посредством ВМ любой пользователь может просто попробовать "на зуб" новую операционную систему или непроверенные приложения без риска потерять все данные на жестком диске.

Особенности виртуализации

Первым проектом, в котором возникла концепция системы виртуальных машин, была электронная вычислительная машина IBM 7044X-7044M, созданная в 60-х годах прошлого века. Через несколько лет для IBM System/370 появилась уже полноценная виртуальная машина - VM/370, претерпевшая впоследствии немало изменений и ставшая самой распространенной в компьютерной индустрии. Эта система позволяла запускать на одной машине несколько операционных систем одновременно (так называемых гостевых систем), в том числе она позволяла запускать и себя. В VM/370 пользователь получал в свое распоряжение полнофункциональный виртуальный компьютер (включающий ОЗУ, ЦПУ, собственные виртуальные периферийные устройства), на который он мог поставить собственную версию операционной системы и установить прикладное программное обеспечение. Количество обслуживаемых виртуальных компьютеров определялось лицензией, доступными ресурсами памяти, диска, количеством центральных процессоров и т. д.

На базе VM/370 в 1982 году была построена отечественная разработка - система СВМ (система виртуальных машин). А в 1983 операционная система СВМ 2.2 заняла прочное место в базовом программном обеспечении для ЕС ЭВМ. В качестве операционной системы, управляющей работой виртуальной машины, могли использоваться любые ОС, разработанные для ЕС ЭВМ.

Разработка новых версий виртуальных машин и доработка существующих продолжается до сих пор для больших ЭВМ от IBM и других производителей.

Однако когда подобную технологию попытались перенести на персональный компьютер, разработчики столкнулись с серьезными проблемами. Из-за особенностей архитектуры компьютер с процессором Intel x86 не может быть виртуализован простым способом. Попытка запустить две операционные системы на одном компьютере просто приведет к конфликту между ними. Тем не менее всегда найдутся обходные пути...

Технология и терминология

Чтобы понять, каким образом решаются проблемы запуска различных приложений на несовместимой с ними платформе, необходимо более подробно рассмотреть, как работают эмуляторы. Итак, эмуляция - это технология, позволяющая запускать бинарный код, предназначенный для работы в какой-то одной среде на базе другой среды. Для того чтобы сделать это определение понятнее, необходимо рассмотреть одну из ключевых концепций в современной программной инженерии - концепцию абстрактной машины.

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

Сравнительно четкое определение программной модели компьютера позволяет реализовывать его независимым производителям как в аппаратном виде, создавая новые чипы, так и в виде программы. Вместо аппаратной интерпретации команд процессора и отработки команд устройств, посылаемых в порты ввода-вывода, специально написанная программа может последовательно выбирать байты, декодировать команды и выполнять затребованные действия с виртуальными устройствами. К примеру, ОЗУ легко эмулируется как массив байтов в памяти эмулятора; инструкция сложения целевого процессора превращается в операцию сложения ячеек массива памяти эмулятора и т. д.

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

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

Интерфейс программного пакета twoOStwo очень прост в изучении и удобен в работе

Второй способ можно условно назвать подходом "черного ящика", при котором моделируются не процессы внутри микросхем, а лишь результаты этих процессов. К примеру, не важно, как именно выполнено сложение - при помощи процедуры переключения регисторов сумматора или же просто операцией сложения на процессоре ПК. Этот способ менее точен, но существенно быстрее первого. Именно эта эмуляция обычно позволяет запускать программы целевой машины на любом компьютере, на котором заработает эмулятор. Подобные программы были широко распространены еще в те времена, когда вычислительные машины редко были совместимы между собой архитектурно. Так, до появления серии IBM/360 каждая новая модель ЭВМ обычно предполагала применение такого эмулятора для запуска кода предыдущих машин. Сейчас такие эмуляторы позволяют, к примеру, запускать программы для PC на машинах Apple или Sun.

Третий способ - виртуальные машины. Первая широко известная реализация этого подхода появилась в системе VM/370 - операционной системе фирмы IBM для ее мэйнфреймов IBM/370.

Чтобы объяснить, как это работало, нужно вспомнить о том, что у современных процессоров есть два режима работы - пользовательский (user mode), в котором выполняются прикладные программы, при этом управление аппаратурой запрещено (точнее, попытки управления аппаратурой процессор передает операционной системе, и уже она запрещает их), и привилегированный, в котором работает ядро системы и есть непосредственный доступ к "железу".

VM/370 запускала ядра гостевых систем в пользовательском режиме, и обычные (непривилегированные) инструкции процессора выполнялись непосредственно ЦПУ. Привилегированные инструкции же перехватывались и эмулировались. Кроме того, VM/370 осуществляла управление доступом к внешним устройствам, не позволяя возникнуть конфликтам. К примеру, один большой физический диск <нарезался> на куски, каждый из которых выделялся одной гостевой системе и был виден ею как "физическое" устройство.

На похожих принципах построена архитектура современных эмуляторов PC, самыми популярными из которых являются - VMware и Virtual PC. Но в отличие от VM/370, эти продукты работают под управлением ОС, а не являются полноценными операционными системами.

Другой разновидностью эмуляции является имитация ABI (application binary interface) операционной системы. Такие эмуляторы программных интерфейсов обычно позволяют запускать приложения некоторой ОС под управлением другой системы, но на том же процессоре.

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

Статус любой из запущенных виртуальных машин отображается в окне менеджера Virtual PC 5.2

Bochs 2.0.2

Распространяемая бесплатно виртуальная машина Bochs представляет собой полностью программный эмулятор архитектуры PC с 32-битовым процессором, стандартными элементами материнской платы, видеоадаптером VGA, IDE-диском и приводом CD-ROM. Программа написана на C++, работает под Windows, UNIX, MacOS X и доступна в исходном коде по лицезии GPL. Bochs не требует процессора Intel x86 для работы, что делает принципиально возможным ее запуск на х86-несовместимых машинах. Эмуляция достаточно полная, нам удалось без проблем запустить при помощи Bochs ОС Windows 98, Windows 2000 и FreeBSD 4.x.

Основная проблема этой системы - очень низкая скорость работы, что вызвано прежде всего полной программной эмуляцией каждой индивидуальной команды процессора. Например, работа с Windows 98 на Pentium III/866 MГц по скорости идентична использованию ПК с процессором Intel 386/16 MГц. Вторая, менее серьезная проблема - это не совсем полная эмуляция аппаратного обеспечения, из-за чего иногда возникают проблемы совместимости с редкими ОС. Так, BSDI 2.1 под Bochs не смогла определять CD-ROM, поэтому ее установить не удалось.

В целом Bochs - идеальный способ потестировать другие операционные системы, не опасаясь за сохранность данных на основной рабочей системе. Запускать под ним ОС Windows можно, но только в познавательных целях - по причине очень низкой скорости.

twoOStwo for Windows 2.0

Дистрибутив разработанной российской компанией "Параллели" виртуальной машины twoOStwo 2.0 занимает всего два с половиной мегабайта. Установка отнимет лишь несколько минут, и после перезагрузки компьютера данный продукт готов к работе.

Изначально виртуальная машина twoOStwo разрабатывалась для запуска операционной системы OS/2 Warp поверх Windows NT/2000/XP, современная версия продукта позволяет одновременно запускать несколько операционных систем, таких как MS Windows, Linux и OS/2, на одном компьютере. twoOStwo запускается как программа под управлением основной операционной системы и создает виртуальный компьютер, в котором может быть запущена своя гостевая ОС. Каждый из компьютеров имеет свой виртуальный процессор, периферийные устройства и полную сетевую поддержку. Виртуальные машины могут либо совместно использовать, либо монопольно захватывать реальные устройства. В последнем случае у базовой операционной системы также не будет доступа к периферийному устройству.

Все параметры созданного в Virtual PC виртуального компьютера легко изменить в любой момент времени

Виртуальная машина twoOStwo запускает гостевую операционную систему в изолированной программной среде под полным контролем монитора виртуальной машины. При этом большинство инструкций гостевого кода исполняется процессором без эмуляции, что позволяет обеспечить высокую производительность гостевой операционной системы и виртуального компьютера.

Одна копия twoOStwo может сгенерировать только один виртуальный компьютер. Чтобы создать набор виртуальных компьютеров, необходимо запустить несколько копий twoOStwo с разными конфигурационными файлами. Каждая виртуальная машина работает независимо от других, если только речь не идет об устройствах ввода/вывода, которые используются виртуальной машиной только в монопольном режиме. Например, это дисковод гибких дисков, с ним можно работать только на одной из запущенных одновременно виртуальных машин. Хотя используя кнопки на панели инструментов, его можно в любой момент отключить от одной виртуальной машины и подключить к другой.

Интерфейс twoOStwo весьма точно имитирует реальный компьютер. В окне программы присутствует кнопка включения питания Power, кнопка сброса Reset, есть также подключение флоппи-дисковода и привода CD-ROM. После включения виртуального компьютера в окне программы начинает имитироваться стандартная загрузка компьютера, правда доступа к установкам BIOS здесь нет. Переключение клавиатуры и мыши между реальным и виртуальным компьютером выполняется при нажатии кнопок [Ctrl] + [Alt] + [F10]. Дисплей виртуального компьютера может отображаться как в отдельном окне, так и в полноэкранном режиме. Для переключения между ними используется комбинация горячих клавиш.

Эмуляторы DOS


Разрабатывая архитектуру 32-битового наследника процессора i286, Intel ввела в него специальный режим V86, предназначенный для запуска кода процессора 8086 под управлением 32-битовой операционной системы. Архитектура этого режима такова, что корректно написанная 32-битовая ОС, с одной стороны, может запускать операционные системы реального режима, например MS-DOS, а с другой, полностью изолировать их от аппаратуры и других процессов, выполняющихся на этой же машине.

Процессор в режиме V86 информирует операционную систему о попытках программы, работающей в DOS Box, получить доступ к портам ввода/вывода и предоставляет возможность виртуализировать прерывания, которые система может направлять в DOS Box. Таким образом задачей операционной системы становится эмуляция аппаратуры.

В Windows NT соответствующий компонент называется ntvdm.exe, его можно увидеть в Task Manager в списке процессов после запуска любой DOS-программы.

Аналогичный эмулятор DOSEMU для Linux доступен для загрузки бесплатно из Сети. Но в отличие от Windows NT/2000/XP, в которой для выполнения DOS-приложений имеется предустановленная версия MS-DOS 5.0, для запуска программ при помощи DOSEMU необходимо предварительно купить дистрибутив MS-DOS и проинсталлировать его под DOSEMU. С другой стороны, DOSEMU гораздо более гибок в настройке, чем ntvdm, и (по мнению авторов) немного лучше эмулирует аппаратное обеспечение, чем Windows NT.

И ntvdm, и DOSEMU позволяют запускать только приложения, корректно работающие с переключением процессора из реального в защищенный режим посредством DPMI (DOS Protected Mode Interface). Это исключает из списка работающих программ старые продукты, пытающиеся переключиться в защищенный режим напрямую (характерный пример - расширители памяти для DOS).

В ОС FreeBSD, начиная с версии 3.x, тоже имеется аналогичная программа - doscmd, подаренная проекту BSDI. Правда, практика показывает, что эта программа не слишком хороша.


Virtual PC 5.2

В конце 90-х годов прошлого века одновременно с VMware задачей виртуализации процессоров Intel x86 занималась довольно известная компания Connectix. В 1997 году она выпустила эмулятор Virtual PC для Mac, позволяющий запускать операционные системы DOS и Windows на компьютерах Macintosh. А в 1999 году вышла виртуальная машина Virtual PC для Windows, исполняющая различные операционные системы под Windows NT/9x. Большой популярностью продукты Connectix пользовались среди пользователей OS/2 после выхода Virtual PC для этой ОС.

Сегодня компания Connectix является одним из лидеров в производстве виртуальных машин, которые позволяют запускать большое количество x86-совместимых гостевых операционных систем. Компания предлагает четыре продукта: Virtual PC для MacOS, Virtual PC для Windows, Virtual PC для OS/2 и Virtual Server.

Virtual PC 5.2 для Windows поддерживает одновременный запуск нескольких операционных систем в отдельных окнах с возможностью быстрого переключения между ними. Немалое достоинство данной программы - наличие мастеров, позволяющих быстро выполнять все необходимые дейстивия по настройке виртуальных машин. Например, при нажатии кнопки New PC запускается мастер, который позволяет шаг за шагом создать новую машину, продублировать имеющийся или быстро сгенерировать новый ПК с установками по умолчанию (в последнем случае в виртуальном ПК будет отсутствовать образ жесткого диска).

Посредством эмулятора ntvdm под Windows NT/XP можно легко запускать старые DOS-приложения

Если делать новый ПК с нуля, программа попросит вас указать название для виртуального компьютера, тип устанавливаемой гостевой системы, объем ОЗУ и месторасположение образа жесткого диска. Первоначально объем образа винчестера будет равен всего нескольким килобайтам, но по мере установки ОС и приложений его размер будет автоматически увеличиваться. В состав продукта также входит утилита Virtual Disk Wizard, позволяющая создавать и управлять образами виртуальных жестких дисков.

Вновь созданный компьютер отобразится в списке виртуальных устройств в окне менеджера. Для запуска любого из них достаточно нажать кнопку Start Up, после чего пользователь увидит в отдельном окне стандартный экран загружающегося компьютера. Здесь доступна даже опция входа в BIOS Setup, в котором можно настроить некоторые параметры ПК. Правда, в отличие от BIOS реального компьютера, здесь настроек гораздо меньше. Например, можно настроить только дату/время виртуального компьютера, указать последовательность устройств, с которых будет грузиться ОС, управление питанием и опции безопасности.

Виртуальную систему можно запускать в оконном или полноэкранном режиме. Все параметры виртуального ПК, такие как объем памяти, количество жестких дисков, наличие периферийных устройств можно изменить в специальном окне настроек в горячем режиме. Переключение клавиатуры и мыши между реальным и виртуальным компьютером выполняется при нажатии кнопок правый [Ctrl] + [Alt]. При выключении гостевого ПК доступна опция, аналогичная Hibernate в Windows XP, когда текущее состояние ОС со всеми запущенными приложенями сохраняется на жестком диске, а при последующем включении status quo восстанавливается за несколько секунд.

Компания Connectix, также как и VMware, выпускает продукты для создания виртуальных серверов. Применение подобных систем позволяет снизить затраты на аппаратное обеспечение и администрирование за счет запуска нескольких консолидированных серверов на одном мощном сервере вместо нескольких отдельных машин. На сегодня продукт Virtual Server находится в стадии бета-тестирования.

Необходимо заметить, что в связи с покупкой технологии виртуальных машин Connectix компанией Microsoft (см. ЧИП 3/2003, с. 59) доводить Virtual Server до необходимого уровня надежности и стабильности будет уже сам софтверный гигант. По некоторым сведениям, технология Virtual PC будет входить состав будущей ОС от Microsoft - Longhorn.

Окно BIOS Setup виртуальной машины VMware Workstation довольно точно имитирует установки BIOS реального компьютера

VMware Workstation 4

Компания VMware, созданная профессором Стэндфордского университета_в 1998 году, является пионером в технологии виртуальных машин на платформе Intel x86. Компания разработала технологию Virtual Platform для виртуализации IA-32 систем, и уже в 1999 году выпустила первую виртуальную машину VMware Workstation для операционной системы Linux, чем заслужила большую популярность в сообществе Linux.

Компания VMware предлагает два типа виртуальных машин: для рабочих станций (VMware Workstation) и для серверов (VMware GSX Server 2.5 и VMware ESX Server). Последние два предназначены для консолидации серверов на одном физическом компьютере.

Четвертая версия VMware Workstation обеспечивает поддержку большого количества гостевых ОС, в том числе и Windows Server 2003. Интерфейс программы очень легок в использовании. При создании нового виртуального ПК запускается мастер, позволяющий быстро установить все необходимые параметры, такие как тип ОС, объем ОЗУ, месторасположение и размер образа жесткого диска для будущей машины, а также тип сетевых соединений. Здесь возможны следующие варианты: No Networking (Сети нет, полностью изолированная виртуальная машина); Bridged Networking (прямой доступ виртуальной машины к ресурсам всей локальной сети с IP-адресом из реальной сети); Host-only networking (IP-адрес из внутренней виртуальной сети с доступом к ресурсам базовой ОС); Use NAT (гостевой ОС предоставляется доступ к внешней ЛВС, используя IP-адрес хоста).

Следующий шаг - определение жесткого диска для виртуального ПК. Можно воспользоваться существующим винчестером или сгенерировать новый образ жесткого диска. В настройках определяется только максимальный размер образа, поскольку первоначально его объем составляет всего несколько десятков килобайт, но постепенно он увеличивается в процессе установки ОС и других приложений.

Можно создать любое число виртуальных машин и легко переключаться между ними - главное, чтобы хватило аппаратных ресурсов. Впрочем, если ресурсов не хватает, можно приостановить работу одной из запущенных виртуальных машин. Это очень удобно - ведь операционная система при восстановлении находится в том же состоянии, что была и при выключении, т. е. ждать долгой загрузки ОС теперь не надо. Переключение клавиатуры и мыши между базовой и гостевой ОС выполняется посредством левых [Alt] + [Ctrl].

Эмуляторы старых ЭВМ


У многих людей, давно работающих в ИТ-индустрии, возникает своеобразная привязанность к старым компьютерным системам, с которыми они когда-то работали. Обычно это большие машины, на которых работали странные, с современной точки зрения, операционные системы. Одна из таких машин, которая считается истоком современной культуры хакеров (то есть высокопрофессиональных программистов, не крэкеров) - это машины PDP-10 (DECSystem 10/ DECSystem 20) компании Digital Equipment Corporation.

Фактически, PDP-10 была первым мини-компьютером, на которой работали реально используемые системы разделения времени - TOPS 10 от DEC, TENEX от BBN, с ее наследником - TOPS 20 (TWENEX - разработка DEC), и операционные системы, разработанные в лабораториях искусственного интеллекта MIT и Стенфорда - ITS и WAITS соответственно. TENEX и ITS работали с IMP-сопроцессорами - первыми аппаратными реализациями протоколов ARPANET - исследовательского прототипа Интернета. ITS была разработана людьми, которых позже называли первыми настоящими хакерами. И хотя PDP-10 сегодня уже нигде не используется, тем не менее она имеет большую историческую значимость и вызывает немало теплых чувств у лучших программистов, имевших с ней дело. Пожалуй, именно для таких людей и был создан эмулятор PDP-10 для платформы РС, работающий под UNIX-подобными системами и доступный по адресу http://klh10.trailing-edge.com вместе с образами дисков с предустановленными системами ITS и TOPS 10.

Самая значительная современная операционная система - UNIX, была зачата на другом компьютере Digital Equipment Corp. - PDP-11 (советский аналог - ЭВМ СМ4). Эмулятор PDP-11 (и многих других серий PDP, включая PDP-10 и VAX/11) был написан Бобом Супником (Bob Supnik) и доступен по адресу http://simh.trailing-edge.com. Там же можно найти программы, подготовленные для работы под этим эмулятором. Архивы оригинальных редакций UNIX доступны на http://minnie.tuhs.org/PUPS (домашняя страница PDP Unix Preservation Society).


VMware Workstation 4 позволяет вам сделать мгновенную копию текущего состояния системы и сохранить ее на диске. Это позволяет пользователю сделать "откат" к предыдущему сохраненному состоянию системы в любое время. В целом продукт VMware Workstation 4 выполняет очень качественную эмуляцию, обеспечивая высокую надежность систем, запускаемых на виртуальных ПК. При этом их быстродействие в сравнении с реальными машинами снижается очень незначительно.

Windows-приложения под UNIX


Если у вас установлен Linux, но вам необходимо запустить MS Word, не обязательно для этого инсталлировать ОС Windows. Некоторые Windows-приложения возможно запустить прямо из Linux/FreeBSD при помощи эмулятора системной среды Win32 (см. текст выше). Например, для этого можно воспользоваться программой Wine - проектом по разработке свободно доступных библиотек, работающих под UNIX-подобными системами на PC, которые эмулируют системную среду Win32.

Официально Wine поддерживается операционными системами Linux и FreeBSD, до некоторой степени Solaris/x86. Кроме запуска бинарного кода Windows-программ, Wine предоставляет библиотеку winelib, позволяющую перекомпилировать (с минимальными изменениями, а в некоторых случаях - и без них) исходный код приложения, написанного для Windows, и получить UNIX-программу. Сам проект задекларирован в стадии альфа-версии.

Помощь мастера в VMware Workstation позволит легко определить все параметры новой ВМ

В качестве теста была сделана попытка запустить под текущей версией Wine (20030508) Internet Explorer 5.0 под FreeBSD 4.8. Это оказалось сравнительно просто благодаря рекомендациям на http://appdb.codeweavers.com. Тем не менее запустится ли под Wine нужное вам приложение, зависит, с одной стороны, от его популярности (основное внимание авторы кода уделяют наиболее затребованным пользователями MS Office и Internet Explorer), а с другой стороны - удаче. Wine - далеко не полная реализация Win32 ABI, и если ваше приложение использует то, что в Wine (пока что) не реализовано, то этот эмулятор вам не поможет.

Сравнительно недавно у Wine появились потомки, распространяемые уже на коммерческой основе. Это продукты CrossOver Office и CrossOver Plugin от компании CodeWeavers и WineX от Transgaming. CrossOver Office предназначен для запуска MS Office под Linux, CrossOverPlugin - для запуска расширений Internet Explorer под Linux (к примеру, флэш-модуля). Существует CrossOver Office Server Edition, работающий на ОС Linux, Solaris и позволяющий работать с MS Office и Lotus Notes на тонких клиентах.

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

Таким образом, если вам крайне необходимо работать с Windows-приложением под UNIX, вы можете прибегнуть к Wine. В случае если Wine вам не помог, могут оказаться кстати коммерческие модификации Wine, то есть WineX и CrossOver. Действительно полезным Wine (точнее, winelib) может оказаться для быстрого портирования под UNIX программы, написанной с использованием Win32 API.

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


Автор: Константин Белоусов, Олег Пилипенко
Источник: www.chip.ua

 

 
Интересное в сети
 
10 новых программ
CodeLobster PHP Edition 3.7.2
WinToFlash 0.7.0008
Free Video to Flash Converter 4.7.24
Total Commander v7.55
aTunes 2.0.1
Process Explorer v12.04
Backup42 v3.0
Predator 2.0.1
FastStone Image Viewer 4.1
Process Lasso 3.70.4
FastStone Image Viewer 4.0
Xion Audio Player 1.0.125
Notepad GNU v.2.2.8.7.7
K-Lite Codec Pack 5.3.0 Full


Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
Реклама на сайте. Размещая рекламу у нас, вы получите новых посетителей, которые могут стать вашими клиентами.
 
Это интересно
 

Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.