Fråga
Hej och tack för en informativ tidning. Jag har aldrig tidigare ställt någon fråga till experten, men det är just denna del av tidningen jag uppskattat mest genom åren. Hoppas nu på svar på min fråga som handlar om systemregistrets uppbyggnad i XP.
Från och med Windows 95 (tror jag) ersatte Microsoft en stor del av alla ”.ini-filer” med ett enda så kallat systemregister. Detta register kunde redan från start redigeras med Regedit.exe, men bestod till och med Windows Me av två filer – User.dat och System.dat. Under Windows NT var det likartat, men registret bestod av fler ”.dat-filer” – en sex-sju stycken, vill jag minnas.
Jag undrar nu, vilka filer består systemregistret i XP av , och var i ”trädet” ligger de ? Eller är det hemligstämplat av Microsoft?
Jag har med hjälp av Sysinternals annars så utmärkta verktyg Filemon.exe, försökt att se vilka filer operativsystemet skriver till, när man ”inkluderar” en ”.reg-fil” till registret. Men det enda jag hittat är filen ”c:windowssystem32configsoftware.log” . En fil vars storlek är ringa och dessutom tycks vara låst av Windows.
Jag vore mycket tacksam för allt ljus experten kunde kasta över registrets ”filmässiga” uppbyggnad under Windows XP.
Svar
I Microsoft Computer Dictionary, femte upplagan, definieras registret på följande vis:
En central hierarkisk databas i Microsoft Windows 9x, Windows CE, Windows NT och Windows 2000 för lagring av information, som krävs för att konfigurera datorn för en eller flera användare, program och maskinvaruenheter.
Nejdå, det finns inget hemligt med systemregistrets funktion. Systemregistret finns i dag i alla versioner av Windows, både 32- och 64-bits, samt Windows Mobile. Det är helt riktigt att det infördes för att bringa ordning i redan av alla ini-filer. Det fanns ett embryo till registret redan i Windows 3.1, men det kom alldeles riktigt till full användning först i Windows 95 och Windows NT. Men även då fortsatte registret och ini-filerna att leva ett parallellt liv och det tog lång tid innan alla ini-filer försvann. För bakåtkompatibilitetens skull finns faktiskt Win.ini och System.ini fortfarande kvar.
Registerfilen i Windows 3.1 hette Reg.dat. I Windows 95 och 98 bestod systemregistret av två filer, User.dat och System.dat. I Windows Me tillkom även Classes.dat. User.dat var individuell för respektive användare. I 32-bitssystemen har det alltid fungerat lite annorlunda och registerfilerna är som du säger ganska många och finns i mappen WindowsSystem32Config. Detta gäller alla utom den individuella filen, som här heter Ntuser.dat och lagras i respektive användarprofil. Det är alltså i denna uppgifterna i den registergren som kallas HKEY_CURRENT_USER finns.
Ordet registergren hittade jag själv just på, eftersom jag tyckte att det förklarade vad jag menar. På microsoftspråk kallas de ”hives”, vilket på svenska skulle bli ”svärmar”. Om någon vedertagen svensk benämning finns vet jag faktiskt inte.
Filerna i Windows XP har inte ändelsen .dat, utan i stället heter de Default.sav, Security.sav, Software.sav och System.sav. Säkerhetskopior av dessa sparas i undermappen RegBack och kan användas för återställning om systemet skulle haverera.
Det finns mycket att berätta om systemregistret som inte får plats här, men jag hoppas att detta var ett tillräckligt svar på din fråga?