Open棟梁Project - マイクロソフト系技術情報 Wiki

目次

概要

本ページでは、64bitプラットフォーム移行に伴うアプリケーションの環境移行、ポーティング移行の作業範囲を扱います。

WOW64

通常のアプリケーション

以下に、WOW64を使用する際の注意点を記述します
(詳細は関連リンクの「WOW64 のベスト プラクティス」を参照)。

Webアプリケーション

また、IISのワーカプロセス(ASPやASP.NETなどのWebアプリケーションがホストされる)についても32bit(WOW64)をサポートします。

なお、レガシーASPは、32bit(WOW64)もサポートしてます。
ただし、殆どの場合は、使用するCOMが 32bitのVB COMで開発されているので、
WOW64上で32bitアプリケーションとして動作させることとなります。

VC++

データモデル

最も大きな問題は32bit、64bit間のデータモデルの変更である。
以下、64プラットフォームのデータモデルについて説明する。

今日では、多くの64bitコンパイラがLP64モデルを採用している
(Solaris、AIX、Mac OS X、z/OS のネイティブコンパイラなど)が、
マイクロソフトのVC++コンパイラはLLP64モデルを採用している。

64bitデータモデル

データモデルshortintlonglonglongポインタ処理系
LLP641632326464Microsoft Win64 (X64/IA64)
LP641632646464ほとんどのUnixとUnix風OS (Solaris, Linux, etc.)
IP641664326464?
ILP641664646464HAL
SILP646464646464?

詳しくは、下記の関連リンクを参照。

64bit COM

.NET

以下、.NETのアプリケーションの64bit対応のポイントについて説明する。

100%タイプ セーフな場合

100%タイプ セーフなマネージ コードであれば、そのまま移行可能。

100%タイプ セーフでない場合

100%タイプ セーフでない場合は、Windowsの64bitプラットフォームがLLP64モデルであることを意識してコードを書きなおす必要がある。

コンパイル オプション(構成のtarget platform)

関連リンク

WOW64

Microsoft

その他

移行

MSDN


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS