PDA

Просмотр полной версии : IRQ ноутбука x64



RA3XCQ
28.11.2015, 13:12
Здравствуйте!
Может, кто-нибудь подскажет вкратце...
Литература вообще и по программированию в частности зачастую не всегда однозначна. Из книги Р. Джордейна "Справочник программиста персональных компьютеров типа IBM PC, XT и AT, Москва, "Фининсы и статистика", 1992, стр. 33, известно определение векторов прерываний: 153161 .
Например, в ресурсах ноутбука HP Pavilion dv6 на Intel(R) Core(TM) i7-3610QM CPU 2,3 GHz в среде 64-х разрядной операционной системы Windows 7 Домашняя расширенная прерывание одной из видеокарт IRQ 0xFFFFFFFE(-2). У второй видеокарты прерывание IRQ Ox00000010(16).
Каковы сейчас длины векторов прерываний, и где искать вектор прерывания IRQ 0xFFFFFFFE(-2)?
Вообще, я пытался на примере простой программы "прикинуть" возможность перепрограммирования их для платформы x64 (http://forum.qrz.ru/kompyutery-i-seti/43837-programmirovanie-evm-x64.html).

UT4LW
28.11.2015, 13:20
msinfo32.exe пробовали?
153162

RA3XCQ
28.11.2015, 21:12
Там эти прерывания в десятичной системе. Заметил, что они переназначились.

RA3QDP
29.11.2015, 09:47
Вы в своей программе что ли хотите что-то делать с прерываниями ? В windows одновременно работает много программ и что бы было, если каждая из них была бы написана так как Вы хотите и одновременно что-то делала с прерываниями ? Ясное дело - это не возможно.
С железом работает сама windows, в которой пользовательские программы вызывают ее функции управления железом.
Как-то так (в самом упрощенном виде).

RA3XCQ
29.11.2015, 16:52
В "Тетрисе" Яковлева реализовано, да и в Джордейне предлагается переуказывание вектора прерывания в свою программу, перед этим сохраняя содержимое регистров в стэк, выполнять свои действия, а затем передавать управление имеющейся ранее программе обработки прерывания.