>>920
OSがプロテクトモード(保護モード)で動作して、アプリが保護違反をしてないかCPUが常に監視
しながら動くようになってからはその辺の事情は特に変わってない。なお、
スタックフレームは、
関数名 proc
push ebp
mov ebp,esp
sub esp,定数値
・・・
mov esp,ebp
pop ebp
ret
関数名 endp
のような形式になっていて、もしローカル変数として配列を確保して、それが
バッファオーバーランした書き込みを行った場合、上記の pop ebp で変なアドレス
がebpに入り、retで変なアドレスへ飛ぼうとする。変なアドレスに飛ぼうとしたら
そこで保護例外が起きる確率が高くなる。また、上記の関数の構造は、関数を
呼び出した親の関数でも同じなので、そこでも、祖父の関数へ戻る際、
最後の方で mov esp,ebpという命令が実行される。しかし、今言ったように
ebpに狂ったアドレスが入ってしまっていれば、この命令で esp = ebp
とされようとしたときにセグメンテーション・フォールトが起きる可能性が
高くなる。espへの代入は、保護に関して他のレジスタへの代入とは違う
特別な処理がされており、ss というスタックセグメントの範囲から逸脱していないか、
また、espが4で割り切れる値になっているかどうかのチェックが入る。
それは普通のページング・フォールトのチェックだけよりも調査項目が増えるので
より厳しくなる。
探検
C言語なら俺に聞け 152
レス数が900を超えています。1000を超えると表示できなくなるよ。
926デフォルトの名無しさん (ワッチョイ b17c-JGwf)
2019/08/13(火) 10:26:31.42ID:rjuNmU8i0レス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- 緊急地震速報 東北 北海道 [KingFisherは魚じゃないよ★]
- ■緊急地震速報 東北 北海道 最大震度6強 [人気者★]
- ■津波警報発令 3m 青森太平洋沿岸 岩手 北海道 す ぐ 逃 げ て [人気者★]
- 【地震速報】青森県で震度6強 沿岸部に津波警報 [ぐれ★]
- 津波警報発令! 青森太平洋沿岸 岩手 北海道太平洋沿岸中部 すぐ逃げて!!! [KingFisherは魚じゃないよ★]
- 【速報】高市総理が官邸入り [Hitzeschleier★]
- 地震
- 津波警報 3メートル 早く逃げろ!!!!!!!! [579392623]
- 地震 ★2
- 【速報】高市早苗、起床 [779938112]
- 【高市画像】3mの津波、結構やばい❗❗ [573041775]
- 大地震
