Являются ли идентификаторы PID "System" и "System Idle Process" постоянными в Windows? - PullRequest
3 голосов
/ 15 апреля 2010

В нескольких системах Windows XP, на которые я смотрел, «Процесс простоя системы» всегда имеет PID 0, а процесс «Система» всегда имеет PID 4. В программе Windows, которая перечисляет процессы, безопасно ли распознавать эти процессы по этим PID, или они могут быть разными в некоторых обстоятельствах?

Ответы [ 2 ]

3 голосов
/ 15 апреля 2010

У меня есть производственный код, который предполагает, что эти PID являются статическими, и он работает на XP, Vista и Win 7. Хотя не уверен, что это официально поддерживаемый метод!

Еще пара способов решения проблемы:

  1. Сортировка списка активных идентификаторов PID по возрастанию - первые два должны быть System Idle и System.
  2. Проверьте родительский PID данного процесса - родительский PID системного процесса и системного процесса равен 0.
1 голос
/ 15 апреля 2010

Я никогда не видел, чтобы они получали какой-либо другой PID, и я видел много менеджеров задач в мои дни технической поддержки. Кажется довольно постоянным для меня. Гарантируется ли это при любых обстоятельствах? Я действительно не уверен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...