Разорвать граф.

Тема в разделе "WASM.A&O", создана пользователем Clerk, 11 сен 2010.

  1. Medstrax

    Medstrax Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    673
    Вопрос. Оба потока команд должны укладываться в требуемую модель в точности?
    Или возможно: первый поток call xxxx, второй поток call yyyy? По адресам xxxx, yyyy выполняются независимые процедуры
     
  2. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    medstrax1
    В один блок.
     
  3. Medstrax

    Medstrax Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    673
    тут уже излагали мысль, повторюсь. пусть оба потока есть псевдокод, который исполняет виртуальная машина. в таком случае задача решается. в противном общего решения не видно. Главное вобще то не это, как спросил КК - кого это обманет? Т.е. непонятна цель.
    как академическое упражнение это хорошая задача. Надо давать ее хорошим студентам, чтоб показать что они не сильно хорошие студенты))))
     
  4. J0E

    J0E New Member

    Публикаций:
    0
    Регистрация:
    28 июл 2008
    Сообщения:
    621
    Адрес:
    Panama
    Просто.
    1. Создаем последовательность байт используя PRNG.
    2. Проверяем, обладают ли полученные ветки требуемым побочным эффектом
    3. Если нет, переходим к пункту 1 изменив seed PRNG.

    Правильный вопрос "можно ли это сделать за полиномиальное время?"
     
  5. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    Регистрация:
    30 ноя 2008
    Сообщения:
    933
    Я согласен с J0E, по крайней мере для начала сойдет. Ведь сначала нужно набрать данные а потом думать. Думаю если снабдить брутфорс предварительной проверкой на явные UD-операции (т.е. проходится каждая ветка и по длинам инструкций быстро чекается всякая херь типа gs:/группы call/jump [ofs32]/etc), а затем выполняем каждую ветку под SEH/либо мулятором. Если после прогона все ветки выжили без исключений - в лог, далее смотреть что там и анализировать.

    Полагаю, байтов 8-10 можно посмотреть в "полиноминальное" время (и заодно на машине без аналитики получить сложность таких вычислений).
     
  6. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    генерируем 2 длинные случайные последовательности. проверяем входит ли одна в другую. если не входит - повторяем генерацию.
    вероятность успеха на коротких цепочках и oo времени таки да, ненулевая.