web-dev-qa-db-ja.com

WindowsはCPUアフィニティ設定をどこに保存しますか?

WindowsXPで奇妙な問題が発生しています。起動時に、システムによって生成されたプロセス(サービス、自動実行プログラムなど)は、CPUの両方のスレッドを使用するように設定されます。ただし、エクスプローラー、およびエクスプローラーが生成するプログラムは、「CPU0」のみを使用するように設定されています。

Explorer.exeのアフィニティを両方のスレッドに設定しようとしましたが、次回の起動時に1つしか使用しません。どこか、いつか、どういうわけか、Explorer.exeの設定が変更され、元に戻したり保存したりしたくないようです。

実行時のアフィニティsettingについて質問していないので、msconfig(これはXPです)、タスクマネージャー、またはProcessLassoについては気にしないでください。 m質問Windowsがアフィニティ設定を保存する場所

3
Synetech

これは、次のようなサードパーティのシェル拡張である可能性があります ブログ投稿 。マシン上の他のアプリケーションがエクスプローラー内で実行される拡張機能をインストールし、CPUアフィニティーを設定しています。

CPUアフィニティ設定を保存するWindowsに組み込まれているものはないと思います。

5
shf301

CPUアフィニティは.exeで設定できます。古いバージョンのリソースキットに付属しているimagecfgというプログラムがありました。これにより、exeにアフィニティマスクを設定したり、「ユニプロセッサ」(「任意のプロセッサを選択」を意味する)に設定したり、ラージアドレス対応フラグを設定したりすることができました。

これは、Windowsに付属しているexeファイルではデフォルトでは実行されません。しかし、インストールしたものがExplorer.exeに対してこれを行った可能性があります。

Shf301が言ったように、Shell拡張機能がExplorerのインスタンスに対してこれを行った可能性もあります。 NirSoftのShellExViewツールを使用してシェル拡張機能を熟読(および実験的に無効化)できます: http://www.nirsoft.net/utils/shexview.html

0
Jamie Hanrahan