ReactOS: загрузка на ARM

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

    image
    Картинка кликабельна.



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

    via ReactOS Twitter
    Фонд ReactOS
    198.14
    Операционная система
    Support the author
    Share post

    Similar posts

    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 63

      +20
      Ну вот, а то всё «Windows Phone», «Windows Phone»… ;-)
        +13
        >Теперь эта операционная система способна запускаться и на ARM-архитектуре.
        все таки скорее — «Теперь загрузчик способен запуститься на ARM»
          +3
          Работы по портированию ведутся уже очень давно, очень скоро и сама ОС будет сколько-нибудь работоспособной на АРМ.
            +5
            Ну да, ОС будет работать, а приложения — нет.
              –1
              .NET
                0
                Не дотнетом единым…
                +1
                У разработчиков порта ARM стоит цель сделать ReactOS как можно более платформенно независимым, поэтому много asm кода переписывается на си, ядро улучшают в целом, где необходимо. Так что большинство приложений думаю будут работать на нетбуках с ARM процессорами
                  0
                  Простите, большинство каких приложений? Если с открытым кодом и без привязки к x86 в том или ином виде, то да, скорее всего всё прекрасно будет работать. А пока обычный-то вариант ReactOS не способен запускать большинство приложений под Windows.
                    0
                    Ну альфа же :)
                    Незнаю какие программы привязаны к х86…
                      –2
                      ВСЕ Windows only приложения!!!! ВСЕ!!!! Даже opensource! К примеру пустите мне Миранду на win mobile.
                      А не windows only приложениям React OS не нужна.
                        +1
                        Не нужно брызгать слюной, заляпаете все вокруг. Если подать миранде аналог винапи с нужными вызовами для построения интерфейса, то она будет прекрасно работать, как и любое другое приложение «windows only»
                          +1
                          Вы глубоко неправы — ассемблер arm и x86 сильно отличаются.
                            0
                            Не спорю, но миранда написана не на асемблере
                              +1
                              Но тем не менее она не портабельна на другие аппаратные платформы. Её даже проблема endian'а зарубит на корню. И таких приложений в винде большинство.
                              Портабельными могут быть разве, что .NET аппликухи, да изначально кроссплатформенные, но кроссплатформенным прогам инвалидная коляска в виде ReactOS не нужна.
                                0
                                Хорошо, давайте пример:
                                form = new Form('title', params);
                                button = new Buttom( 'label', params, callback );
                                form.addElement( button, 100, 100 );
                                form.show();

                                Допустим это мое гипотетическое приложение (я не помню какие там функции в винапи, поэтому вот так будет). Я переношу проект на другую платформу где есть класс Form и Button, которые принимают те же параметры и возвращают такие же классы/структуры.
                                Вопрос: Почему мое приложение не должно работать?
                                  0
                                  Такое то будет кроссплатформенным. Но Вин софт то не такой в основном. У любителей паковать указатели в инты могут проблемы возникнуть, на armeb вообще дофига софта сразу отвалится внезапно. Все любители asmа сразу в лес пойдут.
                                  Плюс платформы не только размерами типов отличаются, из-за union'ов могут сразу баги полезть, reinterpret_cast или c-style каст может отличаться.
                                    +2
                                    Писать приложения нужно правильно, проблем не будет :)
                                      0
                                      О чем и речь, что вин онли софт редко когда правильно пишут.
                                  0
                                  Там нету проблемы endian'а. Ибо все нормальные люди уже давным давно BE, и ARM тоже. LE используется для всякого Legacy-кода, которого всё меньше.

                                  В общем, Mirinda всяко перекомпилируется. И какой-нибудь Firefox тоже.

                                  Может быть, конечно, ребята из ReactOS расчитывают, что какой-нибудь Adobe перекомпилирует Photoshop?
                                    0
                                    >>Там нету проблемы endian'а. Ибо все нормальные люди уже давным давно BE, и ARM тоже. LE используется для всякого Legacy-кода, которого всё меньше.

                                    Windows NT was designed around Little Endian architecture.
                                    Больше не пишите этого бреда… windows как и linux как и вообще x86 это little endian.

                                    Firefox это кроссплатформенное приложение, в отличии от Миранды, которая большими болтами прибита к win32 ;)
                                      0
                                      ЗЫ
                                      armel тоже куда чаще armeb'а встречается ;)
                                        0
                                        Ой. Точно, спасибо за поправку. Little конечно же. Я имел в виду именно то, что младший байт идёт первым. Но суть от этого не меняется, все давным давно уже перешли на один вариант раскладки, а второй остаётся в сложных процессорах для совместимости со всяким насладением.

                                        Кстати, зачем кто-то заминусовал? Непорядок.
                                    0
                                    Значит, её надо будет минимум перекомпилировать.

                                    А там уже возможны другие проблемы — другие размеры указателя/int, баги в reactos, etc.
                                      0
                                      Да, это уже больше похоже на проблему чем: «ВСЕ Windows only приложения!!! ВСЕ!!! Даже opensource!».
                                      Но в 80% случаев стандартные пользовательские приложения делают нечто такое:

                                      int i = 4;
                                      int q = 0;
                                      for( q = 0; q < i; q++ )
                                      {
                                          // do something;
                                      }
                                      

                                      при правильном компиляторе длины, размеры указателей и т.д должны минимизировать проблемы до полного искоренения оных… нет?
                                        0
                                        Почему же тогда столько проблем при переходе на x64 из-за sizeof(int) != sizeof(size_t) && sizeof(int) != sizeof(void*)?
                                          0
                                          Я не знаю =) я веб, меня просто интересовал нормальный ответ на вопрос в чем причина а не фраза «winonly == onlywin»
                                            0
                                            Вот десктоп софт, особенно старый, писался на странной смеси высокоуровнего и низкоуровневого программирования без должной квалификации программистов. Для примера полазайте по сырцам Миранды.
                                            Там даже не С++, а непонятное месиво, которое окрестили «Си с классами».
                                            code.google.com/p/miranda/source/browse/trunk/miranda/protocols/IcqOscarJ/oscar_filetransfer.cpp
                                            И вот подобного кода в вин онли приложениях over 9000.
                                          0
                                          Щас… over9000 вин софта делает еще вот так
                                          a = (A*)(b);
                                          любят штуки сравнивать знаковые и беззнаковые, любят делать портянки макросов. А еще любят юзать union'ы. Особенно уродцы типа MFC этому способствуют. Ну и конечно можно отстрелить себе ноги еще over 9000 способами, которые на некоторых платформах случайно будут стрелять мимо ноги.
                                  +2
                                  Win Mobile не является прямымпортом Windows на ARM, в отличие от ReactOS
                                    0
                                    Была бы Миранда правильно написана, то была бы легко портабельной.
                                    0
                                    Ну собственно миранду запускали на WM. Не без геморроя, мягко говоря, но она запускалась.
                                      0
                                      Ну её и на amd64 даже запускают и вроде даже порт спустя 7 лет! после появления этой архитектуры на рынке уже вполне рабочий.
                              0
                              При желании разработчиков приложений есть winelib. Впрочем, это больше для запуска на arm-линуксах.
                              Впрочем, всегда можно будет перекомпилировать.
                          0
                          Интересно, а на фига оно? Виндовые приложения под ББ все равно пересобирать придется, а приложения с WM тоже скорее всего без допиливания операционки не пойдут.
                            +2
                            ну, в общем, да
                            вин32 вне х86 — бессмысленно.
                              0
                              Вот если бы они реализовали WM api и сделали достойную замену глючной WM, да и несколько лет назад (когда WM была на пике), пока не было Андроида, я бы им лично памятник поставил. Но это по сути дела другую ось писать надо с названием типа ReactMobile :)
                              +1
                              Надо запилить coredll.dll, и, если они не пинают ядро, то вполне себе спокойно запустятся.
                                0
                                А куча длл этих апликух с x86 кодом как на арме гонять?
                            +5
                            Поздравляем команду ReactOS) И ждем, ждем, ждем)
                              –5
                              Ну и зачем запускать эмулятор винды, когда для арма есть полнценный линукс? Все равно виндовой софт не пойдет.
                                +3
                                Что такое «эмулятор винды»? O_o
                              –5
                              и кому оно нужно?
                                +12
                                ReactOS вообще пишется Just for fun, если кто не в курсе.
                                –7
                                чуваки поражают своим упорством — 15 лет уже пилят проект на стадии альфа-версии
                                  +14
                                  Вы, в свободное от работы время, быстрее напишите?
                                    +1
                                    Активная разработка, если я правильно помню, ведётся последние 2 или 3 года. До этого времени у них был продолжительный застой.
                                      0
                                      интересно, откуда у людей хватает ума минусовать факты? вы еще наверное и на письма со спамом отвечаете?
                                      0
                                      кстати, как там у вас с дотнетом?
                                        +2
                                        Будет использоваться mono как открытый аналог, но в будующем и сам дотнет будет устанавливаться без проблем, как вариант
                                        +1
                                        а что это за девайс такой с клавиатурой?
                                        +2
                                        > Загрузчик отрабатывает полностью и без ошибок, после чего корректно обращается к ядру и передает ему управление.
                                        >

                                        После чего система зависает? Из видео, к сожалению, непонятно загрузилось ли ядро…
                                          +1
                                          А вообще если дело за пересборкой приложений под архитектуру и дальше все будет работать — то это отлично :-)
                                            0
                                            Ага размечтались… вин софт настолько испещрен x86-only костылями, что придется пол софта переписывать.
                                              0
                                              Ну да. А раз уж переписывать, так уж сразу на кроссплатформенный тулкит. Любой. И зачем тогда ReactOS?
                                          +1
                                          Похвально конечно, только вот нафига оно нужно — не понятно. Ну разве что just for fun, для опыта девелопмента под ARM, да долгими зимними вечерами в черви поиграть с рабочим столом ReactOS. Никаких реальных win32 приложений без эмулятора x86 все равно запустить не получится, то есть тот-же Wine, только с еще большими костылями (архитектуры-то разные). Странно это все… Лучше бы все-таки допилили x86 версию хотя-бы до беты, сейчас даже голая ReactOS сразу после установки — это же тушите свет. Один только GUI чего стоит — шрифты сикось-накось, баги с отрисовкой окон, иногда наложение кнопок на чекбоксы, глюки с перерисовкой окон и меню, да что я рассказываю, сами все наверняка видели. Вообщем не знаю, не знаю…
                                            • UFO just landed and posted this here
                                                0
                                                выше писали — just for fun )
                                                +4
                                                ReactOS on ARM преследует несколько другие цели, чем, перефразируя некоторые вышесказанные комментарии, «запуск Adobe Photoshop на ARM-нетбуке». Истина как всегда где-то там, и когда придёт время — увидим.

                                                Также, для прояснения ситуации: конечно же WinAPI программы, скомпилированные под x86/x64 не смогут запускаться на ReactOS on ARM по очевидным причинам. Перекомпилированные — да, смогут. Кроссплатформенные, исходя из названия — тоже.

                                                Only users with full accounts can post comments. Log in, please.