La principal diferencia que está buscando es que cronno se ejecuta constantemente. Como se explica en man cron:
cron then wakes up every minute, examining all stored crontabs, check‐
ing each command to see if it should be run in the current minute.
When executing commands, any output is mailed to the owner of the
crontab (or to the user named in the MAILTO environment variable in the
crontab, if such exists). The children copies of cron running these
processes have their name coerced to uppercase, as will be seen in the
syslog and ps output.
En otras palabras, cronsolo se iniciará una vez por minuto y comprobará si debe ejecutarse. Su enfoque de sueño, por otro lado, requeriría que su sleepcomando real , su shell, su terminal y el whilebucle (o lo que sea) se ejecuten al mismo tiempo.
Incluso si estuvieran lanzando el mismo número de procesos, cronsería mejor. Está escrito precisamente para esto por personas que tienden a ser muy buenas en su trabajo. Está obligado a hacer un mejor trabajo que un simple ciclo de shell.