+ Reply to Thread
Results 1 to 14 of 14

Thread: Исследование PE на не десктопных архитектурах

  1. #1
    JKornev's Avatar

    Default Исследование PE на не десктопных архитектурах

    Всем здарова, пописываю либу и тулсет для работы с PE, пока расчёт ставится стандартно на x86\x64, но подумал что было бы неплохо создать чтото универсальное и опенсорсное под все архитектуры поддерживаемые PE. Собственно нужно нарулить эмуль, для запуска экзешников под разные архитектуры чтоб тестить либу, мб ктонибуть имел дело со следующими архитектурами:
    Matsushita AM33
    ARM little endian
    ARMv7 (or higher) Thumb mode only
    ARMv8 in 64-bit mode
    EFI byte code
    Intel Itanium processor family
    Mitsubishi M32R little endian
    MIPS16
    MIPS with FPU
    MIPS16 with FPU
    Power PC little endian
    Power PC with floating point support
    MIPS little endian
    Hitachi SH3
    Hitachi SH3 DSP
    Hitachi SH4
    Hitachi SH5
    ARM or Thumb (“interworking”)
    MIPS little-endian WCE v2
    подскажите софтец для эмуляции. Недесктопной разработкой не занимался, так что буду признателен любой инфе которая направит меня на путь истины

  2. #2
    keyst0rke's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    Ого, по-моему это слишком круто, что бы браться за это в одиночку. Тут вайновцы сколько лет работают, так и не смогли что-то нормальное создать, а ты один. Не в обиду конечно, но напоминает Попова =)
    Вот сабжевые исходники вайна, там можно посмотреть как они эмулируют PE на никсах, может поможет - http://sourceforge.net/projects/wine/files/Source/
    Делай то, что должен. Дальше будь, что будет.
    (с) Дед

  3. #3
    JKornev's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    Вы о чём-то другом подумали, я пишу библиотеку для парсинга и модификации PE, а не эмулятор ОС. Эмулятор нужен мне для того чтобы тестировать экзешники на перечисленных архитектурах, ОС скорее всего там WindowsCE. Ведь например на большинстве архитектур в отличии от x86\64 критично везде расчитывать правильно выравнивание и т.п.
    Last edited by JKornev; 06-12-2013 at 06:55.

  4. #4
    JKornev's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    Блин что ни кто не в курсе? Оч. жаль (

  5. #5
    500mhz's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    при чем тут тип процессора? формат "ехе" от ОС зависит.

  6. #6
    JKornev's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    Нет, вы не правы, PE напрямую зависит от архитектуры. К таму же чтобы протестить экзешник скомпиленный под АRМ мне нужно ставить WinCE именно на эмуль ARM'a

  7. #7
    500mhz's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    не согласен
    простой пример. у меня на x64 и виндовс и линюкс работают, а формат файлов разный

  8. #8
    JKornev's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    Не бояньте плиз, вот матчасть, там чёрному по белому написаны отличия PE на разных архитектурах и осях, правда описание очень поверхностное

  9. #9
    JKornev's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    PS список архитектур взят именно там если что

  10. #10
    500mhz's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    По вашему непосредственно CPU выполняет роль загрузчика РЕ ?

  11. #11
    JKornev's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    Вы совсем не туда думаете) Смотрите, есть 3 архитектуры IA86, AMD64, IA64 ось допустим винда 7. Если скомпилить экзешник для AMD64 он не будет работать на других архитектурах, причём не только из-за разрядности, часть заголовочных структур будет отличатся. И это только часть подводных камней, например в IA64 все данные должны быть выровнены, иначе во время доступа исключение. Вот чтобы всё эти косяки шлефануть, мне нужен эмуль. Понятно что оно всё завязано на ОС, но если я скомпилю для IA86 под Win2000 оно будет работать и на XP и на Vista и на 7, 8, 9, 10 ... потому что различия в формате PE не зависят от версии ОС, только от архитектуры

  12. #12
    root's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    Собственно нужно нарулить эмуль
    Мб, QEMU чем-то поможет, хотя я думаю его ты в первую очередь нашёл?
    Успех – это путь от провала до провала без потери энтузиазма. (В. Черчиль)

    Не бойся идти медленно, бойся остановиться. (Китайская пословица)

    When you lose fun and start doing things only for the payback, you're dead. (c) TCLH (Phrack 65, Intro)

  13. 2 пользователя(ей) сказали cпасибо:
    JKornev (08-12-2013) Zevs (16-02-2015)
  14. #13
    JKornev's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    Спасибо, то что надо

  15. #14
    keyst0rke's Avatar

    Default Re: Исследование PE на не десктопных архитектурах

    По-моему спор не о чём... Загрузку и валидацию файла производит ОС. Но тот код, что хранит файл исполняется непосредственно процессором (да, я кеп.)
    Если каким-то сказочным образом запустить PE на несовместимой архитектуре, то в лучшем случае вы получите исключение неверного опкода.
    UDP. фак, пока написал пост уже 4 отправили)))
    Делай то, что должен. Дальше будь, что будет.
    (с) Дед

+ Reply to Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
All times are GMT. The time now is 01:31
vBulletin® Copyright ©2000 - 2018
www.reverse4you.org