"Automatico" vs "Automatico (avvio ritardato)"


350

Quando si installano i servizi Windows, sono disponibili due opzioni per l'avvio automatico di un servizio Windows all'avvio di Windows. Uno è automatico e l'altro è automatico (avvio ritardato) . Qual è la differenza tra questi due in dettaglio?

Ad esempio, se stai creando il programma di installazione con wixtoolset, l' ServiceConfigelemento ha l' DelayedAutoStartattributo. Che effetto avrà ciò che accade quando i servizi vengono avviati all'avvio?

Documentazione WiX: ServiceConfig Element



24
Non sono sicuro di come questo sia considerato fuori tema considerando il fatto che wixtoolset.org ti dà la possibilità di specificare questo e consentiamo domande su Wix.
Aelphaeis,

11
Sono arrivato qui alla ricerca di una risposta per il programma di installazione di WIX. Questo è assolutamente in argomento per la programmazione in quanto un installatore è in qualche modo rilevante per la programmazione.
Still.Tony,

6
Concordato con Smithers e PitLock. Se guardi i voti sia per la domanda che per le risposte su questo e altri argomenti "chiusi", sembra che alcuni membri siano più interessati alla lettera della legge piuttosto che all'utilità del post, che è l'intero idea dietro siti come questo. Apparentemente, non si rendono conto che questa particolare domanda influisce, in effetti, sulla "programmazione". Almeno non hanno rimosso la posta.
Jeff Moden,

7
Non sono d'accordo che questo è fuori tema. Questo è molto rilevante per gli sviluppatori.
mghaoui,

Risposte:


484

In breve, i servizi impostati su Automatico verranno avviati durante il processo di avvio, mentre i servizi impostati su Avvio ritardato verranno avviati poco dopo l'avvio.

Avvio del servizio Ritardato migliora le prestazioni di avvio del server e presenta vantaggi per la sicurezza che sono descritti nell'articolo a cui Adriano è collegato nei commenti.

Aggiornamento: "poco dopo l'avvio" è in realtà 2 minuti dopo l'avvio dell'ultimo servizio "automatico", per impostazione predefinita. Questo può essere configurato da una chiave di registro, secondo Windows Internals e altre fonti ( 3 , 4 ).

Le chiavi di registro di interesse (almeno in alcune versioni di Windows) sono:

  • HKLM\SYSTEM\CurrentControlSet\services\<service name>\DelayedAutostartavrà il valore 1se ritardato, in 0caso contrario.
  • HKLM\SYSTEM\CurrentControlSet\services\AutoStartDelayoppure HKLM\SYSTEM\CurrentControlSet\Control\AutoStartDelay(su Windows 10): numero decimale di secondi da attendere, potrebbe essere necessario crearlo. Si applica a livello globale a tutti i servizi ritardati .

11
Mi chiedo, quanto è breve tra poco? Non ci sono molte informazioni là fuori. Sembra in qualche modo che Windows aspetterebbe, fino a quando il carico del sistema non diminuisce, o un certo passo durante la sequenza di avvio è stato raggiunto. Dopo di ciò inizia l'avvio di eventuali servizi in ritardo. Qualche opposizione o addirittura conoscenza al riguardo?
leo

10
@leo 2 minuti dopo l'ultimo servizio automatico - risposta aggiornata.
Colin Pickard,

6
Con più servizi di avvio ritardato, come fa Windows a decidere quale avviare per primo?
Ernest

4
I servizi di @ErnestSoeralaya possono essere contrassegnati come dipendenti da altri servizi. Windows assicurerà che le dipendenze vengano avviate prima, quindi dopo che i servizi dovrebbero iniziare in ordine alfabetico; ma questo non è garantito.
Colin Pickard,

5
@MeM Un errore in un servizio non influisce su nessun altro servizio. L'unica eccezione a ciò sono i servizi contrassegnati come dipendenti da altri servizi.
Colin Pickard,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.