Пользователь
4 февраля 2013 в 04:37

Администрирование → Wine портируют на Android

На конференции FOSDEM, которая проходит 2-го и 3-го Феврая в Брюселле, Александр Джуллиард, лидер проекта Wine, заявил, что Wine будет портирован на Android под ARM.

Wine — это альтернативная реализация Windows API, позволяющая запускать Windows приложения на Linux\Unix и Mac OS. Такие проекты как ReactOS и Cedega тем или иным способом используют Wine.

Александр показал небольшое демо, у которого пока еще есть проблемы с производительностью и несколько других недостатков, но все они будут исправленны перед выпуском финальной версии.





Так что в скором времени счастливые обладатели Android смартфонов смогут побаловать свои аппараты Paint'ом, Word'ом, а может у кого-нибудь даже получится запустить Photoshop. Учитывая то, что флагманы сейчас могут содержать по 4 ядра и 4 гигабайта RAM, я ничуть не удивлюсь этому через пару лет. И конечно же то, что у Александра уже есть наработки выглядит очень многообещающе.

UPD 1: Если верить источнику, то речь идет об ARM версии Android.

Источник: thehackernews.com/search/label/FOSDEM%202013
N/A:">Screw IT @max_mara
карма
–31,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Администрирование

Комментарии (65)

  • –14
    Но зачем? Потому что может?
    И зачем телефонам 4 ядра и 4 гигабайта оперативной памяти?
    • +17
      А почему если Android то сразу телефон? Есть планшеты и приставки к TV. Да и, возможно, PC с андроидом будут тоже распространены.
      • +3
        Да они уже распространены, продают нетбуки с Андроидом…
    • +2
      Я бы очень хотел прийти на работу, вставить свой телефон в док-станцию и работать. Я очень хочу что-бы Ubuntu for Android работал на Asus PadPhone. И очень хочу запускать хотя-бы три-четыре виртуальных машины на своем телефоне и не терять в производительности.
      Вы только представьте какой это потенциал.
      • НЛО прилетело и опубликовало эту надпись здесь
      • –3
        Я бы очень хотел прийти на работу, вставить свой телефон в док-станцию и работать.
        Звучит двусмысленно…
      • 0
        Всё-таки у тебя достаточно редкие потребности. У большинства дома домашний компьютер с домашним окружением (веб, видео, фото, прочие хобби), на работе — рабочий, со своим инструментарием.
        • +1
          Это временные недостатки технологии и нерациональное использование ресурсов. Зачем два (а с телефоном — три, планшет добавит четвертый и т. д.) девайса с универсальным процессором одного порядка производительности обычному человеку? Его домашний компьютер (железо, а софте отдельный разговор) не может решить рабочих задач, а рабочий не может домашних? Множества решаемых ими задач пересекаются лишь частично?
          • 0
            Объедините в один — аккумулятор тоже один останется) И сядет у вас все разом — телефон и планшет.
            Рабочий часто не может решить некоторых домашних, многие любят дома поиграть, допустим. В современные игры. Не у каждого на работе комп может такое потянуть. И наоборот, человек может дома только браузить и в чате сидеть, а на работе требуется рендерить видео, компилять огромные проекты и т.п.
            • 0
              Так или иначе можно собрать компьютер, который будет решать и рабочие, и домашние задачи, а обойдётся дешевле чем два.
              • 0
                Обойдется дешевле и будет портативным?)
                На данный момент — вряд ли. А в будущем — посмотрим. Не стоит забывать, что требования к железу растут вместе с возможностями железа, поэтому есть вероятность, что как требовалось на работе на порядок более мощное железо, чем дома (или наоборот), так и будет требоваться, и опять не упихают это в один мелкий корпус.
    • +15
      Телефон уже давно существует не для звонков :-) Это комп в кармане.
      • +2
        Для меня телефон уже давно существует как комп в кармане, начиная еще с Motorola C380… ;)
        • 0
          Как я вас понимаю!

          Когда мне сейчас говорят «я не могу отправить filename, я с телефона!» — причем заведомо известно, что это андроид я смеюсь)) Почему-то у меня все получалось отправлять с древних SE P900, Nokia N-Gage, Sendo X1.

          Я в то время буквально с ума сходил от того, какие возможности представляют эти телефоны!
  • +1
    Интересно бы взглянуть на само это демо. Будет ли возможность запустить например TotalCommander, а из под него открыть множество приложений и расположить на экране несколько окон? Насколько все будет тормозить на ARM-планшетах, учитывая разную архитектуру? Так то новость очень многообещающая, так как полно чисто виндового софта, который не портировали никогда на Android, но который пригодился бы в работе…
    • 0
      Учитывая разную архитектуру, оно вообще не должно запускаться, без перекомпиляции под ARM. Windows API это одно, а система команд процессора — совсем другое.
      • +4
        Виртуальная машина с эмулятор процессора? Правда, тогда это будет не WINE, а WIE :)
  • НЛО прилетело и опубликовало эту надпись здесь
    • +3
      Я пришёл сюда за этим комментом) Пощупать можете тут: 4pda.ru/forum/index.php?showtopic=246310&st=9999999
      • 0
        VCMI же ещё не играбелен.
        • +3
          Поэтому я и сказал, «пощупать»…
        • 0
          Да вроде играбелен уже. АИ должен быть нормальным
    • +2
      Я пока довольствуюсь этим: play.google.com/store/apps/details?id=net.sourceforge.fheroes2
    • 0
      А перекомпиляет их кто? Вайн — не эмулятор процессора, нужна перекомпиляция. Без исходников толку от этого порта не будет, только опенсорсные виндовые программы запускать.
      • 0
        qemu-user-arm+chroot+wine = работающие x86 приложения на N900. Скорее всего, тут тоже как-то припахают, был же проект по запуску на PowerPC маках.
        • +2
          И толку с этого тогда? Будет очередная красноглазая игрушка, показать «поглядите, у меня винда на телефоне» и забыть.
          Скорость эмуляции удручающая. На КПК под управлением Pocket PC так стартовали 95ю винду, под дос-боксом. Ни на что не годилась, кроме «вау-эффекта».
          • +3
            Эм. Расшифровываю свой предыдущий комментарий.
            qemu-user — это такая штука, которая позволяет запускать системное окружение целевой архитектуры поверх уже работающего ядра. Т. е. в эмуляции нуждается только user-space, что обеспечивает неплохой такой прирост производительности.
            Если же со стороны wine обеспечить эмуляцию только x86-кода виндового exe и его dll-ок, а код самого вайна оставить под ARM, то можно будет вполне комфортно запускать игры конца 90-х — начала нулевых, 4-хядерные процессоры, необходимые для работы яваоси, вполне потянут эмуляцию второго пня, а аппаратное ускорение видео заведётся через нативный OpenGL.
            • +2
              А я расшифрую свой.
              С чего вы взяли, что можно будет «вполне комфортно запускать»? У вас есть результаты тестов производительности?
              «Неплохой прирост» штука эфемерная, самые мощные современные армы даже на нативных приложениях проигрывают стареньким десктопным процессорам, тут даже недавно проскакивал соответствующий коммент, где замеряли производительность на одной и той же программе по вычислению Пи. А здесь на это наложится еще и эмуляция процессора, пусть даже только юзерспейсной части.
              Без тестов ваше «комфортно запускать» выглядит более чем оптимистично и сомнительно.
              • 0
                А еще qemu это бинарный транслятор, он может один раз оттранслировать код и это весьма существенно его скорость увеличит.
                • 0
                  Ну под PPC тоже транслировали, только более топорным методом, совершенно адским — дизасмили, из асма генерили высокоуровневые конструкции (не в прямом смысле декомпиляли, а только чтобы эти конструкции давали такой же машинный код при компиляции, для человека это нечитабельно было), потом компиляли заново. На тогдашних мощностях эта мешанина компилялась целый день)

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

                  В общем, я бы хотел увидеть результаты тестов, так это пустой разговор, может быть хватит производительности, может нет.
                  Но тут еще надо помнить, что вопрос не только в производительности но и вообще в юзабельности приложения, не ориентированного на тач в таких условиях. И то, что для корректного запуска тех же игр, должны будут прикрутить аппаратное ускорение видео во всю эту эмуляцию — я не знаю, сейчас уже реализовали это?
                  • 0
                    Если сделать декомпилятор в LLVM IR, то можно вполне хороших результатов добиться, как мне кажется.
              • +1
                У вас есть результаты тестов производительности?

                На Nokia N900 запускал под вайном древнюю игрульку Lords Of the Realm 2. Подтормаживало, конечно, но после разгона процессора было вполне себе играбельно. Если учесть, то там qemu помимо кода игрульки должен был перемалывать сам вайн и системные линуксовские библиотеки, а так же тот факт, что процессор там по сегодняшним меркам устаревший, вполне можно будет добиться запуска чего-то вроде первого старкрафта или третьих героев.
                • 0
                  Старкрафт было бы интересно увидеть. Правда, для старкрафта есть Stratagus, который нативный…
                  LoR2 выглядит весьма древней (я не играл в нее, но судя по скринам...) — я думал, вы об играх уровня Half-Life 1.
                  А что было конкретно запущено? qemu эмулировал полностью x86, в котором был запущен вайн? Неплохо для 600 МГц.

                  Правда, остается вопрос «нафига оно нужно» — вот Baldur's Gate портировали прямо на iPad, и то управление хромает, а если будет непортированная версия, наверное, особо не поиграешь ни во что, хотя бы просто из-за управления, не предназначенного для тача.

                  • +2
                    qemu эмулировал весь юзерспейс (все сисколы транслируются «настоящему» ядру), т. е. chroot-окружение с сильно ужатой в плане прожорливости гентой, начиная с glibc и libX11, заканчивая wine-овскими библиотеками и самой игрулькой. И там не 600, я его до гигагерца разогнал.
                    • +1
                      А, и там только юзерспейс. Я, было, подумал, что вы там полную эмуляцию запустили.
                      В любом случае, учитывая сегодняшнее состояние всего этого дела, вряд ли такие финты будут популярными, скорее всего останутся в виде статей на хабре и других ресурсах от энтузиастов, большая же часть народа будет довольствоваться киданием птичек в свиней)
    • 0
      И StarCraft первый!
      • 0
        Дык он уже давно есть, разве нет? Stratagus же.

        image
        • 0
          К сожалению у меня старгус вылетат при старте игры. Вроде все по инструкции… У меня перешитый K1 от krook'а.
        • 0
          Увы, это совершенно неиграбельное поделие, которое годиться лишь на потыкаться пару раз.
          • 0
            Чем оно неиграбельно? Управлением?

            В WarcraftII я через стратагус играл, вроде более-менее. Хотя управление тоже несколько хромает.
            • 0
              Нет, оно даже на компе неиграбельно как игра. Движок стратагуса банально не позволяет реализовать такие фундаментальные особенности Старкрафта, как закапывание юнитов, второй уровень высот, зерговский крип… Да много чего, не перечесть. В общем, невозможно на стратагусе сделать клон Старкрафта без его чуть ли не полного переписывания. Что, впрочем, неудивительно, ведь он и разрабатывался изначально как клон движка Вакрафта 2 — он-то там работает практически идеально.
  • 0
    Помнится, к осени прошлого года обещали Libre Office портировать под андроид. А воз, как говорится, и ныне там :(
  • +9
    Крайне важный вопрос, ответ на который обязательно должен быть в тексте статьи: речь идет о возможности эмуляции только в Android для x86, или ARM тоже в деле?

    В вариант насчет ARM-а верится с трудом. А если речь только об андроиде на платформе Intel — то новость почти ни о чем…
    • 0
      +1 В статье этой информации категорически не хватает.
      Но только всё не так безнадёжно, вполне может и на ARM работать через qemu, что-то такое давно пилят wiki.winehq.org/ARM
    • 0
      С другой стороны, Windows есть и на ARM. То есть возможен вариант, что на ARM устройствах будет неэмулироваться Windows для ARM, а на Intel — для Intel.
      • 0
        Разве Wine эмулирует Windows RT или Windows CE?
        • +1
          Будет :)
          • 0
            Не скоро. В приложениях под новые Windows важен WPF, а он слишком сложен, чтобы его повторить на хорошем уровне.
    • 0
      Если верить источнику, то разрабатывается именно версия под ARM
    • 0
      Можно и x86 код исполнять. На n900 это делали. Wine обеспечивает систенмые вызовы от windows, а qemu обеспечивает эмуляцию x86. И да, это не быстро.
  • +5
    Wine реализует только API, так что для запуска программ все равно нужен x86 процессор. Не припомню чтоб фотошоп был под arm

    add:
    уже опередили…
    • –1
      WinAPI для эмуляции все равно нужно. С ним уже можно пробовать эмулировать x86, компилировать имеющийся код под ARM, может даже пробовать перекомпилировать x86 в ARM.
      • 0
        Так-то оно так, если это Ваше приложение и Вы можете пересобрать проект под ARM, но не думаю что этот процесс произойдет быстро с остальным софтом.
      • 0
        wine не эмулирует wineAPI, а реализует его. В частности, wine одна из немногих программ в линукс, которая модифицирует LDT у приложения так, чтобы разные сегменты указывали на разные страницы виртуальной памяти.

        Фактически, помимо поддержки процесса линковки-запуска, wine — лишь набор динамически загружаемых библиотек, а приложение работает нативно, то есть её инструкции напрямую обрабатываются процессором без предварительной «обработки» каким-либо приложением.
        • 0
          Скорее даже не полноценных библиотек, а прокси/адаптеров к соответствующим библиотекам «хоста».
  • +4
    Если wine не хочет внезапно стать эмулятором, то речь идёт про winAPI на ARM'е. И я пока что не припоминаю каких-то программ из-под windows mobile, которых бы мне не хватало.

    Впрочем, обеспечение совместимости — всегда благородная вещь.
    • 0
      Вроде обещали совместимость с WinRT, но там кроме офиса вообще 0 интересного софта без лучших аналогов под Андроид.
      • +1
        Как я сказал, обеспечение совместимости — это всегда благородная цель. Но не всегда имеющая практическую пользу.

        С другой стороны, если, вдруг, окажется, что единственное нужное приложение (какой-нибудь убогий банк-клиент) только под RT работает, то wineRT будет спасением, да. Потому и «благородная».
        • 0
          Ну и разработчикам этих банк-клиентов проще будет, вплоть до официальной поддержки Андроид, путем оборачивания в WINE-RT сразу на стадии релиза.
  • –1
    Photoshop…
    image
  • 0
    Хочу на своём Window N50 нормальную 2ГИС с измерением расстояний (есть только под WinPC)!
  • 0
    А где пост про троллейбус из буханки хлеба?
    • +1
      Экстрималов нет)
  • 0
    Лучше бы поддержку 64 битной архитектуры реализовали, не очень хочется иметь зоопарк из i386 библиотек в системе.
    • 0
      Мне кажется этим занимаются другие люди…

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