Холодный reset CPU - как сделать напрямую?

Тема в разделе "WASM.BEGINNERS", создана пользователем 4omin, 23 апр 2008.

  1. Ustus

    Ustus New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2005
    Сообщения:
    834
    Адрес:
    Харьков
    Хм... мне приснилось, или я где-то видел, что винда ребутится через ACPI?
     
  2. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    Ustus
    может быть и ACPI, я смотрел win nt. Сейчас посмотрел более новые версии, юзаются функции менеджмента состоянием питания.
     
  3. rei3er

    rei3er maxim

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    917
    Адрес:
    minsk
    Ustus
    навряд ли, потому как зачем?
    RESET# более быстрый способ
    вот power off точно идет через ACPI
    кроме того, я не уверен, что reboot можно сделать с помощью ACPI
     
  4. 2FED

    2FED New Member

    Публикаций:
    0
    Регистрация:
    20 фев 2008
    Сообщения:
    1.002
    А кто что скажет про команду hlt? слышал что эффект такой же, но на деле ничего не происходит при её выполнение в r0
     
  5. rudik

    rudik Руденко Артём

    Публикаций:
    0
    Регистрация:
    6 дек 2006
    Сообщения:
    302
    Адрес:
    г. Харьков
    hlt - инструкция для ожыдания прерываний. Если флаг IF установлен естестенно ничего не произойдет. Если сброшен - комп зависнет, но не перезагрузится.
     
  6. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    где это ты слышал интересно. нет такой специальной команды чтобы выключить или ребутнуть комп)

    короче юзай ресет через клаву и все.
     
  7. rei3er

    rei3er maxim

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    917
    Адрес:
    minsk
    не факт
     
  8. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    rei3er
    NMI? :-P
     
  9. cppasm

    cppasm New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    923
    А чё не факт? Ну зависнет может неправильное слово, и не комп а CPU выполнивший cli/hlt.
    NMI/SMI обрабатываться будут, но для пользовательских приложений всё будет кончено :)
    Хотя если процессоров несколько то остальные будут дальше работать.
     
  10. 2FED

    2FED New Member

    Публикаций:
    0
    Регистрация:
    20 фев 2008
    Сообщения:
    1.002
    в хоглунде
     
  11. VaStaNi

    VaStaNi Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    203
    Адрес:
    Ukraine
    Метод древний и "совместимый" и по-моему работал еще до PCI устройств...
    Поскольку в РС архитектурах все древнее все "тянется и тянется" наверх в угоду совместимости, то ставка на него верная. Это раз.
    А два, это то что "клава" тут ни причем, это контроллер ее, собственно (порт 64h), а он в южный мост входит. Так что электрически пожалуй, это самый верный способ будет, т.к. скорее всего 64h порт аналогично кнопке действует.
     
  12. rei3er

    rei3er maxim

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    917
    Адрес:
    minsk
    хотя бы
    после выполнения обработчика NMI# управление перейдет к следующей за hlt инструкции
    а NMI# вообще говоря генерируется довольно часто
    например, из-за того, что не вызывается обработчик прерывания сетевого контроллера, может произойти переполнение его приемного буфера, что неминуемо ведет к генерации NMI#
    аналогично с дисковыми устройствами
     
  13. cppasm

    cppasm New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    923
    да ну, откуда такая информация?
    повесь свой обработчик на NMI а обработчик IRQ сетевой карты убери вообще (замени на заглушку).
    и посмотри сколько раз за час работы вызовется NMI.
    я тебе гарантирую что ни разу.
    с диском то же самое. если данные запросили и не читают - ничего не будет.
    не читают и не читают, диску по барабану - напрягов меньше :)
     
  14. rei3er

    rei3er maxim

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    917
    Адрес:
    minsk
    из практики
    не отрицаю, что это справедливо не для всех устройств
     
  15. Medstrax

    Medstrax Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    673
    По поводу triple fault. Сама по себе тройная ошибка приводит только к shutdown' у проца.
    А ресетит его уже чипсет, который ловит shutdown. Далеко не факт, что ловят все чипсеты,
    хотя практика пока этого не доказала ;)
     
  16. k3internal

    k3internal New Member

    Публикаций:
    0
    Регистрация:
    11 янв 2007
    Сообщения:
    607
    Если пройтись по коду от данного адреса трэйсером (достаточно debug.com) или дизасмом, то увидим вот эти самые 2 строчки, что приведены выше топикстартером.
     
  17. cppasm

    cppasm New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    923
    Что абсолютно ничего не доказывает. На другой машине будет другой BIOS.
    Есть машины (точнее наверное были) не совместимые с IBM PC на уровне оборудования, но совместимые на уровне BIOS.
    Хотя для современных ПК код сброса через клавиатуру и через порт 92h будет 100% работать.