BSOD while having Regedit open

G

Guest

I just got a BSOD while I had Regedit open. I was using IE when I got
the BSOD, so Regedit wasn't doing anything at the moment of the crash.
But is it safe to assume that my registry wasn't damaged by the BSOD?
Regedit applies all updates immediately, right? It doesn't do anything
weird like flush buffers to the disk when you close it, does it?
 
J

John John

I doubt anything will go wrong (other than what you might have screwed
up before the BSOD ;-) ) It's called "Atomicity" and basically:

"Atomicity and Hive Recovery in the Registry

The Registry ensures atomicity of individual actions. This means that
any change made to a value (to set, delete, or save) either works or
does not work: The result will not be a corrupted combination of the old
and new configuration even if the system stops unexpectedly because of
power failure, hardware failure, or software problems. For example, if
an application sets a value for an entry and the system shuts down while
this change is being made, when the system restarts, the entry will have
either the old value or the new value, but not a meaningless combination
of both values. In addition, the size and time data for the key
containing the affected entry will be accurate whether the value was
changed or not changed."

Chapter 23 - Overview of the Windows NT Registry
http://www.microsoft.com/resources/documentation/windowsnt/4/workstation/reskit/en-us/23_regov.mspx

John
 
G

Guest

John said:
I doubt anything will go wrong (other than what you might have screwed
up before the BSOD ;-) ) It's called "Atomicity" and basically:

"Atomicity and Hive Recovery in the Registry

The Registry ensures atomicity of individual actions. This means that
any change made to a value (to set, delete, or save) either works or
does not work: The result will not be a corrupted combination of the old
and new configuration even if the system stops unexpectedly because of
power failure, hardware failure, or software problems. For example, if
an application sets a value for an entry and the system shuts down while
this change is being made, when the system restarts, the entry will have
either the old value or the new value, but not a meaningless combination
of both values. In addition, the size and time data for the key
containing the affected entry will be accurate whether the value was
changed or not changed."

I was actually wondering about timestamps for registry keys earlier.
The last sentence of your quoted text suggests that Windows does have
timestamps for registry keys/values. But I don't see any way to view
that information in RegEdt32. Is there any way to view that info?
Thanks.
 
J

John John

From the same reskit chapter:

"Flushing Data

In Windows NT, data is written to the Registry only when a flush occurs,
which happens after changed data ages past a few seconds, or when an
application intentionally flushes the data to the hard disk.

The system performs the following flush process for all hives (except
for the System hive):

1. All changed data is written to the hive's .log file along with a map
of where it is in the hive, and then a flush is performed on the .log
file. All changed data has now been written in the .log file.

2. The first sector of the hive file is marked to indicate that the
file is in transition.

3. The changed data is written to the hive file.

4. The hive file is marked as completed.

Note If the system shuts down between steps 2 and 4, when the hive is
next loaded at startup (unless it's a profile hive that is loaded at
logon), the system sees the mark left in step 2, and proceeds to recover
the hive using the changes contained in the .log file. That is, the .log
files are not used if the hive is not in transition. If the hive is in
transition, it cannot be loaded without the .log file.

A different flush process is used for the System hive because it is an
important element during system startup and is used too early during
startup to be recovered as described in the previous flush process.

The System.alt file contains a copy of the data contained in the System
file. During the flush process, changes are marked, written, and then
marked as done. Then the same flush process is followed for the
System.alt file. If there is a power failure, hardware failure, or
software problems at any point during the process, either the System or
System.alt file contains the correct information.

The System.alt file is similar to a .log file except that at load time,
rather than having to reapply the logged changes, the system just
switches to System.alt. The System.alt file is not needed unless the
System hive is in transition.
User Profile Hives

Each time a new user logs on to a computer, a new hive is created for
that user with a separate file for the user profile. The system
administrator can copy a user profile file to a different directory and
view, repair, or copy entries to another computer by using Registry
Editor. For specific information on this feature, see "Managing User
Profiles Through the Registry" in Chapter 25, "Configuration Management
and the Registry." For information about the hive for the default
profile, see "HKEY_USERS" later in this chapter."

John
 
G

Guest

I am sorry to cut in with not related question since I did not find a thread
that is talking about my issue.

I created a new account without give it any administrator or poweruser
rights and set my windows 2000 professional to login automatically without
fill in the passwork. The problem is I do not remember my administrator's
password. Now I am in trouble. I can not access the important programs and
files that I need badly. I plan to upgrade to windows xp professional.
However, I need to keep all the important files on the harddriver but I was
not allow to backup the files using my CD-read write device since I do not
have sufficient right. Do I required to know my existing administrator
password after I upgrade to windows xp professional? If yes, then I will go
into the same problem. Can anyone out there help me?


-- Citizen of Mars
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top