Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Rhinorhino on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

No paging file or paging file too small

Status
Not open for further replies.

khood

Programmer
Joined
Aug 27, 2000
Messages
163
Location
US
I have XP Home (sorry no forum for that so I picked the next best thing) and recently had a problem with my computer hanging during bootup. The only thing that worked was loading the XP CD and doing an operating system install/repair. This seemed to work, except that now I no longer have a paging file and get the message above when I login to XP.

I've read recommendations about what to do about this issue, but none seem to work.

1) If I change the page file size, it is not retained.
2) I have no pagefile.sys (yes, I am looking at hidden files).
3) I've downloaded the intel chipset indentifier & I do have one of the chipsets for which they recommend installing the Intel Application Accelerator. However when I do install the IAA, XP hangs up during the bootup process and I have to boot with "last known good configuration" for it to come up.

I've read on some support sites that perhaps an FDISK /MBR will fix this problem. Does an FDISK /MBR wipe the disk clean or just rewrite the MBR? Should I attempt this fix?

Any other suggestions? Thanks in advance.
 
DRIVER_POWER_STATE_FAILURE, Pagefile=0
thread779-275590

For your information.

"In Microsoft Windows NT, using the MS-DOS FDISK /MBR command is not always appropriate when you cannot boot a computer. The problem is that the command rewrites the master boot record (MBR) only, and not the entire boot record. The FDISK /MBR command rewrites only the first 446 bytes of the master boot record, not the partition table."

166454 - Using FDISK /MBR for Troubleshooting Windows NT Boot Problems

"By the command fdisk /mbr a standard boot loader code is written to the MBR. The purpose of the standard boot loader code is to search the partition table for a partition marked as active and to boot that partition."


In XP the FixMbr command from the Recovery Console is normally used.


HOW TO: Install and Use the Recovery Console for Windows XP (Q307654)

The fixmbr command can safely rewrite the MBR. Fixmbr repairs the master boot record of the boot disk. The fixmbr command is only available when you are using the Recovery Console.

266745 - Error Message When You Run fixmbr Command

If you want to backup your MBR before doing anything to it use the free program MbrWork.

Go to look for MBRWORK.
 
gpalmer711,

Thanks for your suggestion. After going through all of the steps, the problem still persists.

I'm leaning toward the FDISK approach at this point.

 
The only other thing that I have seen cause this is corruption in the registry. You could try the steps outlined in or "Cannot Boot Windows due to Corrupt Registry" faq779-5362. If you select one of the above options make sure you pick a point from before the time you had the Paging File problem.

I once had a family member who I could not fix this problem for, they lived with it for about 6 months until they were happy for me to do a reinstall.

I do not see how repairing the MBR will solve the problem that you are having. However if it does I would appreciate it if you would let me know.

Greg Palmer
Free Software for Adminstrators
 
As a matter of interest, what does it say in the registry?

If you run Regedit then navigate to 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management' there should be a key in the right-hand pane called 'PagingFiles'.

It should have a multi-string value showing you first the location of 'pagefile.sys' then the minimum and maximum values.

For example, my work PC shows a value of 'D:\pagefile.sys 372 744'.

If would be interesting to see if the value exists or is corrupt.

A different way of checking pagefile details would be to copy/paste the following script into Notepad then save it as, say, "check-pagefile.vbs" then run it.

It uses WMI (Windows Management Instrumentation, pre-installed in Windows XP) to read values and properties. The script only reads - not writes - so is quite safe to use. When run, it will open a command box and pipe the results to it (which can be copied and pasted). Some of the more interesting results will be those for 'AccessMask', 'Readable', 'Status' and 'Writeable'.

