Board.KolibriOS.org

Official KolibriOS board
It is currently Thu Jan 23, 2020 10:28 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 124 posts ]  Go to page Previous 1 2 3 4 59 Next
Author Message
PostPosted: Fri Aug 19, 2011 8:15 am 
Offline
Mentor
User avatar

Joined: Tue Jan 15, 2008 11:27 am
Posts: 752
Запускаю в VMWare Player. Получаю "Ошибка: Неподдерживаемая инструкция процессора"


Top
   
PostPosted: Fri Aug 19, 2011 10:56 am 
Offline
User avatar

Joined: Wed Aug 18, 2010 5:38 pm
Posts: 102
Это в версии из моего предыдущего сообщения или из темы про образ для CC?
Может, дело в march=i486 - какой процессор эмулирует VMWare?


Top
   
PostPosted: Fri Aug 19, 2011 11:44 am 
Offline
Mentor
User avatar

Joined: Tue Jan 15, 2008 11:27 am
Posts: 752
Насчёт эмуляции ничего сказать не могу.
Кроме того в KlbrInWin при запуске без параметров программа падает.


Attachments:
ex.png
ex.png [ 3.91 KiB | Viewed 2003 times ]
Top
   
PostPosted: Fri Aug 19, 2011 12:25 pm 
Offline
User avatar

Joined: Wed Aug 18, 2010 5:38 pm
Posts: 102
Спасибо за репорты, буду вечером отлаживать.
И всё-таки: о какой версии бинарника идёт речь?


Top
   
PostPosted: Fri Aug 19, 2011 1:03 pm 
Offline
Mentor
User avatar

Joined: Tue Jan 15, 2008 11:27 am
Posts: 752
Бинарник - последний в этой теме (Чт авг 18, 2011 11:12 pm).


Top
   
PostPosted: Fri Aug 19, 2011 1:32 pm 
Albom
Эмулятор давно уже не показатель и не был им с самого начала. Вот если падает и в самой среде Колибри также, то это однозначный показатель. Лучше проверять в Qemu, Bosh, VirtualBox, VMWare в запущенной Колибри. Используя исключительно KlbrInWin ты часто обрекаешь себя и других на поиск несуществующих ошибок в программе.


Top
   
PostPosted: Fri Aug 19, 2011 2:41 pm 
Offline
Mentor
User avatar

Joined: Tue Jan 15, 2008 11:27 am
Posts: 752
Конечно KlbrInWin не является показателем...
Только что потестировал ещё...
В Qemu работает. В VMWare выдаёт указанную ранее ошибку (при помощи @notify).


Top
   
PostPosted: Fri Aug 19, 2011 2:55 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
"причину странного поведения печаталок хотелось бы выяснить." - а что тут выяснять-то? Как пишут в сети, кривой gcc содержит баг, из-за которого поддержка 64-битных целей запрещает нормальное для 32-битных целей выравнивание стека. В результате gcc генерирует кривой код, в котором он не может просто использовать значения argc и argv из стека - как это сделал бы нормальный компилятор, - а вынужден задействовать регистры. Один из регистров в ходе инициализации портится.

_________________
Сделаем мир лучше!


Top
   
PostPosted: Fri Aug 19, 2011 3:05 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Т.е. проблема в использовании именно gcc-4.4, а в gcc-3 все может быть и будет ОК?


Top
   
PostPosted: Fri Aug 19, 2011 3:08 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
Sorcerer, да, с поправкой "gcc-4.4 с поддержкой 64-битной кодогенерации". Версия, собранная на сервере автосборки, такие параметры кушает нормально.
XVilka, под Колибри есть свой отладчик mtdbg, не требующий шаманства с qemu+gdb+бубен_для_поиска_нужной_программы_в_памяти.
Mario, утверждение "Используя исключительно KlbrInWin ты часто обрекаешь себя и других на поиск несуществующих ошибок в программе." требует доказательств. Я ещё могу поверить в наличие небольших глюков эмулятора при использовании свежих - на тот момент - и редких фич, но этого недостаточно для характеристики "часто".
Code:
seg000:00000E1A                 sub     esp, 8
seg000:00000E1D                 movsd   xmm0, qword ptr [ecx+0Ch]
seg000:00000E22                 movsd   [ebp+var_38], xmm0
seg000:00000E27                 movsd   qword ptr [esp], xmm0
seg000:00000E2C                 call    _fabs
seg000:00000E31                 cvttsd2si edi, [ebp+var_38]

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

_________________
Сделаем мир лучше!


Top
   
PostPosted: Fri Aug 19, 2011 3:16 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Боже мой, вот такое нужно показывать людям, которые кричат: -ааавно этот ваш ассемблер, вот Си лучше!
Попробую собрать gcc без поддержки 64 бит, и перекомпилировать как минимум lua.


Top
   
PostPosted: Fri Aug 19, 2011 3:33 pm 
CleverMouse wrote:
Mario, утверждение "Используя исключительно KlbrInWin ты часто обрекаешь себя и других на поиск несуществующих ошибок в программе." требует доказательств. Я ещё могу поверить в наличие небольших глюков эмулятора при использовании свежих - на тот момент - и редких фич, но этого недостаточно для характеристики "часто".

Автор эмулятора сам говорил об этом. Насчет часто не могу ни подтвердить, ни опровергнуть. Когда я разрабатывал используя KlbrInWin, то достаточно часто ловил глюки которые отношения к собственно программе не имели. Для меня часто это раз в 1-2 дня при активной разработке. После того как Евгений перестал обновлять эмулятор я для себя решил, что пользоваться им в дальнейшем как инструментом разработчика не есть правильный путь. Вот собственно все - на этом предлагаю оффтоп не имеющий к Питону отношения закончить. Успехов.


Top
   
PostPosted: Fri Aug 19, 2011 3:37 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Зачем такие сложности ? -mtune -march


Top
   
PostPosted: Fri Aug 19, 2011 3:41 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Serge wrote:
Зачем такие сложности ? -mtune -march

Jaeger wrote:
Добавил march=i486, не помогает.
Всё чудесатее и чудесатее.

???


Top
   
PostPosted: Fri Aug 19, 2011 3:50 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Значит gcc сейчас делает выравнивание стека независимо от целевой архитектуры. Тем не менее c newlib таких проблем не возникает. Значит это не баг gcc.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 124 posts ]  Go to page Previous 1 2 3 4 59 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited