Дескскриптор прерывания

Тема в разделе "WASM.OS.DEVEL", создана пользователем Toxasoft, 22 сен 2010.

  1. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    Дайте описание(подробное) дескриптора, или прикрепите простой пример обработки прерываний с подробным описанием на masm. Заранее спс.
     
  2. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
  3. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    А есть без include?
     
  4. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Toxasoft
    Чем это не устраивает ?
     
  5. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    Напиши плиз здесь пример одного дескритора и поищи его.
     
  6. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Код (Text):
    1. ISR_VECTOR  equ 080H
    2.  
    3.     ENTER_DR_ASSIST KiAssist, KiTarget
    4. ISR_0x80 proc C
    5.     ENTER_INTERRUPT KiAssist, KiTarget
    6.    
    7.     inc dword ptr PCR[PcPrcbData + PbInterruptCount]
    8.    
    9.     sub esp,4       ; Old IRQL
    10.     invoke HalBeginSystemInterrupt, HIGH_LEVEL, ISR_VECTOR, Esp
    11.     add esp,4
    12.    
    13.     invoke Isr_0x80_Dispatch
    14.  
    15.     INTERRUPT_EXIT
    16.  
    17. ISR_0x80 endp
     
  7. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    Не сам обработчик а дескриптор который находится в таблице прерываний
     
  8. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Toxasoft
    Ну формат его посмотрите.
    Код (Text):
    1.     DW Младшее слово смещения ISR.
    2.     DW Селектор кодового сегмента.
    3.     DB 0
    4.     DB 10001110B
    5.     DW Старшее слово смещения.
     
  9. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    А пример можешь привести.
     
  10. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    48 F7 08 00 00 8E 6F 80.
     
  11. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    Весело:)
     
  12. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    По сути в дескрипторе содержатся дальний указатель (селектор:смещение) на обработчик прерывания и флаги. Я никогда не кодирую дескрипторы явно, а использую макрос, правда для fasm, но суть от этого не меняется.

    Код (Text):
    1. desc KCODE, handler, DF_INT32 ; P=1, DPL=0
     
  13. fadday

    fadday New Member

    Публикаций:
    0
    Регистрация:
    21 фев 2009
    Сообщения:
    63
    такое ощущение что чуваку охото просто кого то напречь:)
     
  14. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    #13 Да нет я изучаю обработку прерываний в защищенно режиме и где только не искал . У меня ничего не работает!
     
  15. Treant

    Treant Member

    Публикаций:
    0
    Регистрация:
    24 май 2009
    Сообщения:
    261
  16. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    Спс но я читал эту статью и все кроме дескриптора idt мне понятно. И уже почти разобрался. Всем спасибо.
     
  17. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Toxasoft
    А что в дескрипторе может быть не понятно ?
     
  18. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    Младшее и старшее слово смещения. Я так понял что младшее офсет на обработчик.
     
  19. Toxasoft

    Toxasoft New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2010
    Сообщения:
    188
    Младшее и старшее слово смещения. Я так понял что младшее офсет на обработчик.
     
  20. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Toxasoft
    Смещение 32'х разрядное и не помещается в 16 бит. По мойму рано вы за это взялись.)