Jump to content

Welcome to MSFN Forum
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account


Photo

Faster Startup For Windows 2000?

- - - - -

  • Please log in to reply
108 replies to this topic

#1
Dave-H

Dave-H

    Friend of MSFN

  • MSFN Sponsor
  • 813 posts
  • OS:98SE
  • Country: Country Flag
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.
:)

Dual boot Windows 98SE SP2.1a and Windows XP Professional SP3.
Dual 3.2GHz Xeons with 4GB RAM. ATI Radeon X850 Graphics 1920x1080 32 Bit Colour with Large Fonts.



How to remove advertisement from MSFN

#2
Mortagen

Mortagen

    http://www.benganley.com

  • Member
  • 31 posts
  • OS:XP Pro x86
  • Country: Country Flag
I would also like to know how to get W2K to boot as fast as XP... as 2K can shutdown far faster than xp can. Can someone help me do this?

Smegmaware! http://www.smegmaware.com
Windows Neptune Development Blog: http://www.benganley.com
Windows Projects Community: http://www.winprj.net


#3
nitroshift

nitroshift

    Beware of programmers with screwdrivers!

  • Super Moderator
  • 2,906 posts
  • OS:Windows 8.1 x64
  • Country: Country Flag
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.

Please read the rules, folks!


#4
Dave-H

Dave-H

    Friend of MSFN

  • MSFN Sponsor
  • 813 posts
  • OS:98SE
  • Country: Country Flag

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!
:)

Dual boot Windows 98SE SP2.1a and Windows XP Professional SP3.
Dual 3.2GHz Xeons with 4GB RAM. ATI Radeon X850 Graphics 1920x1080 32 Bit Colour with Large Fonts.


#5
Mr Snrub

Mr Snrub

    Former MSFT

  • Super Moderator
  • 775 posts
  • OS:Windows 8 x64
  • Country: Country Flag
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.)

My TechNet Blog
I have CDO. It's like OCD except the letters are in alphabetical order, as they should be.


#6
Dave-H

Dave-H

    Friend of MSFN

  • MSFN Sponsor
  • 813 posts
  • OS:98SE
  • Country: Country Flag
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:

Dual boot Windows 98SE SP2.1a and Windows XP Professional SP3.
Dual 3.2GHz Xeons with 4GB RAM. ATI Radeon X850 Graphics 1920x1080 32 Bit Colour with Large Fonts.


#7
Mr Snrub

Mr Snrub

    Former MSFT

  • Super Moderator
  • 775 posts
  • OS:Windows 8 x64
  • Country: Country Flag

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.

My TechNet Blog
I have CDO. It's like OCD except the letters are in alphabetical order, as they should be.


#8
Dave-H

Dave-H

    Friend of MSFN

  • MSFN Sponsor
  • 813 posts
  • OS:98SE
  • Country: Country Flag
That doesn't sound too bad actually, and quite a clever idea.
Almost makes me think of going to Vista.
(I did say almost!)
;)

Dual boot Windows 98SE SP2.1a and Windows XP Professional SP3.
Dual 3.2GHz Xeons with 4GB RAM. ATI Radeon X850 Graphics 1920x1080 32 Bit Colour with Large Fonts.


#9
Ninho

Ninho

    Member

  • Member
  • PipPip
  • 166 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.


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...)

#10
cluberti

cluberti

    Gustatus similis pullus

  • Supervisor
  • 11,252 posts
  • OS:Windows 8.1 x64
  • Country: Country Flag
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.
MCTS Windows Internals, MCITP Server 2008 EA, MCTS MDT/BDD, MCSE/MCSA Server 2003, Server 2012, Windows 8
--------------------
Please read the rules before posting!
Please consider donating to MSFN to keep it up and running!

#11
Ninho

Ninho

    Member

  • Member
  • PipPip
  • 166 posts

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

#12
Ascii2

Ascii2

    Advanced Member

  • Member
  • PipPipPip
  • 427 posts

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?

#13
Dave-H

Dave-H

    Friend of MSFN

  • MSFN Sponsor
  • 813 posts
  • OS:98SE
  • Country: Country Flag

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.
:)

Dual boot Windows 98SE SP2.1a and Windows XP Professional SP3.
Dual 3.2GHz Xeons with 4GB RAM. ATI Radeon X850 Graphics 1920x1080 32 Bit Colour with Large Fonts.


#14
dirtwarrior

dirtwarrior

    OS modder

  • Member
  • PipPipPipPipPipPip
  • 1,467 posts
