Win32API質問箱 Build54at TECH
Win32API質問箱 Build54 - 暇つぶし2ch795:デフォルトの名無しさん
07/07/12 23:47:57
>>761
標準の new は、小さなサイズの要求を大量に行うと、
メモリを無駄に使用してしまう。

数年前でも2GBのメモリ空間はかなり窮屈で
無駄にされるとかなり痛いので、
自前のアロケータを書いたことがある。


796:デフォルトの名無しさん
07/07/12 23:51:50
>>793
何故ですか?
センサー毎にハードコーティング要るんじゃかったですか?
そんな馬鹿馬鹿しい事やってられません

797:793
07/07/12 23:56:49
>>796
SpeedFanやEverestなどのメジャーなツールが取っている手段だから。
できるかどうかわからない方法を調べるよりは、
できることがわかっている方法を調べるほうがいいでしょ。

798:デフォルトの名無しさん
07/07/12 23:57:58
>>793
>SMBus(I2C)で温度センサーの値を読むが。
どのようにするのですか?
なんか、デバドラ作らないと出来ないような気がしますが、
簡単にAPIで値読めるのですか?

799:デフォルトの名無しさん
07/07/13 00:00:56
>>795
数年前なら、64ビットが選択肢に入ってたろうに。

自分ならまず設計を見直すよ。
大量にnewするオブジェクトたちが、本当に個別に寿命管理が必要なのか、と。


800:デフォルトの名無しさん
07/07/13 00:11:43
Boost.Pool最強説

801:795
07/07/13 00:20:51
>>799
漏れは、マシンもOSも調達されてから投入されたので、
64bit化しようとは、流石にいえない。
そもそも、実装されるメモリの量も余裕は無かったし。

個別の寿命管理は確実に必要だったと今振り返っても思うよ。

802:デフォルトの名無しさん
07/07/13 00:28:50
つーか温度計る手段がいまだに規格化されてないってのがアホだよな
WMIで得られる筈が>>778みたいな半端な物で形骸化してるみたいだし
今ではデスクトップPCでさえサスペンド/レジュームする時代なんだぜ

803:デフォルトの名無しさん
07/07/13 01:06:26
URLリンク(homepage.mac.com)

804:デフォルトの名無しさん
07/07/13 01:07:30
URLリンク(forum.windowspower.de)
URLリンク(freshmeat.net)
URLリンク(www.footslog.com)

805:デフォルトの名無しさん
07/07/13 02:33:43
>>803
(゚д゚)ハァ?

806:デフォルトの名無しさん
07/07/13 03:01:36
>>787
もしVistaで動かす予定があるならntbackupは廃止されたから
まじめにボリュームシャドウコピーを使う方法も併用する必要がある

807:デフォルトの名無しさん
07/07/13 07:17:28
>>802
計測ってより計測法でも利権が絡むからね。

808:デフォルトの名無しさん
07/07/13 08:05:05
>>801
それは、
何かよほどのこと
って奴だったんだよ、たぶん。

ラージアドレス(/3GB)を使ってもアドレス空間が足りないが、
かといってPAEなんて使いたくないという場合には、
いっそのことプロセスを分けてしまうという手もある。
プロセスを跨ぐオーバーヘッドが巨大だけどね。

809:デフォルトの名無しさん
07/07/13 08:09:20
>>806
強引な荒技もあるよ。

デフラグのAPIを使ってファイルのディスク上の所在を調べて、そこを直に読んでしまうという手もある。
もちろん、そんな行儀の悪いことは、よほどの理由がないとダメだが。

810:デフォルトの名無しさん
07/07/13 17:13:50
CreateProcessでCREATE_SUSPENDEDを利用してNotepad.exeを起動して、
とまってるときのMessageBoxAとMessageBoxWのアドレスと、

その後、ResumeThreadした後のMessageBoxAとMessageBoxWのアドレスが違うような気がするんですけど、
これって気のせいですか?

811:デフォルトの名無しさん
07/07/13 17:17:33
DefineDosDevice()で、特定のフォルダを新規ドライブとしてマウントできるけど、
そのとき、元のフォルダのほうをACLなりEFSなりで自プロセス以外から見えなくすることは可能?




812:デフォルトの名無しさん
07/07/13 17:53:48
>>810
CREATE_SUSPENDEDで作成されたプロセスは初期化が完了している保証は無い

813:デフォルトの名無しさん
07/07/13 18:37:58
むしろ初期化終わってないのが普通じゃない?
この段階だとGetModuleFileNameExのようなAPIが失敗するもんで、
どうやってこの初期化だけを完了させるのか知りたかったりする
(forでResume/sleep/Suspendを細切れにしてまわしてた)

814:デフォルトの名無しさん
07/07/13 18:45:57
PEヘッダ解析して、PE.EntryPointのアドレスを書き換えるか、
ブレークポイントをしかけておくってのはどうだい?

815:デフォルトの名無しさん
07/07/13 19:50:28
CREATE_SUSPENDEDで止まっているときに色々やるのはオススメしない。

Windowsのサービスパックで挙動が変るのならまだしも、
WindowsUpdateで配られるモジュールのアップデートで挙動が変ってしまうから。

安全なのはプロセスのエントリポイントを乗っとること。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch