CAD日記

主にAutoCADのことについて書いているけど、近頃は投資系ネタに注力している。自動売買、仮想通貨、PC関係、プログラミングなど。@caddiary

コンピュータ全般

アプリの64bit化

投稿日:

アプリの64bitアプリ化が進んでいる。
メリットを以下で整理してみる。
1.実装メモリーを無駄なく使用できて、大きいファイル(特に画像ファイル)を
 扱うときに、メモリー不足による動作制限がほぼなくなる
2.64bit OSで32bitアプリを動作させるためのオーバーヘッドがなくなり、
 多少速くなるらしい
3.なんだかスゴいらしいという評判を得ることができる
これを得るためには、プログラムに手を入れる必要がある。
VisualStudioの構成マネージャーでx64をつくって、ビルドすることから
始めるわけだが、すんなりとビルドが通ることはない。
1.ポインタが64bitになったため、ポインタをint・long・DWORDなどに
 キャストしている箇所を、INT_PTR,UINT_PTRに変更する
2.LPARAMが64bitになったため、LPARAMの代わりにLONGを
 使っている場合はLPARAMに変更する
3.WIN32で分岐処理している箇所があれば、WIN64でも有効に
 なるようにし、またWIN64での分岐処理が必要なところもある
普通の関数で実装しているところは問題なくビルドできるが、
Window回りのクラスについてはビルドを通すのに苦労する。
※VisualStudio環境での話
リンクしている外部ライブラリは、64bit版に変更する必要がある。
もし外部ライブラリに64bit版が存在しなければ、その機能を
あきらめるしかない。
たいていのものは存在するが、UNLHA32.dllは名前が示す通り
64bit版がない。
でも、いまどきLZHの圧縮解凍を行わないので機能がなくなっても
問題ないだろう。
32bitアプリと64bitアプリは、同一ソースで実現できる。
ビルド単位を分けてそれぞれビルドすれば、別のバイナリが
出来上がる。
32bitアプリは、32bitOSと64bitOSいずれでも動くが、
64bitアプリは、64bitOSでしか動かない。
速度についてはあまり期待しないほうがよい。
おいらの計測結果では、64bitアプリが32bitアプリよりも
数パーセント程度速くなっただけだった。

-コンピュータ全般
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

IXY

デジカメ購入。 3台目のIXY。 IXY DIGITAL 900IS 今回の決め手は、手ぶれ補正。 前回購入機種(L3)とくらべると、ややコンパクトさに欠けるが、 手ぶれ補正や顔追随(フェイスキャッチ …

no image

LHA自己解凍書庫

以前、消えゆくLZHという記事を書いた。 そのことが原因になったと思われるトラブルに遭遇したので、レポートしておく。 あるマシンで、おいらのつくったインストーラが動かないという現象がおきた。 少し調べ …

no image

Kernel Debugger DLL

Setup is loading files (Kernel Debugger DLL) と出たままま固まって、しばらくするとエラーが出る。 Windows XPのインストール操作の冒頭の出来事だった …

no image

facebook

世界的にみるとSNSで一番有名なのはfacebook。 日本ではSNSといえばmixiなんてことになっているけれども、 facebookは日本で流行るところまではいっていない。 1年くらい前に作ったア …

no image

サブネットマスク

TCP/IPにおけるIPアドレスの取得方法としてDHCPを利用していれば 何も意識しなくてもよいもので、たぶん実践の場において知識を 問われることのない知識の一つとして、サブネットマスクなんて単語あっ …