Jump to content

Faster Startup For Windows 2000?


Recommended Posts

I have read in several places on the web that the boot time of Windows 2000 can be improved by using the ntldr file from Windows XP on a Windows 2000 system.

I have tried this, and it doesn't work for me.

I assume that this is because my Windows 2000 installation is not standard.

My Windows 2000 system files are in D:\WIN-NT not C:\WINNT as would be standard.

Is there any way around this?

I looked at the XP ntldr file with a hex editor, and did find references to the path of the OS system files.

If I could edit this to match my system presumably it might then work, but I don't know how to do this safely.

If anyone can help with this I would be very grateful, as the slow start-up of Windows 2000 has always annoyed me, although I very much like everything else about the OS, and want to keep using it!

Thanks, Dave.

:)

Link to comment
Share on other sites

  • 2 months later...

I'm having a hard time here believing that a workstation OS can map the memory better than a server OS, even if it's newer. XP's kernel is based on 2000.

Indeed it is, but I do remember reading somewhere that MS had changed the startup routine in XP to make it start up faster, which is why the ntldr from XP could be used on 2000 to get at least some of the benefits of this.

This is something I've never been able to try out, for the reasons given in my OP, so I've no idea if it works, and how much effect it actually has if it does work!

:)

Link to comment
Share on other sites

ntldr is the boot loader for legacy (pre-Vista) Windows, and is only used at the very, very start of the boot process - once ntoskrnl.exe (the OS kernel) is started ntldr is done, so you wouldn't notice any difference from replacing it with another version.

One of the design principles for XP was "get the user to the desktop quicker", so a lot of the startup routines were made to run in parallel in order to get to the point where winlogon.exe is up and the GINA is presented for the user to authenticate.

In Windows 2000 all those routines ran serially, so the logon prompt doesn't appear until it's completed all the previous startup steps.

As the changes are in the (5.1) kernel, there's no way to "tweak" 2000 (5.0 kernel) to behave like XP.

