Herramienta hecha para un control avanzado de procesos
use: sp.exe <Argument> <ImageName or PID> <Argument>
-c <IM/PID> <Cores> <-r> | CpuSets
-idp <IM/PID> <Core> <-r> | Ideal Processor
-a <IM/PID> <Cores> <-r> | Affinity
-p <IM/PID> <0-5> <-r> | CPU Priority
-pb <IM/PID> <-r> | CPU Priority Boost
-mp <IM/PID> <1-5> <-r> | Memory Priority
-iop <IM/PID> <0-3> <-r> | I/O Priority
-eq <IM/PID> <-r> | EcoQoS (Efficiency Mode)
-hq <IM/PID> <-r> | HighQoS (High Performance Mode)
-s <IM/PID> <-r> | Suspend
-r <IM/PID> <-r> | Resume
-
Las configuraciones se guardan en
HKCU\Software\SetProcess
-
Reset Config eliminará la entrada de registro del proceso (si hay otros procesos hijos con el mismo nombre se le aplicará la configuración), pronto emplearé la configuración a traves de command line
-
No aplique Cpu Sets, Ideal Processor o Affinity de manera contigua, trate de usar una de las configuraciones para cada proceso
-
Registra un WinEventHook que detecta los eventos
EVENT_SYSTEM_FOREGROUND | EVENT_OBJECT_CREATE
si los Ids de cada objeto no corresponden a una ventana o un objeto principal, entonces se retornará de la función, esto hace que el programa no requiera un intervalo de sondeo para verificar si un proceso se ha iniciado o no