Вопрос по NMI

Тема в разделе "WASM.ASSEMBLER", создана пользователем rpy3uH, 15 апр 2007.

  1. rpy3uH

    rpy3uH New Member

    Публикаций:
    0
    Регистрация:
    14 сен 2006
    Сообщения:
    503
    В документации от Intel написано что второе (третье) прерывание является немаскируемым внешним преррыванием которое гененрируется APIC, наверно это единственное немаскируемое прерывание. Для чего оно нужно? ведь внешние прерывания генерируются через вектора больше 20h, на которые мы перенаправляем вектора 0-0Fh при переходе в защищённый режим.
     
  2. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Действительно, единственное. Хотя это тоже маскируется отдельно, но стандартным cli оно не максируется.

    Применение в винде:
    На некоторых корпусах есть кнопка "Crash", которая генерирует NMI. Если в винде в реестре параметр CrashOnNmi установлен в еденицу, эта кнопка уронит винду в BSoD. Это на случай, если Ctrl-ScrollLock-ScrollLock не помогает (слетел драйвер i8042prt или просто клава не PS/2).
     
  3. Mika0x65

    Mika0x65 New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2005
    Сообщения:
    1.384
    Добавлю, что это прерывание используется как оповещение о том, что произошел аппаратный сбой. Основная особенность прерывания -- процессор, при получении сигнала на прерывание по входу NMI не опрашивает контроллер прерываний на предмет получения номера обработчика, а сразу вызывает обработчик №2. Это нужно чтобы "избежать контактов" с неисправным оборудованием.