¿Por qué pidof y pgrep se comportan de manera diferente?

Tengo un script de inicio /etc/init.d/myservicepara inicializar un servicio como este: ... start() { ... daemon /usr/sbin/myservice ... } stop() { ... pgrep myservice pidof myservice ps -ef | grep myservice ... } Y cuando trato de detener el servicio, este es el resultado: 10000...