Звезда Давида
АрхивКолонка Золотова"Эмуляторы" Microsoft Windows,позволяющие запускать Windows-приложения в других операционных средах,в частности под Linux,разрабатываются давно. На днях миру явлен очередной продукт из этой серии: David,инструмент,построенный на принципиально новом механизме,обещает посрамить конкурентов.
Программные продукты Microsoft на протяжении последней четверти века были и остаются в числе самых популярных. Операционная система Windows занимает среди них не последнее место: по самым скромным оценкам, до 80% всего компьютерного парка планеты работает сегодня под управлением этой ОС. Конечно, чем-то такая ситуация даже хороша. Ведь именно благодаря фактической монополии Microsoft пользователи избавлены от головной боли по проверке совместимости приобретаемого софта с установленной на домашней машине системой. Но и минусов хватает с лихвой. Зависимость от софтверного гиганта слишком высока, а гарантий того, что компания и далее будет придерживаться интересов тех групп пользователей, на которые она ориентируется сегодня, никаких. Кроме того, биология учит (и компьютерная вирусология подтверждает), что большие однородные сообщества подвержены массовым эпидемиям с катастрофическими последствиями: все участники такого сообщества, будь то животные или персоналки на одной ОС, обладают одними и теми же слабыми местами. Есть и другие факторы (дороговизна продуктов от монополиста, инерционность гигантской компании и др.), свидетельствующие в пользу необходимости наличия альтернативной платформы, которая смогла бы использовать багаж Windows, но была бы лишена её слабостей.
История вычислительной техники знает немало попыток эмуляции Windows: ODIN, TWIN, WABI, Crossover Office, Wine - большинство этих названий ничего не скажут современному пользователю, ибо почти все разработки уже канули в небытие. Впрочем, многие из них восходят к одному проекту, который здравствует и поныне, спустя двенадцать лет с момента основания. Это Wine - продукт, часто именуемый эмулятором Windows для UNIX-систем (в частности, Linux). На самом деле Wine - не эмулятор, а нечто вроде программы-посредника, транслирующей системные вызовы Windows-программ в команды, понятные ядру Linux, FreeBSD и некоторых других UNIX-совместимых ОС. Труд разработчиков Wine, что и говорить, адский: Microsoft не считает необходимым документировать свои наработки полностью. Часть сложнейшего программного интерфейса систем семейства Windows, строения файловых форматов, структуры протоколов и многое другое скрыто от общественности. Создателям Wine приходится действовать методом проб и находок, иначе говоря, использовать реверс-инжиниринг там и тогда, где это возможно и не противоречит законам. Благодаря участию тысяч человек и нескольких компаний, в разное время помогавших сообществу Wine (здесь, в частности, отметилась Corel), продукт, начатый в 1993 г., к настоящему моменту способен на многое. Под Wine устойчиво и весьма производительно работают многие Windows-приложения, включая офисные инструменты самой Microsoft. Но работающие над Wine честно признаются: идеал недостижим, и программе всегда будет чего-то недоставать. Ведь темп задаёт Microsoft.
Впрочем, речь о другом. Надеюсь предыдущий абзац дал некоторое минимальное представление о том объёме работ, который требуется проделать для создания качественного "Windows-эмулятора". Нужно это, для того чтобы квалифицированно оценить известие, разнесённое на днях западной прессой. На прошлой неделе никому доселе не известная филиппинская компания SpecOps Labs продемонстрировала журналистам предварительную версию своего программного продукта под названием David. Назначение новинки во многом схоже с Wine: это программа-посредник, позволяющая пользователям Linux запускать Windows-приложения без наличия самой Windows. Изюминка в том, что David называется "принципиально новой попыткой". Со слов представителей компании известно, что примерно за два года работы программистам SpecOps удалось создать некий революционный по своему устройству программный движок, способный заменить Windows едва ли не полностью - и уж точно лучше всех конкурирующих решений. Сделано это следующим образом: специалисты SpecOps тщательно изучили работу Microsoft Windows и не только создали на основе полученных данных свой, альтернативный вариант API-прослойки (лежащей между ядром и приложениями), но и исключили несколько архитектурных упущений, с которыми якобы никак не могли справиться в Microsoft. Так что Windows-программы работают в среде David + Linux быстро и стабильно (устойчивей, нежели под самой Windows).
Увы, проверить заявления SpecOps на практике пока не получится: David - проприетарное решение, код которого закрыт. Выпуск продукта на рынок обещается в скором будущем, пока же прессе явлен демо-вариант, на первый взгляд нормально поддерживающий работу офисных приложений Windows. Учитывая перегретый инвестиционный климат, следует ожидать рождения в ближайшее время очередной волны дот-комов: компаний, пытающихся получить деньги под голую идею, реализовать которую порой нереально. И вот в чём вопрос: насколько соответствуют истине обещания SpecOps? Существует ли вообще в данной области более короткая дорожка к успеху чем та, что избрана создателями Wine? Можно ли усилиями крохотной группы пусть и очень талантливых программистов создать продукт, вобравший в себя все хитросплетения программных интерфейсов всех версий Microsoft Windows? Подключайтесь к дискуссии, обсудим!