Code:
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_PageFile",,48)
For Each objItem in colItems
    Wscript.Echo "AccessMask: " & objItem.AccessMask
    Wscript.Echo "Archive: " & objItem.Archive
    Wscript.Echo "Caption: " & objItem.Caption
    Wscript.Echo "Compressed: " & objItem.Compressed
    Wscript.Echo "CompressionMethod: " & objItem.CompressionMethod
    Wscript.Echo "CreationClassName: " & objItem.CreationClassName
    Wscript.Echo "CreationDate: " & objItem.CreationDate
    Wscript.Echo "CSCreationClassName: " & objItem.CSCreationClassName
    Wscript.Echo "CSName: " & objItem.CSName
    Wscript.Echo "Description: " & objItem.Description
    Wscript.Echo "Drive: " & objItem.Drive
    Wscript.Echo "EightDotThreeFileName: " & objItem.EightDotThreeFileName
    Wscript.Echo "Encrypted: " & objItem.Encrypted
    Wscript.Echo "EncryptionMethod: " & objItem.EncryptionMethod
    Wscript.Echo "Extension: " & objItem.Extension
    Wscript.Echo "FileName: " & objItem.FileName
    Wscript.Echo "FileSize: " & objItem.FileSize
    Wscript.Echo "FileType: " & objItem.FileType
    Wscript.Echo "FreeSpace: " & objItem.FreeSpace
    Wscript.Echo "FSCreationClassName: " & objItem.FSCreationClassName
    Wscript.Echo "FSName: " & objItem.FSName
    Wscript.Echo "Hidden: " & objItem.Hidden
    Wscript.Echo "InitialSize: " & objItem.InitialSize
    Wscript.Echo "InstallDate: " & objItem.InstallDate
    Wscript.Echo "InUseCount: " & objItem.InUseCount
    Wscript.Echo "LastAccessed: " & objItem.LastAccessed
    Wscript.Echo "LastModified: " & objItem.LastModified
    Wscript.Echo "Manufacturer: " & objItem.Manufacturer
    Wscript.Echo "MaximumSize: " & objItem.MaximumSize
    Wscript.Echo "Name: " & objItem.Name
    Wscript.Echo "Path: " & objItem.Path
    Wscript.Echo "Readable: " & objItem.Readable
    Wscript.Echo "Status: " & objItem.Status
    Wscript.Echo "System: " & objItem.System
    Wscript.Echo "Version: " & objItem.Version
    Wscript.Echo "Writeable: " & objItem.Writeable
Next
Hope this helps...

Rick
 
Rick998,

My registry entry is: "C:\pagefile.sys 382 382". However, if I go to control panel to change my paging file size I get the message "Windows created a temporary paging file on your computer because of a problem that occured with your paging file configuration when you started your computer......"

If I do a search (including hidden & system files), there is no "pagefile.sys" on my drive.
 
khood,

OK, that shows you probably have 256Mb RAM (do you, or has Windows mis-calculated?) and Windows is trying to use 382Mb as both minimum AND maximum.

From your original problem, there's a possibility that you can't see pagefile.sys if part of it is on a damaged sector on the hard disk.

It looks like you're prepared to start all over again so what I'm going to advise won't hurt. (You ever see the TV programs where they end with 'Don't try this at home?)

1) Do 'Start > Run'.
2) Enter CHKDSK /F. A command prompt should appear informing you that the 'current drive cannot be locked' and asking whether you want to check the next time the system restarts?'.
3) Press Y then ENTER.
4) Re-start the PC and don't cancel the disk check. Any bad sectors will either be repaired or marked by the system as 'don't use'.
5) Run Disk Cleanup to delete temporary files and empty the Recycle Bin.
6) Defragment the hard disk.
7) Make sure there is sufficient free hard disk space. If you DO have 256Mb RAM then you'll need something like 800Mb free hard disk space (for the maximum size of the swap file plus some for temporary files) if you want to keep performance up without too much disk thrashing.
8) Re-boot the PC.
9) Go to 'Control Panel > System > Advanced'.
10) Click on the 'Settings' button in the 'Performance' section.
11) Go to the 'Advanced' tab.
12) Click on the 'Change' button in the 'Virtual memory' section.
13) Select the 'Custom' size option.
14) Check that the minimum size is 1.5 times whatever RAM you have installed and the maximum size is 3 times whatever RAM you have installed. For example, if you DO have 256Mb RAM then the settings are 384Mb and 768Mb respectively. If not, then enter these sizes manually but remember to click on the 'Set' button before the 'OK' button or the sizes won't be kept.
15) Re-boot then see if everything's OK and pagefile.sys has been (re-)created.

If none of this works then it may be able to make a manual edit in the registry but let us know how you get on first.

Hope this helps...

Rick
 
gpalmer711 and rick998,

Sorry, but I've had to travel a bit and could not attempt to address this issue again until the last few days.

I have managed to correct my paging file problem by installing a new hard disk that I had sitting on my shelf. I kept the original disk as my main (bootable) drive and simply moved the paging file to the new disk. After rebooting, no error message and the pagefile.sys file was stored on my new drive. I then moved it back to my original drive - no problems.

I'm sure that this was not the only way to correct it, but none of the other methods seemed to be working for me and I had spent a little too much time working it out.

Was the area the stores the paging file corrupt or what?

Thanks for you help on this.

 
Glad you got it sorted. I hate those little problems that you never seem to find out what the solution is.

Greg Palmer
Free Software for Adminstrators
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top