Разработка загрузочного отладчика...

Тема в разделе "WASM.PROJECTS", создана пользователем MAPTbIH, 25 ноя 2008.

  1. z0mailbox

    z0mailbox z0

    Публикаций:
    0
    Регистрация:
    3 фев 2005
    Сообщения:
    635
    Адрес:
    Russia СПБ
    Medstrax
    ну видишь - ты и сам уже понял, что речь идет о продукте класса вмваре
    такие фишки на коленках не собираются

    MAPTbIH
    скока тебе лет? чё ты уже сделал своими руками? слышал такую формулу - от простого к сложному?
     
  2. Medstrax

    Medstrax Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    673
    В принципе весчь видится попроще чем варя. Все-таки эмулить платформу не надо. Но труд все равно громадный. Идея родилась еще году в 95-96, когда впервые про айс услышал. Я кстати тогда думал что айс именно так и работает :) Но реализовать руки не дошли, да и не дойдут уже никогда. И по всей видимости ни у кого не дойдут. Такие весчи на энтузазизме не пишутся.
     
  3. persicum

    persicum New Member

    Публикаций:
    0
    Регистрация:
    2 фев 2007
    Сообщения:
    947
    Я чего-то не пойму, для чего такая ископаемая ихтиология нужна - dos, реальный режим, прерывания 13h и 21h, таблица векторов, резиденты? Мне кажется, сейчас Винду ставят даже на все станки и приборы с ЧПУ, банкометы тоже под виндой работают... Этож мля конец 80х начало 90х, питер нортон блаблабла...
     
  4. MAPTbIH

    MAPTbIH Member

    Публикаций:
    0
    Регистрация:
    3 янв 2006
    Сообщения:
    84
    Ладно, уговорили - не буду этим заниматься... Тут, кстати, идея пришла в голову: "Как отразиться на моей жизни последующее нажатие клавиш Shift-Delete на выделенной папке MASM32?"...
    P.S. Вопрос: А где тут на форуме кнопочка закрытия темы?
     
  5. Medstrax

    Medstrax Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    673
    Не такая уж и ископаемая. На сегодняшний день адекватных инструментов нет. К примеру есть необходимость отлаживать обработчик SMI#. Или гипервизор. Или какую-нибудь долбаную защиту/руткит, которая скачет между RM/PM/Unreal. Что делать будешь?
     
  6. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    persicum
    Ответ, наверное, один - часто юзают чтобы научить асму во всяких учебниках и в институтах преподают (насколько часто сейчас - не знаю, знаю что бывает. и не редко).
    Ну а свое мнение по этому поводу я, пожалуй, пропущу.

    Medstrax
    Что-то ты разошелся немножко с описанием отладчика, который топикстартер будет писать лет пять ;)

    SII
    Ну мало ли.. может ему загрузчик доса приперло отладить =)
    Правда и до такого инструмента ему, мне кажется, далековато.

    MAPTbIH
    GDT/LDR/DRx в реальном режиме ? о_0

    Или ты последующие действия решил в V86 обернуть?

    Что-то ни один из вариантов мне не кажется подходящим для того, кто только что "в таблице векторов прерываний свои адреса вставлял для их перехвата и резидентные пакостные штуки всякие делал" =/
     
  7. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    Medstrax
    Ошибаетесь, надо. Если отлаживаемая программа выполняет in или out, адресованный некоему порту, что Вы будете делать? ;) Просто дать её выполнить нельзя: отлаживаемая прога не подозревает, что она работает не на реальном железе, и запросто может "убить" отладчик подобными действиями, причём задолго до попытки перехода в защищённый режим. Или те же прерывания BIOS: их надо эмулировать, а не передавать на исполнение реальному BIOS.

    MAPTbIH
    Заниматься действительно не стоит: очень уж сложная задача, хотя, в общем-то, подъёмная (если посвятить ей не один год и не пытаться объять необъятное типа поддержки всего и вся). Но это вообще-то не значит, что с МАСМом обязательно поступать столь жестоким образом :)
     
  8. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Это закончится инсталляцией фасма =)
     
  9. Medstrax

    Medstrax Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    673
    Естественно может. Но эмулить все равно считаю неправильным. Код должен исполняться на реальном железе в этом вся фишка. Если код приводит к "убийству отладчика", то здесь я вижу два решения. 1.Выцеплять такой код ручками. 2.Предусмотреть возможность настройки эмуляции определенных девайсов. В принципе кода, способного уронить отладчик с помощью манипуляций с девайсами может быть не так много. Первое что на ум приходит -
    кейборда. При заблокированной кейборде с отладчиком особо не поработаешь :) Далее таймер. Не знаю как сейчас, а раньше один из его каналов отвечал за refresh памяти. Манипуляции с ним тоже могут привести к краху. Далее DMA. Чтение в режиме DMA к примеру с дискетки в область памяти где расположен код отладчика, тоже все убьет. Что-то сразу ничего больше в голову не приходит. Резюмируя, скажу - если код активно будет бороться с отладчиком, используя различные девайсы - тут только ручками. А обычный код - пусть пишет/читает порты напрямую, процент стандартных операций с девайсами, способных уронить отладчик, очень невелик. Речь не идет о том, чтобы создать абсолютно непробиваемую вещь.
    ЗЫ Про контроллер прерываний забыл (20-21h, и второй, не помню порты). А его вообще сейчас юзают интересно?
     
  10. MAPTbIH

    MAPTbIH Member

    Публикаций:
    0
    Регистрация:
    3 янв 2006
    Сообщения:
    84
    Сейчас один самый важный вопрос: где кнопочка для закрытия темы? Или это у модеров просить надо? Где-то я слышал такую фразу: если человек захотел сделать какую-либо вещь не в корыстных целях, а в целях самообразования и совершенствования своего разума, то он это сделает, рано или поздно, но сделает. Как тему закрыть?!
     
  11. Medstrax

    Medstrax Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    673
    Да нафига? Дай посрачить )))