It indeed does work. For even faster times use the files from 2k3
Posted Image

#15
Ninho

Ninho

    Member

  • Member
  • PipPip
  • 166 posts

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, 29 August 2008 - 12:23 PM.


#16
Dave-H

Dave-H

    Friend of MSFN

  • MSFN Sponsor
  • 813 posts
  • OS:98SE
  • Country: Country Flag

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)

Thanks Ninho.
I've tried with the files from Windows 2003 too, as per Ascii2's suggestion.
Same result as before.
In fact the ntdetect.com file is fine, it's the ntldr which is the problem.

I even tried editing ntldr with a hex editor and changed a "c:\winnt" entry that I found to "d:win-nt".
The system, wouldn't even start then, I just got "ntldr is corrupted, the system cannot start".
Thank heavens for Windows 98 DOS boot disks!

My boot ini is as follows -

[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(2)\WIN-NT
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WIN-NT="Windows 2000 Professional SP4" /fastdetect
C:\CMDCONS\BOOTSECT.DAT="Windows 2000 Recovery Console" /cmdcons
C:\="Windows 98 Second Edition"

Any clues there?
My D: drive is a partition on the same physical drive as my C: drive, where Windows 98 sits.
Is the fact that I have a dual boot system causing the problem I wonder.....?
Cheers, Dave.
:)

Dual boot Windows 98SE SP2.1a and Windows XP Professional SP3.
Dual 3.2GHz Xeons with 4GB RAM. ATI Radeon X850 Graphics 1920x1080 32 Bit Colour with Large Fonts.


#17
Ninho

Ninho

    Member

  • Member
  • PipPip
  • 166 posts

My boot ini is as follows -

[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(2)\WIN-NT
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WIN-NT="Windows 2000 Professional SP4" /fastdetect
C:\CMDCONS\BOOTSECT.DAT="Windows 2000 Recovery Console" /cmdcons
C:\="Windows 98 Second Edition"

Any clues there?


Can't see anything wrong, it should be working !
Still you'll want to check that your WinNT partition is indeed where the boot.ini says it is, viz a primary partition described by the second physical slot in the MBR. For this check use any HEX viewer, or a competent partition-and-boot-manager (I like Ranish's).

My D: drive is a partition on the same physical drive as my C: drive, where Windows 98 sits.
Is the fact that I have a dual boot system causing the problem I wonder.....?


Nope it isn't. Using the Win 2k or XP boot files, my system is able to quad boot Linux, DOS, Win 98 and Win 2k.

Good luck !

--
N.

#18
Dave-H

Dave-H

    Friend of MSFN

  • MSFN Sponsor
  • 813 posts
  • OS:98SE
  • Country: Country Flag
Sorry for the delay in responding ninho.
I have now checked the partitions on my system disk, which contains drives C: and D:.
D: is the Windows 2000 partition.

C: is an active primary DOS partition.
D: is a logical DOS drive within an extended DOS partition on the same disk.

So D: not a primary partition.
I believe IIRC that you can only have one primary partition on a disk.

Is that the problem?
:)

Dual boot Windows 98SE SP2.1a and Windows XP Professional SP3.
Dual 3.2GHz Xeons with 4GB RAM. ATI Radeon X850 Graphics 1920x1080 32 Bit Colour with Large Fonts.


#19
Ninho

Ninho

    Member

  • Member
  • PipPip
  • 166 posts

D: is the Windows 2000 partition.

C: is an active primary DOS partition.
D: is a logical DOS drive within an extended DOS partition on the same disk.

So D: not a primary partition.
I believe IIRC that you can only have one primary partition on a disk.


You /can/ have several primaries - partitionning tools offered as part of Microsoft OSes won't let you create
such configurations, but the OSes can work with such configurations.
Conversely, you can have only one primary extended partition, which in turn should contain only one
logical, and optionally one extended, and so on.

Concerning your problem, I would check the validity of the line in your boot.ini :
"multi(0)disk(0)rdisk(0)partition(2)\WIN-NT="Windows 2000 Professional SP4" /fastdetect"

Open the logical disk management console (diskmgmt.msc) and check that the OS partition is indeed number 2
as reported by Windows.


--
Ninho

Edited by Ninho, 05 September 2008 - 03:50 PM.


#20
Dave-H

Dave-H

    Friend of MSFN

  • MSFN Sponsor
  • 813 posts
  • OS:98SE
  • Country: Country Flag

You /can/ have several primaries - partitionning tools offered as part of Microsoft OSes won't let you create
such configurations, but the OSes can work with such configurations.
Conversely, you can have only one primary extended partition, which in turn should contain only one
logical, and optionally one extended, and so on.

