Risposte:
Upstart è il sostituto dei tradizionali script di avvio System-V in stile init.d. Tuttavia, upstart è molto più di una raccolta di script di avvio. Permette infatti un minuto di pianificazione e controllo dell'avvio di diversi demoni. Ad esempio, per montare automaticamente le unità di rete, è innanzitutto necessario disporre di una rete funzionante. Mentre prima di iniziare queste situazioni spesso portavano a condizioni di gara, nella dichiarazione iniziale si possono includere i prerequisiti di una rete in esecuzione.
Upstart si basa infatti su un sistema di monitoraggio degli eventi. Quando si verifica una determinata condizione hardware o un altro processo invia un evento, è possibile che vengano attivati uno o più script di avvio. Ciò consente, ad esempio, che determinate azioni vengano automaticamente attivate quando viene inserita o rimossa una chiavetta USB.
Credo che tutte le principali distribuzioni Linux stiano migrando init System-V per avviarsi passo dopo passo. In effetti, gli upstart possono anche innescare l'avvio degli script di init tradizionali, pertanto la transizione non deve avvenire in una sola volta.
Upstart è un sostituto basato sugli eventi per il demone / sbin / init che gestisce l'avvio di attività e servizi durante l'avvio, interrompendoli durante l'arresto e supervisionandoli mentre il sistema è in esecuzione.
Il processo di avvio di SysV è strettamente sincrono. Le cose accadono una alla volta, bloccando le attività future fino a quando quella attuale non è stata completata. Se qualcosa nel processo di avvio richiede molto tempo, tutto il resto deve attendere. Inoltre, le attività vengono eseguite solo quando il demone init cambia stato (come quando la macchina è accesa o spenta).
Upstart è un nuovo demone init che consente di avviare i servizi in risposta a eventi piuttosto che in runlevel di massa. Con ogni file di lavoro nella directory / etc / init responsabile per l'avvio di un servizio o per un componente specifico dell'inizializzazione del sistema. Non esiste una sequenza fissa; invece ogni lavoro specifica gli eventi a cui reagirà. Quando si verifica un evento, Upstart avvia tutti i lavori in attesa di questo evento, in parallelo.
Teoricamente puoi usarlo anche dopo che il sistema è attivo e funzionante. Upstart è infine programmato per assumere compiti come o collegare dispositivi esterni come chiavette USB (attualmente gestite da udev e hal) o eseguire programmi in orari specifici (attualmente gestiti da cron).
Upstart è stato originariamente sviluppato per la distribuzione Ubuntu, ma è pensato per essere adatto alla distribuzione in tutte le distribuzioni Linux in sostituzione del venerabile System-V init.
Upstart è un altro sforzo guidato da Ubuntu per sostituire il tradizionale sistema di inizializzazione SysV, ma non è uno standard sebbene sia stato adottato da alcune distribuzioni come Debian, Fedora, la piattaforma Maemo di Nokia WebOS Palm, Google Chromium OS, Chrome OS di Google
Per ulteriori informazioni, consultare http://upstart.ubuntu.com/