¿En qué orden se procesan los elementos de inicio en OS X Lion/Mountain Lion?

¿En qué orden se procesan los elementos de inicio en OS X Lion/Mountain Lion?

Me gustaría saber en qué orden se inician los servicios y aplicaciones en OS X (Mountain) Lion desde carpetas de inicio como:

/Library/LaunchAgents
/Library/LaunchDaemons
/System/Library/LaunchAgents
/System/Library/LaunchDaemons
~/Library/LaunchAgent
/Library/StartupItems
/System/Library/StartupItems

Respuesta1

/System/Library/LaunchDaemons, /Library/LaunchDaemonsy /Library/StartupItemsse procesan todos al iniciar el sistema. No hay un orden específico para las carpetas de LaunchDaemons: todo lo que contiene se vuelve elegible para ejecutarse de una vez, solo aquellos que <key>RunAtLoad</key><true/>realmente se inician de inmediato. La forma más sencilla de hacer las cosas es despedirlos a todos y dejar que resuelvan sus propias dependencias.

Los StartupItems (si los hay) definen su propio orden. Cada StartupItem es una carpeta que incluye el script a ejecutar y un StartupParameters.plistarchivo que (entre otras cosas) puede definir lo que proporciona el StartupItem y lo que requiere; se ordenarán de modo que el elemento que proporciona una capacidad particular se ejecute antes que aquellos que la requieren.

Esperaría que StartupItems se ejecute después de RunAtLoad LaunchDaemons, pero no creo que esté especificado en ninguna parte y no contaría con ello.

Todos los elementos de las tres carpetas LaunchAgent se cargan cuando un usuario inicia sesión (es decir, en algún momento después del inicio del sistema). Al igual que con LaunchDaemons, no hay un orden particular, todos pueden ejecutarse al mismo tiempo.

Finalmente, no hay ninguna /System/Library/StartupItemscarpeta en OS X Lion.

información relacionada