CAD日記

AutoCAD,DXF,DWG,SXFなどCADのことから、仮想通貨や投資関係、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

HDDをUSB

GroovyのUD-505SA、1500円未満だったと思う。 ケースにHDDを入れてネジを締めるってのは、けっこう骨が折れることだ。 ケーブルでつなげるだけでいいじゃん! ということで買ってきたのがこ …

no image

zipの限界

zip形式による圧縮には限界がある。 ファイルサイズで4GB、ファイル数で65,536と言われている。 これを超える場合、圧縮はできるものの解凍できないということがある。 使用しているアーカイブソフト …

no image

休止状態

仕事や人生を休止するわけではない。 くたびれたWindowsXPを休止状態にして、マシン起動時の激烈に遅い時間を 劇的に短縮しようという試みだ。 おいらの会社のPCは、初期状態から2年半くらいが経過し …

no image

IMEの罠

最近、ある製品のサポートを通してIMEの言語バーに関する問題が、2,3報告されています。WindowsXPでのみ発生し、言語バーが消えてしまったり、いくつかのボタンが消えたりして、日本語入力が通常に出 …

no image

会社がケチなもんでディスプレイが壊れた際の対応がちょーめんどいって話

会社がケチって言ったって会社という人間がいるわけがないので、ようするに上層部がケチだって話。上司から飲みでおごってもらったことないし、会社で何か買おうとしようもんなら、ちょーめんどうな手続きを経て買え …