smss.exe是什麼進程?
會話管理器負責Windows操作系統啟動及操作中的許多的重要步驟,比如打開額外的頁面文件、執行延遲的文件改名和刪除操作,創建系統環境變量。他也將Csrss.exe和Winlogon.exe進程啟動起來,Winlogon.exe進程會依次創建其他系統進程。
smss.exe這是一個Windows後台進程,會隨著系統一起啟動,由於其是系統運行的重要進程,如果強行將其終止系統也會被關閉,如下圖所示:
smss.exe作為系統進程在通常情況下都是安全的,其程序文件所在位置:C:\Windows\System32\smss.exe(C代表系統安裝所在分區盤符)。
功能作用:
smss.exe(會話管理器)是Windows系統中第一個創建的用戶模式進程。負責完成執行體和內核初始化工作的內核模式系統線程在最後階段創建了實際的Smss進程。在啟動Windows的過程中,smss.exe作用過程分為7個步驟,分別如下:
創建LPC port對象,為MSDOS定義符號連接,例如COM1、LPT1,假如安裝有Terminal Services,則創建\Sessions目錄 運行注冊表裡HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\BootExecute定義的程序,一般默認的是運行Autochk 執行HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations表鍵中的延遲,刪除,改名操作 加載HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs 初始化paging files和注冊表 創建系統環境變量,這些定義在HKLM\System\CurrentControlSet\Session Manager\Environment 加載和初始化Win32子系統的內核模塊Win32k.sys 創建Win32子系統服務器進程,包括Csrss.exe並創建Winlogon.exe進程。
在注冊表的HKLM\SYSTEM\CurrentControlSet\Control\Session Manager下面,你可以找到許多配置信息,它們驅動了Smss.exe的初始化步驟。Smss.exe中的主線程在執行了這些初始化步驟以後, 一直在Csrss.exe和Winlogon.exe的進程句柄上等待。如果這兩個進程中的任何一個非正常終止了,則Smss讓系統崩潰掉(崩潰的代碼是 STATUS_SYSTEM_PROCESS_TERMINATED或0xC000021A),因為Windows要依賴於這兩個進程的存在才能運行得下去。
同時Smss.exe等待加載子系統的請求、調試事件,以及創建新的終端服務器會話(terminal server sessions)的請求。終端服務會話(Terminal Services session)的創建是由Smss.exe來完成的。當Smss.exe接到一個創建會話的請求時,它首先調用NtSetSystemInformation,請求建立內核模式的會話數據結構。又依次調用內部的內存管理器函數MmSessionCreate, 該函數建立起會話虛擬地址空間,該地址空間中包含會話中的換頁內存池,以及由Win32子系統的內核模式部分(Win32k.sys)和其他的會話空間設備驅動程序所分配的、屬於每個會話的數據結構。然後,Smss.exe為該會話創建Winlogon.exe和Csrss.exe的實例。
看過上文後,總算是對smss.exe進程有了一定的了解,知道這是一個Windows後台進程,並且有著大作用,所以用戶看到smss.exe進程千萬不要去結束它,不然你的Windows系統就會關閉了。