1. 程式人生 > >Windows核心情景分析-系統呼叫2

Windows核心情景分析-系統呼叫2

x86後來加入的快速系統呼叫硬體支援,windows則也跟著做了改動,此時如果cpu支援sysenter,則會採用快速系統呼叫的系統呼叫形式。 

快速系統呼叫 sysenter 形式的系統呼叫例項

此時工具生成的NtReadFile為:

此時與int 0x2e指令上是等價的,堆疊這裡pub ebp ,導致esp的值加4, 這裡  call[ecx]將返回地址壓入,esp的值也加4,所以堆疊上面就是一樣的。

 CPU進入系統態

  • CPU執行狀態轉入系統態,具有執行“特權指令”的能力。
  • CPU同MMU共同作用,現在可訪問核心的虛擬地址空間。
  • 程序堆疊從使用者堆疊切換到系統空間堆疊,使用者空間堆疊指標以及其他暫存器壓入系統空間堆疊。
  • 關中斷,查詢IDT,進入中斷訪問程式。
  • 異常和自陷也有中斷向量。

IDT描述符結構