OSDev
http://osdev.ru/

Процессоры
http://osdev.ru/viewtopic.php?f=18&t=1023
Страница 3 из 3

Автор:  Bargest [ 07 ноя 2015, 13:58 ]
Заголовок сообщения:  Re: Процессоры

Цитата:
какая команда в последний раз меняла FPU register ST5

Никак. Только анализировать код и искать нечто похожее.
Цитата:
Также я хотел бы узнать, как раскрутить (т. е. узнать адреса материнских ф-ций) стек.

Ну, чаще всего в начале функции ЯВУ идет push ebp и mov ebp, esp. Поэтому ebp почти всегда содержит адрес в стеке рядом с местом хранения адреса возврата, а если "в уме" делать mov ebp, [ebp], то можно скакать между функциями вверх. Нормальный отладчик часто подсвечивает в стеке те адреса, которые похожи на адреса возврата, поэтому такие прыжки быстро позволяют найти нужное место.
Если же ebp используется где-то иначе, то всё, конечно, порушится, и придется руками определять, насколько глубоко ушли в стек в очередной функции и отсчитывать столько байт вверх, чтобы получить адрес возврата.

Автор:  dixie [ 09 ноя 2015, 14:17 ]
Заголовок сообщения:  Re: Процессоры

Кстати говоря - если вопрос - замедлить софтинку - почему б какой-ньть rmclock не поставить? Там же частота зажимается в несколько раз. Выставить такой режим постоянно - и будет 300-800 МГц, на все ядра - думаю, вполне хватит.

На любом интеле, даже на относительно старых - делитель на 8 есть, на AMD - Pstates.

Автор:  Bire [ 10 ноя 2015, 00:57 ]
Заголовок сообщения:  Re: Процессоры

dixie писал(а):
Кстати говоря - если вопрос - замедлить софтинку - почему б какой-ньть rmclock не поставить? Там же частота зажимается в несколько раз. Выставить такой режим постоянно - и будет 300-800 МГц, на все ядра - думаю, вполне хватит.

На любом интеле, даже на относительно старых - делитель на 8 есть, на AMD - Pstates.

Конкретно с этой прогой возникла след. проблема: неподписаный драйвер RtCore64, без которого она не пашет.

Вообще, я уже пробовал софт для даунклокинга. CPUKiller 3.0 тормозит только систему целиком, что мне не нравится. NTSleep замедлял выполнение всей программы, но максимального замедления именно для нужного мне момента было недостаточно, в то время, как для остальных частей программы оно было избыточным.

Так я решил пойти путём ревёрса. Новости такие: нашёл в настройках регулятор скорости выполнения того самого момента. Значение ползунка сохраняется в бинарный конфиг со значениями от 00 до 0F вместе с ещё тремя парам-ми. Решил отследить, куда попадает этот параметр и на что умножается в программе. Для этого начал шерстить GetFileSize. Можно ли как-то узреть результат работы CALL <somefunc>, идущего после GetFileSize? Конкретно я хочу найти рез-т работы ReadFile/NtReadFile.

Автор:  Bargest [ 10 ноя 2015, 01:58 ]
Заголовок сообщения:  Re: Процессоры

Цитата:
Конкретно я хочу найти рез-т работы ReadFile

Ну readfile читает в буфер. Следовательно, если перед вызовом функции запомнить значение второго параметра функции, сделать step over, и перейти по запомненному адресу, попадешь на начало считанных данных.

Автор:  Bire [ 14 ноя 2015, 22:40 ]
Заголовок сообщения:  Re: Процессоры

В общем, нашёл ф-цию чтения конфига. Там 4 процедуры чтения по 4 байта. Мне нужно отследить судьбу одного из значений, но каждые четыре байта записываются по одному адресу. Есть мысли, куда ещё может писаться это значение?

Страница 3 из 3 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/