HAL

Тема в разделе "WASM.NT.KERNEL", создана пользователем SysProger, 20 авг 2008.

  1. SysProger

    SysProger New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2007
    Сообщения:
    127
    Существуют ли функции-обёртки для команд cli, sti, int 3 наподобие READ_PORT_UCHAR/WRITE_PORT_UCHAR для in/out?
     
  2. patolog

    patolog New Member

    Публикаций:
    0
    Регистрация:
    29 дек 2007
    Сообщения:
    49
    Код (Text):
    1. __forceinline
    2. UCHAR
    3. READ_PORT_UCHAR (
    4.     PUCHAR Port
    5.     )
    6.  
    7. {
    8.     return __inbyte((USHORT)((ULONG64)Port));
    9. }
    это стабег просто.
    так пойдед?
    Код (Text):
    1. #define ASM_CLI _asm cli
    использвать так :

    code;
    code;
    code;
    ASM_CLI;
    code
    code
     
  3. SysProger

    SysProger New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2007
    Сообщения:
    127
    Нужно, чтобы функция была из HAL.DLL
     
  4. reversecode

    reversecode Guest

    Публикаций:
    0
    из hal.dll
    нет
    а смысл?
     
  5. Forever

    Forever Виталий

    Публикаций:
    0
    Регистрация:
    12 апр 2008
    Сообщения:
    244
    Про функции такие не слышал, но зато имеются инструкции компилятора C _enable / _disable.
    Почитать про это можешь здесь http://www.codeproject.com/KB/vista/vista_x64.aspx
    Или в MSDN.
     
  6. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    можешь попробовать KeRaiseIrql (HIGH_LEVEL, &Irql) и KeLowerIrql(Irql).
    не совсем cli/sti, но тебе, я думаю, подойдет.