Подтвердить что ты не робот

Окна PID = 0 действительны?

В Windows есть 0 действительный PID для процесса или зарезервирован ли он ОС? Было бы неплохо, если бы вы могли предоставить ссылку на документ, который говорит, что он зарезервирован или что. Спасибо!

4b9b3361

Ответ 1

Откройте диспетчер задач - перейдите на вкладку процессов (возможно, нажмите "Просмотр", "Показать столбцы" и включите столбец PID).

PID 0 - это процесс ожидания системы. Поскольку этот процесс не является действительно процессом и никогда не завершается, я подозреваю, что это всегда так.

Нет документации, доступной для меня, но я уверен, что это всегда будет так.

Ответ 2

Это не указано нигде, но дело доходит до того, как работает таблица дескриптора ядра. Этот же объект используется как для дескрипторов процессов, так и для идентификаторов процессов/потоков. Случается, что значения дескрипторов начинаются с 0x4, а PsInitialSystemProcess - это первый процесс, который должен быть создан, поэтому он получает ПИД-код 4. Простой процесс на самом деле не является процессом, и вы не можете его открыть. Вероятно, у него нет ПИД-кода для большинства целей и целей, но большинство инструментов считают его 0.

Ответ 3

ПИД-код 0 зарезервирован для Idle "psuedo-process", так же как PID из 4 зарезервирован для системы (ядро Windows).

Я не могу найти документацию о том, где это указано, но запрос процессов через любой API (Perf Counters, WMI) всегда даст вам процесс простоя для PID 0.