[過去ログ] くだらねえ質問はここに書き込め! Part 233 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
109(1): 2018/09/21(金)23:31 ID:b53nuh9z(1/2) AAS
>>106
おそらくサポート外だろうが出来る。逆もできる。windowsでも出来る。ただ、既存の32bitライブラリをロードして使うには、多分ld.soとかlibc.soの改造が必要。
コードセグメント0x33が64bit、0x23が32bitで、これはamd64のlinuxやwindowsでは常に用意されている。だから、アセンブリではセグメント間のfar call/far jmp/far retを行えばよい。システムコールも使える。
これはwindowsでも同じだから、winのHeaven's Gateあたりが参考になると思う。
118: 106 2018/09/23(日)16:12 ID:Q39ZeY2D(1) AAS
>>109-110
おぉーマジありがとう。一つ疑問が解決した
プロセッサレベルで64ビットモードと互換モードは容易に行き来できるらしいという情報まではたどり着けていたんだけど
OS上のユーザーアプリケーションレベルでそれができるか否かという情報がわからなかった
ちょっと長くなっちゃうけどやりたいことを書くと
今時のプロセッサやOSが当たり前に持っている仮想メモリ機能を使って他32bitアーキテクチャ用ベアメタルコードをソースコードレベルで
デバッグできないかと考えた
モニター用のコードはAMD64にコンパイルして4GBより上にロード、4GBより下にx86にコンパイルしたデバッグ対象のコードを展開して
別スレッドとして実行。I/Oレジスタ類はメモリマップドなのでページフォールトをハンドリングしてエミュレート(UNIX/Linux系なら
デバイスドライバを書いてmmapでマッピングしてエミュレートもできそう)
省7
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.040s