文章詳情頁
快速關(guān)機(jī)會(huì)導(dǎo)致Windows數(shù)據(jù)損壞嗎?
瀏覽:72日期:2023-07-11 11:35:29
安徽趙凱讀者來信:“我最近下載了一款快速關(guān)機(jī)的軟件,這款軟件非常厲害,幾乎眨眼工夫就將電腦關(guān)閉了。很多人說這個(gè)軟件可能會(huì)破壞數(shù)據(jù),但他們又沒有說出相應(yīng)的依據(jù)。我現(xiàn)在很矛盾,有了一個(gè)好東西,卻又不敢用。董師傅,希望你能給一個(gè)權(quán)威的說法,以消除我的疑惑。” 不光是趙凱讀者提到的軟件能實(shí)現(xiàn)快速關(guān)機(jī),而且采用一些技巧也可以達(dá)到同樣的目的,但這樣操作究竟會(huì)帶來什么后果呢?這次被師傅邀請到“話題館”參與討論的是對Windows系統(tǒng)頗有研究、榮獲2004年微軟最有價(jià)值專家的張康宗先生。 從平常的經(jīng)驗(yàn)可以看出,執(zhí)行了關(guān)機(jī)操作后電腦不會(huì)立即斷電,Windows還會(huì)有一系列的動(dòng)作如關(guān)閉打開的程序等,那么從執(zhí)行關(guān)機(jī)命令到最終斷電是一個(gè)什么樣的過程呢? Windows的正常關(guān)機(jī)涉及到多個(gè)組件和多個(gè)過程。我們來看一下它的基本過程。 ①用戶發(fā)起關(guān)機(jī)指令后,發(fā)起關(guān)機(jī)指令的程序會(huì)通知Windows子系統(tǒng)CSRSS.EXE,CSRSS.EXE收到通知后會(huì)和Winlogon.EXE做一個(gè)數(shù)據(jù)交換,接著由Winlogon.EXE通知CSRSS.EXE開始關(guān)閉系統(tǒng)的流程。 ②CSRSS.EXE收到Winlogon.EXE的通知后,會(huì)依次查詢擁有頂層窗口的用戶進(jìn)程,讓這些用戶進(jìn)程退出。如果某一個(gè)用戶進(jìn)程在一個(gè)默認(rèn)的超時(shí)時(shí)間5000毫秒(可以通過修改注冊表鍵值HKEY_CURRENT_USERControl PanelDesktop HungAppTimeout設(shè)定超時(shí)時(shí)間)內(nèi)沒有退出的話,Windows會(huì)顯示一個(gè)結(jié)束任務(wù)對話框用于詢問用戶是否結(jié)束這個(gè)任務(wù)。默認(rèn)情況下這個(gè)對話框會(huì)一直顯示而不會(huì)自動(dòng)關(guān)閉。 對于控制臺(tái)程序來說,基本情況類似,只不過Windows使用HKEY_CURRENT_USERControl PanelDesktop WaitToKillAppTimeout來設(shè)置超時(shí)時(shí)間。 ③接著是輪到終止系統(tǒng)進(jìn)程了。系統(tǒng)進(jìn)程包括SMSS.EXE、Winlogon.EXE、Lsass.EXE等。Windows在終止系統(tǒng)進(jìn)程的時(shí)候并不像終止用戶進(jìn)程那樣如果無法在規(guī)定時(shí)間內(nèi)終止則提示用戶,而是跳過這個(gè)進(jìn)程,去執(zhí)行下一個(gè)系統(tǒng)進(jìn)程的終止操作。使用的超時(shí)時(shí)間和第2步使用的時(shí)間相同。 Windows的正常關(guān)機(jī)涉及到多個(gè)組件和多個(gè)過程。我們來看一下它的基本過程。 ①用戶發(fā)起關(guān)機(jī)指令后,發(fā)起關(guān)機(jī)指令的程序會(huì)通知Windows子系統(tǒng)CSRSS.EXE,CSRSS.EXE收到通知后會(huì)和Winlogon.EXE做一個(gè)數(shù)據(jù)交換,接著由Winlogon.EXE通知CSRSS.EXE開始關(guān)閉系統(tǒng)的流程。 ②CSRSS.EXE收到Winlogon.EXE的通知后,會(huì)依次查詢擁有頂層窗口的用戶進(jìn)程,讓這些用戶進(jìn)程退出。如果某一個(gè)用戶進(jìn)程在一個(gè)默認(rèn)的超時(shí)時(shí)間5000毫秒(可以通過修改注冊表鍵值HKEY_CURRENT_USERControl PanelDesktop HungAppTimeout設(shè)定超時(shí)時(shí)間)內(nèi)沒有退出的話,Windows會(huì)顯示一個(gè)結(jié)束任務(wù)對話框用于詢問用戶是否結(jié)束這個(gè)任務(wù)。默認(rèn)情況下這個(gè)對話框會(huì)一直顯示而不會(huì)自動(dòng)關(guān)閉。 對于控制臺(tái)程序來說,基本情況類似,只不過Windows使用HKEY_CURRENT_USERControl PanelDesktop WaitToKillAppTimeout來設(shè)置超時(shí)時(shí)間。 ③接著是輪到終止系統(tǒng)進(jìn)程了。系統(tǒng)進(jìn)程包括SMSS.EXE、Winlogon.EXE、Lsass.EXE等。Windows在終止系統(tǒng)進(jìn)程的時(shí)候并不像終止用戶進(jìn)程那樣如果無法在規(guī)定時(shí)間內(nèi)終止則提示用戶,而是跳過這個(gè)進(jìn)程,去執(zhí)行下一個(gè)系統(tǒng)進(jìn)程的終止操作。使用的超時(shí)時(shí)間和第2步使用的時(shí)間相同。
標(biāo)簽:
Windows系統(tǒng)
排行榜
