プログラミング系のネタをまとめていきます。


Windowsがアプリを起動する仕組み

  • 実行可能ファイルは「Microsoft Portable Execute」フォーマット(PEフォーマット)になっている。
  • Win32、.NETに関わらず、アプリはPEフォーマット。
  • PEフォーマットは 「PEヘッダ」+「プログラムコード」

実行の流れ。
  1. Windowsローダーは実行したアプリのPEヘッダを解析する。
  2. 実行に必要なプログラムコードをメインメモリ上にロード。
  3. プログラムのエントリポイントにアクセスし、そこからCPUに実行させる。

PEヘッダの解析


Visual Studio に付属のツール dumpbin.exe で解析できる。

[Windowsのスタート] - [Visual Studio 2010] - [Visual Studio Tools] - [Visual Studioコマンドプロンプト]
を開く。

このプロンプト上で、解析したい.NETアプリのあるフォルダへ移動。

dumpbin xxxxx.exe /headers
で実行。

出力されたヘッダから、メモリ配置情報、エントリポイント、などが分かる。

タグ

Menu

メインコンテンツ

プログラミング

機器

Macツール

各種情報

Wiki内検索

おまかせリンク

Androidアプリ

AdSense

技術書


管理人/副管理人のみ編集できます