|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Июл 7, 2004 10:03:06 Вот писал осю и столкнулся с такой траблой: В этом участке кода: mov eax,kernel ;линейный адрес ядра (метка) mov edi,0x200000 ;куда копировать mov ecx,0x4000 ;размер ядра rep stosd Надо скопировать ядро по адресу 0x200000 Так вот, при отладке Bochs'ем ошибка происходит при выполнении stosd Звучит примерно так: Error: (0) print_guard_results: guard_found ? (stop reason 0) И после этого он вечно выполняет stosd, ну и улетает где-то там. |
|
|
Дата: Июл 7, 2004 11:12:04mov esi,kernel mov edi,0x200000 mov ecx,kernel_sz/4 cld rep movsd Ку? |
|
|
Дата: Июл 7, 2004 12:33:14 Так я тоже пробовал. Это был первый вариант. Не прокатывает.Вообще-то Буч ведет себя странно, может я чего не понимаю.Иногда он выдает ошибку после первого повторения movsd, иногда после n-ного. Странно, раньше я писал такой кода на НАСМе и ничего, работало.... |
|
|
Дата: Июл 7, 2004 13:12:23 mov eax,kernel ;линейный адрес ядра (метка) mov edi,0x200000 ;куда копировать mov ecx,0x4000 ;размер ядра rep stosd Надо скопировать ядро по адресу 0x200000 ну и где здесь копирование ? Тут написано заполнить область памяти с 0x200000 длиной 0x4000 значением eax (т.е. offset kernel). Да с direction непонятки... |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.096 |