プロセス識別子(別名PID)がWindowsでどのように生成されているか知りたいと思います。異なるマシン間でユニークですか?たとえば、私のFirefoxプログラムに現在割り当てられている5856 IDを考えてみてください。別のマシンの下で同じ実行可能イメージと同じですか?Windowsでは、カーネルモードでPID(Process Indentifier)がどのように生成されますか?
答えて
プロセス識別子は、異なるマシン間で一意ではありません。それらは、後のプロセスのために同じマシン上で再利用することができ、同じ実行可能ファイルの2回の呼び出しの間で同じではありません。
どのように生成されているか気にする必要はありません。確かなことは、プロセス識別子が実行中のプロセスを一意に識別していることだけです。つまり、一度。
プロセス、スレッド、およびカーネルハンドルIDは、共通のルーチンから来ています。技術的にはこれはDWORDですが、私が65,536を超えて最後に見たときは覚えていません。それらは再利用することができ、単なるカウンタベースのメカニズムです。
私はこのようなプロセスをWindows 10で1回見ましたが、6桁のPIDもあります。しかし、これはまれです。 –
プロセスはカーネル内のオブジェクトとして管理され、HANDLEを介してシステム内の他のすべてのオブジェクト(イベント、mutex、セマフォ、タイマーなど)と同じ方法でユーザーモードにエクスポートされます。
したがって、プロセスIDは実際にはグローバル処理テーブル(実装の詳細としてのPspCidTable)で管理されているオブジェクトを処理するためのハンドルです。面白いことに、スレッドはオブジェクトとしても管理され、このテーブルにも挿入されます。スレッドIDは実際にはスレッドオブジェクトのハンドルにすぎません。
-scott
- 1. SIGKILL init process(PID 1)
- 2. Ring0(カーネルモード)デバッガはどのように実装されていますか?
- 3. どこで/どのようにvsftpdのhtmlコードが生成されますか?
- 4. スプリングデータcouchbaseではどのようにIDが自動生成されますか?
- 5. カーネルモードでsys_sendto()を使用するにはどうすればよいですか?
- 6. jQueryのドキュメントはどのように生成されますか
- 7. スリーステートセルオートマトンのルールはどのように生成されますか?
- 8. このクエリはどのように生成されますか?
- 9. マーチングキューブトライアングルテーブルはどのように生成されますか?
- 10. セッションIDはどのように生成されますか?
- 11. GAEデータストアキーはどのように生成されますか?
- 12. Paths_pandoc.hsはどのように生成されますか?
- 13. OAUTH2ユーザーIDはどのように生成されますか?
- 14. シュリンクラップファイルはどのように生成されますか?
- 15. trelloで生成されるIDはどのように生成されますか?
- 16. pythonホイールでDESCRIPTION.rstの内容がどのように生成されますか?
- 17. ChromeでURLのサムビューがどのように生成されますか?
- 18. firebaseアナリティクスでは、user_engagementイベントはどのように生成されますか?
- 19. devモードでCordaノードのキーストアはどのように生成されますか?
- 20. linux tmpfsでinode番号はどのように生成されますか?
- 21. 状態[:pid]で渡すメッセージが失敗し、新しく生成されたpidが動作します
- 22. APIドキュメントが生成されますどのように@ http://api.highcharts.com/
- 23. 検証属性が生成されないようにするにはどうすればよいですか?
- 24. Rplots.pdfが生成されないようにするにはどうすればよいですか?
- 25. libtoolカスタムスクリプトはconfigureによってどのように生成されますか?
- 26. 静的クラスのデータが生成され、一度だけ生成されるようにするにはどうすればよいですか?
- 27. VS2010コード生成機能はどのように構成されますか?
- 28. Windows Process Activation Serviceがアプリケーションプール設定ファイルの生成に失敗しました
- 29. RingoJSでデーモンプロセスはどのように作成されますか?
- 30. セッションはどのようにJSPで作成されますか?
どのような基準で生成されているのですか? –
いいえ、これは文書化されておらず、Windowsのバージョンやサービスパックやアップデート、または時刻や月面によって異なります。 :) – villintehaspam
それは非常に有益だった、特に "月の段階"セクション:) –