20 votos

¿Por qué es cron ser despreciado?

Me acabo de enterar de que cron ha sido desaprobado en Mac OS X. ¿por Qué es esto, y eventualmente ser completamente eliminado de futuras versiones?

23voto

michaelmichael Puntos 2213

Con el lanzamiento de Mac OS 10.4, launchd fue elegido para sustituir a cron en Mac OS. He aquí una versión en caché de la launchd página de la Apple Developer Connection en 2005. Eso explica por qué a cron era obsoleto, así como los beneficios de la launchd desde la perspectiva de Apple.

El resumen: launchd fue creado no solo para reemplazar cron pero también init, xinetd para un mejor rendimiento y un mejor control sobre la configuración y las tareas reales ellos mismos.

El launchd demonio ofrece un único, estandarizado, interfaz para cualquier y todos los programas iniciados automáticamente por el sistema. Además, los archivos de configuración que determinan cuándo ejecutar un determinado programa también puede especificar los límites de los recursos y variables de entorno, que simplifica la instalación y de seguridad para muchos programas. El mismo formato del archivo de configuración se utiliza si un trabajo está en marcha una vez en el inicio del sistema o de inicio de sesión de usuario, en la demanda a través de la red, o a intervalos.

12voto

Oskar Puntos 1242

El artículo de la wikipedia en launchd tiene un muy buen resumen, debates prolongados así como algunos vídeos y enlaces externos, para una inmersión más profunda en esta decisión por parte de Apple.

En pocas palabras, launchd sustituye a 7 principales tareas y de una gran variedad de secuencias de comandos (inetd, init y rc y asociada a la secuencia de comandos de shell estructuras, crond, atd, watchdogd, SystemStarter) con uno mucho más potente de código abierto herramienta.

Por qué:

  • más rápido
  • más potente
  • unificado y centralizado
  • más seguro

Cuando: 29 de abril de 2005 (Cuando OS X Tiger fue lanzado a la venta)

No hay nada que impida a todos de que el uso de launchd para iniciar cron ahora en Tiger, Leopard o Snow Leopard.

Debe futuro de Apple deje de envío /usr/sbin/cron, seguramente va a terminar como wget y otros maduro herramientas de código abierto que ser compilado y deben agregarse por separado como una herramienta de línea de comandos.

3voto

Ni siquiera sé si cron ha quedado obsoleta. man crontab parece indicar que no ha:

(Darwin nota: a Pesar de cron(8) y crontab(5) están soportados oficialmente en virtud de Darwin, su funcionalidad ha sido absorbida en launchd(8), que proporciona una manera más flexible de ejecutar automáticamente comandos. Ver launchctl(1) para más información.)

Los demonios y los Servicios de Guía de Programación dice que se ha quedado obsoleto, aunque:

Nota: a Pesar de que aún es compatible, cron no es una solución recomendada. Se ha despreciado en favor de launchd.

crontab es también requerido por POSIX, y OS X se supone que SUS obediente.

En cualquier caso, cron probablemente no dejar de trabajar en ningún momento, y no sé si se puede decir para ser más lenta o menos seguro que launchd. El proceso de cron debe usar casi nada de tiempo de la CPU o de la memoria. Algunas de las ventajas de usar o aprender cron es que también está disponible en otras plataformas, y el formato de configuración es más sencilla.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by: