Сегодняшняя сессия вопросов и ответов приходит к нам, любезно предоставленной SuperUser - подразделением Stack Exchange, группировкой сайтов Q & A на уровне сообщества.
Вопрос
Считыватель SuperUser FrozenKing хочет знать, как его компьютер знает, когда он разбился или в противном случае было неправильное завершение работы. Он пишет:
Actually, this question struck me because of power cuts in my house. When there is a power cut, there is a sudden loss of power from the computer.
How does the computer know that the shutdown was not properly done?
Это интересный вопрос; очевидно, что современные операционные системы хорошо знают, что что-то пошло не так, но каким механизмом они узнали?
Ответы
Докладчик SuperUser Дэвид Шварц предлагает общий ответ и понимание различных операционных систем:
For non-Windows based PCs, the detection is usually done on a per-filesystem basis. When a filesystem is mounted in read/write mode, an entry is written to the filesystem marking it dirty. When the filesystem is unmounted, an entry is written marking it clean. On startup, the operating system checks if its core filesystems are marked dirty, and if so it knows there wasn’t a clean shutdown - at least of those filesystems.
Другой участник, ChrisF отвечает более конкретно для операционной системы Windows:
When powered off as normal, the bit is switched off. However, in case of power outage or improper (forced) shutdown, the bit will still be on the next time the PC is started.
This means that Windows can suggest remedial action – such as booting into Safe Mode.
In addition a Windows based PC will write an entry into event log detailing when and why (if known) it was shut down. It also writes an event when the PC starts up.
Есть что добавить к объяснению? Звучит в комментариях. Хотите узнать больше ответов от других пользователей Windows? Посмотрите здесь полную дискуссионную тему.