¿Windows 7 reutiliza las ID de proceso?
La razón por la que hago esta pregunta se debe a mi experiencia de que Windows XP y Linux nunca parecen generar ID de proceso superiores a 20-30k. Sin embargo, mi máquina con Windows 7 alcanzará IDs de hasta 5-10k en unas pocas horas después de un reinicio, que es mi experiencia normal del pasado. A la mañana siguiente verifico y algunos procesos son 250k o más, lo cual no es así.
Activé la función de auditoría de seguridad para registrar la creación y finalización del proceso. Nada está generando cientos o miles o procesos. Parece que solo 513 de estos eventos se registraron durante un período de 24 horas, sin embargo, se han utilizado cientos de miles de ID de proceso.
Intenté buscar mi pregunta y una de las preguntas sugeridas anteriormente me indicó el maravilloso blog de Mark Russinovich . Pero este artículo, aunque es una lectura muy interesante, me ha dejado perplejo.
fuente
Respuestas:
Según mis pruebas, parece que tiene una suposición falsa, los números PID no se dan en orden secuencial. Esto es muy fácil de probar, realice el siguiente comando desde la línea de comandos. Debería abrir 3 copias del bloc de notas.
En mi máquina, aquí están los PID de las 3 copias que se abrieron todas al mismo tiempo.
Como puede ver que los PID saltan mucho, si los abre uno a la vez, también verá que el siguiente PID no siempre es más grande que el anterior. Por ejemplo, abrí una cuarta copia del bloc de notas y obtuve esto
Por lo tanto, parece que Windows 7 solo elegirá un PID aleatorio sin usar cada vez que inicie un proceso, por lo que podría haber un PID reutilizado durante la ejecución de las ventanas sin reiniciar.
Escribí un script simple de PowerShell (requiere v2 o más reciente, vea este historial de edición de respuestas para una versión de C #) para probarlo con seguridad
Ejecutar el programa 10 veces siempre tomaba entre
134
y se147
lanza un bloc de notas para que se reutilice el mismo PID (¿Por qué es este número tan pequeño? ¡ Problema de cumpleaños del gadget GO-GO !)fuente
Ejecuté una prueba durante una hora y en ese momento salieron 302 procesos. De ellos, 70 tenían un PID en común, por lo que diría que el PID se reutiliza con frecuencia.
fuente