關於服務

服務控制管理員 (SCM) 會維護已安裝服務和驅動程式服務的資料庫,並提供統一且安全的控制方式。 資料庫包含每個服務或驅動程式服務應如何啟動的資訊。 它也可讓系統管理員自定義每個服務的安全性需求,進而控制服務的存取權。

選擇合適的背景機制

Windows 提供多種執行背景工作的機制。 以下表格幫助你選擇最適合你情境的方案:

機制 最適合用於 Lifecycle 電力影響
Windows 服務(觸發啟動) 回應系統事件(裝置抵達、網路變更、網域加入)。 僅在需要時才會執行。 由 SCM 在觸發時啟動/停止。 低電位 — 未觸發時為閒置狀態。
Windows 服務(自動啟動) 必須始終保持可用的長時間執行常駐程式(資料庫引擎、網頁伺服器、安全代理程式)。 從開機到關機都正常運作。 中等 — 總是會消耗資源。
任務排程器 (維護) 定期維護(磁碟清理、日誌輪換、更新檢查)。 在閒置且接上 AC 電源時執行。 最小——延至閒置時段。
任務排程器 (事件/時間觸發器) 一次性或重複任務,與排程、登入或系統事件相關。 依照排程建立/刪除。 低速 — 短暫運行後退出。
背景任務 (UWP/WinRT) 受資源配額限制的應用程式專屬背景工作(動態磚更新、推播通知、地理圍欄)。 由系統經紀人管理。 非常低——由作業系統嚴格節流。

Important

偏好觸發啟動服務勝過自動啟動服務。 觸發啟動服務在其觸發事件觸發前不消耗任何資源。 這對現代待機裝置的電池續航至關重要。 詳情請參閱 服務觸發事件 。

小提示

如果你的工作負載會定期運行且能忍受排程延遲,建議使用 任務排程器自動維護 ,而非服務。 維護工作則延後至閒置+交流電,減少對使用者及電池續航的影響。

下列類型的程式會使用 SCM 所提供的函式。

類型 描述
服務程式 程式,提供一或多個服務的可執行程序代碼。 服務程式會使用連線至 SCM 的函式,並將狀態資訊傳送至 SCM。
服務組態程式 查詢或修改服務資料庫的程式。 服務組態程式會使用開啟資料庫的函式、在資料庫中安裝或刪除服務,以及查詢或修改已安裝服務的組態和安全性參數。 服務組態程式同時管理服務和驅動程式服務。
服務控制程式 啟動及控制服務和驅動程式服務的程式。 服務控制程式會使用將要求傳送至 SCM 的函式,以執行要求。

 

本概觀討論下列主題: