Em que ordem os itens de inicialização são processados ​​no OS X Lion/Mountain Lion?

Em que ordem os itens de inicialização são processados ​​no OS X Lion/Mountain Lion?

Gostaria de saber em que ordem os serviços e aplicativos são iniciados no OS X (Mountain) Lion a partir de pastas de inicialização como:

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

Responder1

/System/Library/LaunchDaemons, /Library/LaunchDaemonse /Library/StartupItemssão todos processados ​​na inicialização do sistema. Não há uma ordem específica para as pastas LaunchDaemons - tudo nelas se torna elegível para execução de uma só vez, apenas aquelas que são <key>RunAtLoad</key><true/>iniciadas imediatamente. A maneira inicial de fazer as coisas é demitir todos e deixá-los resolver suas próprias dependências.

StartupItems (se houver) definem sua própria ordem. Cada StartupItem é uma pasta que inclui o script a ser executado e um StartupParameters.plistarquivo que (entre outras coisas) pode definir o que o StartupItem fornece e o que ele requer; eles serão ordenados de modo que o item que fornece uma capacidade específica seja executado antes daqueles que a exigem.

Eu esperaria que StartupItems fosse executado após RunAtLoad LaunchDaemons, mas não acho que isso esteja especificado em nenhum lugar e não contaria com isso.

Os itens nas três pastas do LaunchAgent são todos carregados quando um usuário faz login (ou seja, algum tempo após a inicialização do sistema). Tal como acontece com LaunchDaemons, não há uma ordem específica, todos eles se tornam elegíveis para execução ao mesmo tempo.

Finalmente, não há /System/Library/StartupItemspasta no OS X Lion.

informação relacionada