(And for Vista the boot process is not so much of a big deal as you're encouraged to use suspend-to-RAM instead of shutdown - "restart" time is under 2 seconds then.)

Link to comment
Share on other sites

Thanks for that.

Sounds like I'm wasting my time even investigating this, which is good to know!

I won't bother taking it any further.

Interesting about the Vista "suspend-to-RAM" recommendation.

If that really is what MS recommend instead of shutting down properly, that doesn't sound very environmentally friendly. So much for Microsoft's "green" credentials!

:no:

Link to comment
Share on other sites

Interesting about the Vista "suspend-to-RAM" recommendation.

If that really is what MS recommend instead of shutting down properly, that doesn't sound very environmentally friendly. So much for Microsoft's "green" credentials!

Actually one of the drives for Vista is energy saving - it goes to sleep after a period of inactivity, and the suspend-to-RAM just draws enough current to keep the contents of the memory chips intact while the mains is connected (no fans to run, no display to drive, no hard disks spinning).

It's the next step up from hibernation (dumping memory contents to a file on disk that is read on resume) and is much quicker both in suspending and resuming.

Sleep > Hibernate > Shut Down

Beats having to mess about speeding up the boot process - I only reboot once a month (patch Tuesday) unless I need to physically move the PC or turn the mains off.

Very handy being able to tap a key and have the logon prompt up in 2 seconds, check email and then put the machine back to sleep before heading to work in the morning.

Link to comment
Share on other sites

  • 3 weeks later...
I have read in several places on the web that the boot time of Windows 2000 can be improved by using the ntldr file from Windows XP on a Windows 2000 system.

I have tried this, and it doesn't work for me.

You need to replace BOTH ntldr AND ntdetect.com ! They belong to C:\ . Doing so does make the start of the boot sequence faster,

and as a bonus, fixes bugs in the (optional, scrolling) display of loaded drivers.

I assume that this is because my Windows 2000 installation is not standard.

My Windows 2000 system files are in D:\WIN-NT not C:\WINNT as would be standard.

You assumed incorrectly. Also, having Win 2k setup as you described cannot be called non standard. It's not even unusual.

HTH and please report back if my proposed "fix" works for you (if it doesn't I'm sure you'll be reporting anyway...)

Link to comment
Share on other sites

The other problem with "speeding up" the Windows 2000 boot process is that it runs everything during boot serially, whereas Vista (and to a much lesser extent XP) will load only the most critical subsystems and drivers serially, and then load anything and everything that can load in an asynchronous fashion as such, and postpone services and drivers that don't actually need to be started during boot (like Automatic Updates, BITS, the kernel transaction manager, and the Security Center, for instance).

You can make the *initial* bootstrap quicker via ntldr and ntdetect, but the OS load will still be entirely synchronous and there isn't anything you can do about that short of removing things from loading entirely.

Link to comment
Share on other sites

Vista (and to a much lesser extent XP) will load only the most critical subsystems and drivers serially, and then load anything and everything that can load in an asynchronous fashion as such, and postpone services and drivers that don't actually need to be started during boot (like Automatic Updates, BITS, the kernel transaction manager, and the Security Center, for instance).

the kernel transaction manager, and the Security Center : N.A. to Win 2k :=)

Automatic Updates, BITS : better set to disabled (or manual) and enable only when needed (windows updates).

I concur wholeheartedly services that are either unwanted or not needed all the time, should be similarly removed from the start up process (and not only services, regular applications too...) As for regular Win 32 apps which are needed, they can be staged using shareware/freeware "delayers" and, possibly, someone wrote a similar delayer for NT services (I didn't search for that one).

The other problem with "speeding up" the Windows 2000 boot process is that it runs everything during boot serially...

You can make the *initial* bootstrap quicker via ntldr and ntdetect, but the OS load will still be entirely synchronous and there isn't anything you can do about that short of removing things from loading entirely.

Yep. Sysinternals autoruns (free, now available from Microsoft) can be a great help in startup cleaning.

All things being equal, I dare insist, replacing ntldr+ntdetect.com with the versions from Win XP has in my experience made a great difference in perceived and measured booting times for Windows 2000. I did not believe it myself until I first tried, it's almost magics - and with no ill effect that I noticed since. Worth a trial...

Cheers,

--

Ninho

Link to comment
Share on other sites

All things being equal, I dare insist, replacing ntldr+ntdetect.com with the versions from Win XP has in my experience made a great difference in perceived and measured booting times for Windows 2000. I did not believe it myself until I first tried, it's almost magics
Does hibernation and resume from hibernation also improve when ntldr ntdetect.com are replaced?
Link to comment
Share on other sites

I have read in several places on the web that the boot time of Windows 2000 can be improved by using the ntldr file from Windows XP on a Windows 2000 system.

I have tried this, and it doesn't work for me.

You need to replace BOTH ntldr AND ntdetect.com ! They belong to C:\ . Doing so does make the start of the boot sequence faster,

and as a bonus, fixes bugs in the (optional, scrolling) display of loaded drivers.

I assume that this is because my Windows 2000 installation is not standard.

My Windows 2000 system files are in D:\WIN-NT not C:\WINNT as would be standard.

You assumed incorrectly. Also, having Win 2k setup as you described cannot be called non standard. It's not even unusual.

HTH and please report back if my proposed "fix" works for you (if it doesn't I'm sure you'll be reporting anyway...)

Well, I finally managed to get hold of ntldr and ntdetect.com from a Windows XP machine, so I could try this out again, this time replacing both files as suggested.

Unfortunately, it still didn't work!

On boot-up I immediately got the message -

"Windows could not start because the following file is missing or corrupt \WIN-NT\SYSTEM32\CONFIG\SYSTEM"

This is one of the registry files of course.

I'm pretty sure that this is exactly what happened last time I tried this.

Restoring the original ntldr and ntdetect.com files made everything come back to normal, so there obviously isn't anything wrong with my registry files.

As I said before, I think the system just can't find the files because the path isn't what it's expecting.

The path to the system files in the machine I took the files from would have been C:\WINNT\SYSTEM32.

Mine is D:\WIN-NT\SYSTEM32, as I said before.

I'd be interested in any further thoughts on this.

:)

Link to comment
Share on other sites

As I said before, I think the system just can't find the files because the path isn't what it's expecting.

The path to the system files in the machine I took the files from would have been C:\WINNT\SYSTEM32.

Mine is D:\WIN-NT\SYSTEM32, as I said before.

I'd be interested in any further thoughts on this.

:)

The respective path to MY Windows files is : D:\WINNT\SYSTEM32 , very similar to what you have. And it boots as designed to, whether using the original Windows 2000 Pro SP4 ntdetect and ntldr, or the replacement files from XP SP2.

Please double check the contents of your C:\BOOT.INI file, esp. ARC paths in it. You should have a line similar to the following - but the rdisk(x) and partition(y) will vary according to your patitioning scheme, and you'll have WIN-NT instead of WINNT :

multi(0)disk(0)rdisk(0)partition(4)\WINNT="Windows 2000 Professional" /fastdetect

HTH

[Edited] I realise your D: might be on a second physical drive, whereas my D: is a partition on the first physical IDE. I am quite sure however it shouldn't make a difference to the Windows NT bootloader, provided the correct BOOT.INI is present at the root of the partition from which BIOS boots the machine (which Microsoft, strangely, calls the "system partition". The partition which contains your WinNT files they call, also strangely, the "boot partition". IOW they have it in reverse... Need to keep this in mind when reading MS knowledge base articles)

Edited by Ninho
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...