トップページ > プログラム > 2015年07月08日 > 88H8yWBh

書き込み順位&時間帯一覧

8 位/206 ID中時間01234567891011121314151617181920212223Total
書き込み数0002002100000000000000005



使用した名前一覧書き込んだスレッド一覧
,,・´∀`・,,)っ-○○○
,,・´∀`・,,)っ-○○○w
アセンブラ初心者スレッド

書き込みレス一覧

アセンブラ初心者スレッド
733 :,,・´∀`・,,)っ-○○○[]:2015/07/08(水) 03:10:34.57 ID:88H8yWBh
> exeをロードした後セグメントの値をゴリゴリ書き直したり

そんなん知ってるが?てかJITのコード書いてましたが?
ユーザーモードでコードセグメントの書き換えを行うには特別なAPIを呼び出す必要がある上
キャッシュのinvalidationを都度やる必要があるからペナルティを伴う

その時点のEIP値をとった方が遥かに柔軟だしそもそもそんなコードの書き換えしてまで
call命令をわざわざ回避する理由がねーぢゃん
アセンブラ初心者スレッド
734 :,,・´∀`・,,)っ-○○○w[]:2015/07/08(水) 03:25:16.20 ID:88H8yWBh
んで、自己書き換えでオフセットの整合をとるために結局EIPを取る必要があって
特に32ビットではCALL命令を使う必要がある、と。

本末転倒だな
アセンブラ初心者スレッド
737 :,,・´∀`・,,)っ-○○○w[]:2015/07/08(水) 06:24:13.84 ID:88H8yWBh
> 86はセグメントと内蔵MMUがあるからそこまでしなくてもリロケータブルになる。
> 別に1バイト単位でリロケータブルにしても意味ないからね。

うわークソ老害が姿を表したぞ
おま絶対50歳超えてるだろ


> 86はセグメントと内蔵MMUがあるからそこまでしなくてもリロケータブルになる。
> 別に1バイト単位でリロケータブルにしても意味ないからね。

このおじいちゃん再配置可能の意味をものすごい古い意味でしか知らないようだけどVista以降のOSは触ったことがなさそうだな 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)

アセンブラ初心者スレッド
738 :,,・´∀`・,,)っ-○○○w[sage]:2015/07/08(水) 06:30:07.39 ID:88H8yWBh
まあとりあえず今のWindows(DEP+ASLR前提)環境で通用する知識を頼むはwww
アセンブラ初心者スレッド
739 :,,・´∀`・,,)っ-○○○w[sage]:2015/07/08(水) 07:54:58.71 ID:88H8yWBh
WindowsというよりMacのほうが先か

それでなくとも*NIXでforkとかやるのにEIP/RIPの取得は必須なんだが
(子プロセスで完全なコピーをとるからね)
結果的にスレッドが割り当てられるアドレスをバイナリ生成時に決め打ちすることができないんだよ

おじいちゃんは所詮DOSとかの時代のシングルタスク知識止まり


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。