计算机如何知道PC没有正确关闭?


92

实际上,由于我家的断电,这个问题使我震惊。断电时,计算机会突然断电。

计算机如何知道关机未正确完成?

Answers:


104

Windows还使用“ 脏位”方法来检测PC是否已正确关闭:

正常关闭电源后,该位将关闭。但是,在断电或不正确(强制)关闭的情况下,下次启动PC时,该位仍会保留。

这意味着Windows可以建议采取补救措施-例如启动到安全模式。

此外,基于Windows的PC将在事件日志中写入一个条目,详细说明何时以及为何(如果已知)关闭它。当PC启动时,它还会写入一个事件。

系统关闭

系统启动

当PC重新启动时,它可以检查事件日志,如果在上一次“启动”事件之后没有找到“关闭事件”,则表明PC没有正确关闭,并且可能由于未保存而导致了问题数据等


2
以下大卫的答案难道不正确吗?我以为NTFS有一个“脏位”,FS在挂载时会检测到。我一直认为事件日志只是发现的日志,而不是其背后的实际检测和推理?
HaydnWVN 2012年

3
但是在计划外关闭电源的情况下(显然没有UPS),关闭将是“意外的”(事件日志中提到)。这里的好信息If a program initiates an I/O operation that alters the structure of an NTFS volume - that is, changes the directory structure, extends a file, allocates space for a new file, and so on - NTFS treats that operation as an atomic transaction. It guarantees that the transaction is either completed or, if the system fails while executing the transaction, rolled back.
HaydnWVN 2012年

3
@HaydnWVN文件系统脏位用于标识异常卸载,以便OS知道文件系统可能处于不确定状态,并可以运行诊断程序(例如chkdsk)来标识潜在的文件系统问题。这就是为什么在插入未正确卸下的USB驱动器时有时会出现“修复”对话框的原因。相反,术语“脏位”仅表示已设置的字段,稍后在系统或设备运行时正常终止时取消设置。不正确的终止会留下该字段集,因此在设备的下一次初始化时会识别出该字段。
多项式

1
@ChrisF可以在组/本地策略中关闭该要求。如果通过VM主机的控制面板将其关闭,它将被绕过。最好依靠事件内核一般#12(正常关闭)和EventLog#6002(最后关闭是意外的)。如果是BSOD,则还应该有一个BugCheck#1001。(所有事件:来源#id。)
理查德(Richard

1
首先,在电源关闭后,该位的状态如何保持在易失性存储器中?双重启动呢?维基百科的引用看起来像是猜想-尽管我还没有阅读它引用的《操作系统概念》一书。其次,Windows读取事件日志以确定是否发生干净关闭的想法显然是错误的。指向Windows的bootstat.dat的答案比上述任何一个猜测都更可能是正确的,部分原因是它更有意义,但主要是因为其引用的来源。

121

对于非基于Windows的PC,检测通常是基于每个文件系统进行的。当文件系统以读/写模式挂载时,会将条目写入文件系统,将其标记为脏。卸载文件系统后,将写入一个条目,将其标记为干净。在启动时,操作系统会检查其核心文件系统是否标记为脏文件,如果是,它会知道没有干净的关闭-至少是那些文件系统。


29
+1,因为问题不是在询问特定的操作系统。
Trevor Boyd Smith

42

在Windows中,根据Windows Internals,第5版的作者,它是bootstat.dat文件(默认位于系统分区的\ boot目录中):

Windows使用启动状态文件...记录它已经历系统生命周期各个阶段(包括启动和关闭)的事实。这使启动管理器,Windows加载程序和启动修复工具可以检测异常关闭或彻底关闭失败,并提供用户恢复和诊断启动选项...

 


3
报价来源?
Paul DelRe 2012年

23
“Windows内部”由Mark Russinovich和David Solomon合与亚历克斯·约内斯库,1010页
ARTM

与ChrisF的答案相反,每个文件系统维护的“脏位”仅适用于该文件系统的状态。它不是系统范围的。请注意,您可以“安全地断开连接”可移动硬盘驱动器-清除该文件系统的脏位-然后,之后可能会意外关闭。
杰米·汉拉汉

0

在某些计算机上,可以在硬件BIOS中设置OS无关的方法。它取决于BIOS的计算机供应商和供应商。

主要课程包括美国大趋势公司(AMI),Award和Phoenix Technologies。请查看这些制造商的详细信息。


2
与其只是挥挥手说“信息已经存在”,不如实际上链接到一些相关的参考文献上呢?
G-Man
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.