извинияюсь болван я) установил стэк в то место где код)))) установил я успешно этот стэк... ; стэк база 0x9000, 0x03FF + 1 ; S = 1, данные,...
элемент GDT стэк: ; стэк база 0, лимит максимум ; S = 1, данные, растет вниз, доступен, чтение/запись ; DPL = 0; p = 1; AVL = 00; D/B =...
стэк, может как-то влиять ? у меня он как в real mode указывал на 0x7c00 так я его до сих пор не менял... а при попытки сменить возникает #GP я...
у меня ведь страничная адресация... оно у меня работало, просто потом бац, и перестало)))) и хз почему))) аж смешно... GDT: у меня правильный...
щас дополнительно просмотрел запись в таблице страниц куда она указывает: 0x0009167 ну как и нужно: G = 1 глобальная страница A = 1 бит доступа...
вот элемент IDT dd 0x00083000 dd 0x00008E00 параметры: Смещение: 0x00003000 такое, как и должно быть! указывает на планировщик если jmp 0x3000 то...
окей, щас скачаю, просмотрю в чем может быть ошибка... В обработчики стоит заглушка: вывод красной полоски и jmp $ при прямомо jmp на обработчик...
поправка: mov ax, 0xFFFE ; запрещаем, всё кроме 8-го прерывания(IRQ0) out 0x21, ax и с тиком таймера #GP
Я таким образом запретил прерывания: mov ax, 0xFEFF ; запрещаем, всё кроме 8-го прерывания out 0x21, ax ошибка перестала вылетать, но и...
т. е. мне нужно сделать обработчик 13-го прерывания ? который будет читать из стэка код ошибки ?
если бы я знал как этот код получить... у меня просто VMware выкидывает ошибку, что мол останавливаю тебя и всё... никаких error code нету... у...
вот планировщик, задаётся: mov eax, 0x3107 ; G глобальная страница + стандартные параметры mov [0x00101000 + 3*4], eax ; планировщик (0x3000)...
хм... странно, не с того не с сего снова стало возникать #GP после инструкции sti... с чего бы это ? я даже вынес IDT для удобства в отдельную...
ДА!!!! Спасибо diamond, что не поленился разобраться в моём бредовом однако описани))) И действительно! По ходу дела CPU использовал TLB и поэтому...
вот, как выглядит моя битовая матрица(массив) я использую в своем код размер 16х48 бит принцип таков, я покажу на примере 8х8...
причем, иногда вообще ничего не выводит... в чем может быть этот странный парадокс в такой же схеме выводил фоновое изображение на экран, всё...
изложу корректнее)) пишу свою исследовательскую ОС, включил режим TrueColor32 1024x768 я перешел в защищенный режим и включил страничную адресацию...
Ситуация такая: код срабатывает каждый раз по разному, проверял, что находится в памяти, выяснилось, что там вся матрица верна и действительно там...
хорош, это обязательно я сделаю...
ну об этом тоже захватил краем глаза... =) я решил сделать выбор на 8h (IRQ 0) я использую страницы по 4кб та у которой адрес: 31..22 смещение...
Имена участников (разделяйте запятой).