Сейчас на форуме: Magister Yoda, subword (+9 невидимых)

 eXeL@B —› Основной форум —› Bochs
Посл.ответ Сообщение

Ранг: 31.5 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 18 мая 2008 15:59 · Поправил: smex
· Личное сообщение · #1

Доброго времени суток всем посетителям данного топика.
Собственно вопрос по сабжу - кто нибудь отлаживал эмулятором Bochs софт Ring3/Ring0 под Windows и возможно ли это вообще. Как понимаю нужно копаться во внутренних структурах винды. Может у кого есть нароботки либо идеи по этому поводу.
PS: Блуждание по инету и поиск по форуму результатов практически не принесли. Судя по изучению форума tundra37 в 2006 году пытался отлаживать софт в Bochs, однако в личку до него не достучался.




Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 19 мая 2008 19:58 · Поправил: s0larian
· Личное сообщение · #2

smex, я отодрал от bochs кусок - cpu, и ring3 код отлаживается. У меня одно-поточные проги работают, всё дышит.

То идее, для ring0, тебе придётся проинсталить в bochs весь Windows. Там даже внутрениий отладчик есть.



Ранг: 31.5 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 20 мая 2008 17:58 · Поправил: smex
· Личное сообщение · #3

Так конечно, с внутренним отладчиком разобрался - все просто супер. Ставь любой бряк - эмулируемоая ОС тут же тормозит средствами самого Bochs - просто сказка. Но вот незадача - для отладки Ring3 нужно копаться во внутренних структурах винды и смотреть в коком процессе мы брякнулись, а если не в том, то поставить "умный" бряк - чтобы брякнулись в том. Впринципе имея исходники может попробую посидеть над ними - покрайней мере приобретенный опыт не помешает, даже если ничего не получиться...

PS: Кстати, если твой код "не засекречен", очень было бы интересно взглянуть на него . Оказывается не мне одному пришла в голову идея "об универсальном отладчике"...




Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 20 мая 2008 20:09
· Личное сообщение · #4

smex пишет:
Так конечно, с внутренним отладчиком разобрался - все просто супер. Ставь любой бряк - эмулируемоая ОС тут же тормозит средствами самого Bochs - просто сказка. Но вот незадача - для отладки Ring3 нужно копаться во внутренних структурах винды и смотреть в коком процессе мы брякнулись, а если не в том, то поставить "умный" бряк - чтобы брякнулись в том.

Так в это и беда - для bochs это всё эмулируемый код. Аналогия с JTAG отладчиком - удобно отлаживать kernel mode - например обработчик прерывания. А вот user mode с таким подходом - просто труба.

У меня прога эмулирует user mode до sysenter. То есть, по сути, получился аналог olly т.к. это всё работает поверх windows.


 eXeL@B —› Основной форум —› Bochs
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати