Брекпойнт на физический адрес

Discussion in 'WASM.ASSEMBLER' started by Medstrax, Sep 25, 2006.

  1. Medstrax

    Medstrax Забанен

    Blog Posts:
    0
    Joined:
    Jul 18, 2006
    Messages:
    673
    Коллеги, вот вопросом озадачился.
    Если при включенной страничной трансляции одному физическому адресу сответствует несколько линейных адресов (теоретически очень много), то гарантированно отловить все read/write по этому адресу нихрена не получится (если алиасных линейных адресов > 4). Т.е. суть в том, что нельзя поставить бряк на физ. адрес. Я, по крайней мере, решения не вижу. Или как-то извратиться все-таки можно?
     
  2. sergh

    sergh New Member

    Blog Posts:
    0
    Joined:
    Aug 31, 2005
    Messages:
    128
    Location:
    rsdn
    Сомневаюсь. Особенно, если учесть, что физический адрес может быть 36-ти разрядным, а в регистрах места только на 32 бита :)

    Но в отладке не спец, только читал, даже не пробовал пока.
     
  3. Medstrax

    Medstrax Забанен

    Blog Posts:
    0
    Joined:
    Jul 18, 2006
    Messages:
    673
    Да... Смешно и грустно в одном флаконе
     
  4. Medstrax

    Medstrax Забанен

    Blog Posts:
    0
    Joined:
    Jul 18, 2006
    Messages:
    673
    Тут мысль пришла по поводу.
    В принципе, можно такую блуду замутить. Во всех элементах таблиц PTE, к-рые сслаются на требуемый адрес, пометить страничку как not present и в своем обработчике страничных ексепшнов делать разбор полетов. Технология в общем-то не новая. Только геморно это, имхо.