„Automatyczny” vs „Automatyczny (opóźniony start)”

349

Podczas instalowania usług systemu Windows istnieją dwie opcje automatycznego uruchamiania usługi systemu Windows podczas uruchamiania systemu Windows. Jeden jest automatyczny , a drugi automatyczny (opóźniony start) . Jaka jest różnica między tymi dwoma szczegółami?

Na przykład, jeśli tworzysz instalator za pomocą wixtoolset, ServiceConfigelement ma DelayedAutoStartatrybut. Jak to wpłynie na to, co się stanie, gdy usługi zostaną uruchomione w czasie uruchamiania?

Dokumentacja WiX: ServiceConfig Element

Sachin Kainth
źródło
24
Nie jestem pewien, jak to jest uważane za nie na temat, biorąc pod uwagę fakt, że wixtoolset.org daje ci możliwość określenia tego i pozwalamy na pytania dotyczące Wix.
Aelphaeis
11
Przybyłem tutaj, szukając odpowiedzi dla instalatora wix. Jest to absolutnie temat programowania, ponieważ instalator jest w pewnym sensie odpowiedni do programowania.
Still.Tony
6
Uzgodnione z Smithers i PitLock. Jeśli spojrzysz na głosowania zarówno na pytanie, jak i odpowiedzi na ten i inne „zamknięte” tematy, wydaje się, że niektórzy członkowie są bardziej zainteresowani literą prawa niż użytecznością postu, który jest całością pomysł za takimi witrynami. Najwyraźniej nie zdają sobie sprawy, że to konkretne pytanie w rzeczywistości wpływa na „programowanie”. Przynajmniej nie zdjęli stanowiska.
Jeff Moden
7
Nie zgadzam się, że to nie jest temat. Jest to bardzo istotne dla programistów.
mghaoui

Odpowiedzi:

483

Krótko mówiąc, usługi ustawione na Automatyczne będą uruchamiane podczas procesu rozruchu, podczas gdy usługi ustawione jako Uruchomione jako Opóźnione zostaną uruchomione wkrótce po uruchomieniu.

Uruchomienie usługi Opóźnione poprawia wydajność rozruchu serwera i zapewnia korzyści bezpieczeństwa opisane w artykule Adriano, do którego link znajduje się w komentarzach.

Aktualizacja: domyślnie „krótko po rozruchu” faktycznie trwa 2 minuty po uruchomieniu ostatniej „automatycznej” usługi. Można to skonfigurować za pomocą klucza rejestru, zgodnie z wewnętrznymi elementami systemu Windows i innymi źródłami ( 3 , 4 ).

Kluczami rejestru będącymi przedmiotem zainteresowania (przynajmniej w niektórych wersjach systemu Windows) są:

  • HKLM\SYSTEM\CurrentControlSet\services\<service name>\DelayedAutostartbędzie miał wartość, 1jeśli jest opóźniona, 0jeśli nie.
  • HKLM\SYSTEM\CurrentControlSet\services\AutoStartDelaylub HKLM\SYSTEM\CurrentControlSet\Control\AutoStartDelay(w systemie Windows 10): dziesiętna liczba sekund oczekiwania, może być konieczne utworzenie tego. Dotyczy globalnie wszystkich usług opóźnionych .
Colin Pickard
źródło
11
Zastanawiam się, jak krótko jest krótko? Tam niewiele informacji. Wygląda to tak, jakby Windows czekał, aż ładowanie systemu spadnie lub osiągnięty zostanie pewien krok podczas sekwencji rozruchowej. Następnie zaczyna uruchamiać usługi opóźnione. Jakieś sprzeciwy, a nawet wiedza na ten temat?
leo
10
@leo 2 minuty po ostatniej automatycznej usłudze - odpowiedź zaktualizowana.
Colin Pickard
6
W przypadku wielu usług opóźnionego startu, w jaki sposób system Windows decyduje, od którego zacząć?
Ernest
4
Usługi @ErnestSoeralaya można oznaczyć jako zależne od innych usług. Windows upewni się, że zależności zostaną uruchomione najpierw, a następnie usługi powinny się uruchomić w kolejności alfabetycznej; ale nie jest to gwarantowane.
Colin Pickard
5
@MeM Awaria jednej usługi nie wpłynie na żadną inną usługę. Jedynym wyjątkiem są usługi oznaczone jako zależne od innych usług.
Colin Pickard,