Windowsでデバッガーを書いています。そして、私はそれを使ってデバッグするこの少し役に立たないアセンブリコードを持っています:
global _start
section .text
_start:
mov eax, 1
mov ebx, 2
mov ecx, 3
mov edx, [myVar]
push 0
hlt
section .data
myVar dw 1234h
もちろん、hlt でクラッシュします。
私はコンソールにデバッグイベントを書きます.2回実行して続行した後、私はこれらを持っています:
Process created.
DLL loaded: ntdll.dll
DLL loaded: C:\WINDOWS\system32\kernel32.dll
Exception happened.
First chance exception.
>>> 0x7c90120e EXCEPTION_BREAKPOINT
Exception happened.
First chance exception.
>>> 0x00401017 EXCEPTION_PRIV_INSTRUCTION
Exception happened.
First chance exception.
>>> 0x00401017 EXCEPTION_PRIV_INSTRUCTION
問題は、なぜそのブレークポイント例外が発生するのかということです。特権命令に対してのみ例外が発生することを期待しています。