Concerning your problem, I would check the validity of the line in your boot.ini :
"multi(0)disk(0)rdisk(0)partition(2)\WIN-NT="Windows 2000 Professional SP4" /fastdetect"

Open the logical disk management console (diskmgmt.msc) and check that the OS partition is indeed number 2
as reported by Windows.

Thanks again Ninho!
This is what my disk management looks like.
Does it seem OK?
I'm not sure how you determine whether a partition is "number 2" or not.
The D: drive is certainly listed after the C: drive on disk 0, but does that make it number 2 or number 1 (C: being 0)?


[attachment=23337:Disks.jpg]

Thanks again for all your help.
Dave.
:)

Dual boot Windows 98SE SP2.1a and Windows XP Professional SP3.
Dual 3.2GHz Xeons with 4GB RAM. ATI Radeon X850 Graphics 1920x1080 32 Bit Colour with Large Fonts.


#21
James_A

James_A

     

  • Member
  • PipPip
  • 153 posts
It makes it number 2, because C is not 0, it's 1.

In the strange world of ARC syntax used in BOOT.INI:
multi(X), disk(0), rdisk(Y) & partition(Z)
X and Y begin at 0, but Z begins at 1
if the first word is "multi" then "disk" is always disk(0)

So, multi(0)disk(0)rdisk(0)partition(1) is the first partition of the first physical disk on the first disk controller.

#22
Meados

Meados

    Newbie

  • Member
  • 29 posts
damm.. This is amazing.. I also tried this and seems my windows 2000 is so faster how is windows xp boot.

Can someone send me the windows 2003 boot files? I would like to check the speed in windows 2000.

#23
Dave-H

Dave-H

    Friend of MSFN

  • MSFN Sponsor
  • 813 posts
  • OS:98SE
  • Country: Country Flag
Meados I've sent you a PM with links to my Windows 2003 startup files.
I just wish they worked for me!
:no:

Jacobmax, thanks for the feedback.
Are you saying that the entries in my boot.ini file do match my drive configuration?
If so, we still don't know why these newer startup files won't work on my system.
Ninho?
:)

Dual boot Windows 98SE SP2.1a and Windows XP Professional SP3.
Dual 3.2GHz Xeons with 4GB RAM. ATI Radeon X850 Graphics 1920x1080 32 Bit Colour with Large Fonts.


#24
Meados

Meados

    Newbie

  • Member
  • 29 posts

Meados I've sent you a PM with links to my Windows 2003 startup files.
I just wish they worked for me!
:no:


They work like a charm for me! And my language of windows is different.

It runs more faster than Windows XP ones. Seems my Windows 2000 startup is with same speed of Windows XP startup, or at least its very close. (I will do time count to see the perfomance of both boottimes)

I also tried to bot Windows XP with windows 2003 files, but I didn't noted any difference.

#25
James_A

James_A

     

  • Member
  • PipPip
  • 153 posts

Are you saying that the entries in my boot.ini file do match my drive configuration?

Yes, to me it seems fine. Remembering that, according to Microsoft:
Your boot files are on your system volume -- and
Your system files are on your boot volume

then you have NTLDR+NTDETECT.COM+BOOT.INI on C:
and you have your Windows 2000 system on D:\WIN-NT

according to my reading of both your screenshot and your BOOT.INI.

Your screenshot also shows C: as a primary partition and D: as a logical partition which fully occupies an extended partition (See the green border around it in the screenshot.)

I have been following this thread with a view to trying this myself, so I am *very* interested in what makes this work and what doesn't.

The only thing I can think of is that your D: being in a logical partition, is in a slightly different place than if it were a primary partition. The two used to be exactly 63 sectors different when disks were a lot smaller and everything was ruled by CHS (Cylinder-Head-Sector) geometry.

Microsoft used to advise against multiple primary partions that were readable by DOS because (IIRC) it led to DOS confusion and possible data loss. On the other hand Windows 2000 is perfectly happy with more than one Win-readable primary partition (and I've done it).

The Win2000 NTLDR is parsing the MBR, finding the extended partition and then following the partition "chain" down the disk until it finds the logical partition. Is it possible that the WinXP NTLDR no longer does this? In other words does the WinXP NTLDR require both system volume AND boot volume to be primary partitions?

That would account for the Win2000 NTLDR working and the WinXP NTLDR not. Does anyone else know for sure?




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users



How to remove advertisement from MSFN