Jump to content

4GB: win2k still worthwhile?


gojirasan

Recommended Posts

I gave XP a try when it was released, but quickly went back to 2K due to reliability (pre-SP1) issues that I was having, and just on principle to avoid all that shiny fisher price XP bloat (aka higher HDD/mem usage). But I am in the process of buying a new computer and am now sitting with 2 beautiful 2GB sticks ready to install. So my question is this: does it still make sense from a performance and anti-bloat stance to stick with 2K or should I downgrade to XP for its (slightly) better compatibility with current programs, the legacy 'compatibility mode' for playing DOS games, and the /3G switch or whatever other real improvements XP may have? A faster boot time maybe? Since win2K, which was indeed a huge improvement (in reliability) over 98SE it seems that MS is determined to keep making their OSes worse. The thought of installing vista (9 gigs!!!) makes me gag. I am dreading the day that I have no choice due to some new DX10 only game. I am hoping to wait it out for Vienna since they claim to be going for a more lean and mean build. We can all keep our fingers crossed.

Note that I absolutely will be multi-booting with XP x64 to run Maya, 3D Studio Max and other modeling proggies (also DOS 7.1, 98micro, and Ubuntu Linux), and that I will be nLite-ing and XPlite-ing to keep the HDD footprint down. The purpose of the win2k/win2003/winXP 32bit install is to be able to run the windows programs that won't run 64 bit natively and to most efficiently run older programs that are never gonna use a lot of memory. Although I do love win2k and would be sad to part with it, in the end it is every last percent of performance that really matters to me. But 'performance' also includes having the maximum amount of memory usable for programs other than the OS itself: the main reason I am still a 2K user.

Most of the comparisons (benchmarks) between 2K and XP that I have seen seem to indicate that they have basically equal performance in every way except minimum memory requirements and a larger minimum install size. And normally that would be reason enough for me to stick with 2K (more mem for my programs to use, more space on my OS partition). But OTOH, with 4 gigabytes it seems that I might benefit from the /3G switch in XP and I do play DOS games, so the compatibility mode may be worthwhile. And while most of my professional applications will probably have 64 bit versions, there may be the occasional memory hog (like say a recent game) that doesn't.

So does win2k still make any sense at all with 4GB? Is there any argument to be made for it? Obviously I am leaning toward installing both a 32 bit and a 64 bit version of XP, but I am still hesitating. I do love win2k, a rare gem in the OS world. I realize that in the end it will probably not make any noticeable difference as long as I use XP x64 for my more demanding apps, but I still need to make a decision and I don't want to flip a coin. I am more interested here in theory than practice. On the one hand a nlite-ed, XP-lited 2K will be leaner and meaner. On the other there is the /3G switch, less need to run DOSbox for DOS games, and slightly better compatibility with current apps (no need to crack a setup file to remove the win version check).

Link to comment
Share on other sites


If you can lay your hands on W2000 Advanced Server, the /3GB switch is available. But even without this switch it makes sense to add lots of memory. While a single process cannot use more than ~2GB, two processes can use around 4GB.

The legacy 'compatibility mode' for playing DOS games is partly available for W2000. Have a look here.

Link to comment
Share on other sites

You misunderstand memory management. Personally, I would suggest XP or Vista if you have 4GB of RAM, but let me clear up some of your misunderstandings:

and the /3G switch or whatever other real improvements XP may have?

The /3G switch gives your usermode processes 3GB of Virtual Address Space, but only if the application binary was compiled /LARGEADDRESSAWARE when it was built. Also note that Virtual Address Space (VA) and Physical RAM have absolutely nothing to do with each other - the NT memory manager decides what (if anything) of a process' VA to map into RAM, and if so, how many pages (some may be mapped to RAM, some to the pagefile). So unless you have applications that can actually use the 3GB of VA (and most, if not all, of your apps will not - mostly server apps take advantage of this) it makes no sense to do this. Not only that, but you take 1GB from the 2GB of VA the kernel would normally get and waste it when you do this unnecessarily, and you halve things like kernel paged pool and nonpaged pool, and you take a severe hit in system PTEs available. If you want to learn more, grab the book Wndows Internals 4th Edition and read chapter 7.

But 'performance' also includes having the maximum amount of memory usable for programs other than the OS itself: the main reason I am still a 2K user.

I would say that using Nlite on XP will give you similar footprint and memory usage as 2000, and will also make you more compatible with newer hardware, software, and drivers. You do lose some of the DOS compatibility mode, but I find XP running DOSBox to be just as capable as 2000 and DOS (DOSBox is actually more capable, as it's a virtual DOS environment). If you REALLY want DOS, grab VirtualPC, VirtualBox, or VMWare Server and install DOS in a VM on the XP machine.

But OTOH, with 4 gigabytes it seems that I might benefit from the /3G switch in XP

As stated before, the /3GB switch does NOTHING for performance, period. It's a VA construct, not a RAM or performance construct.

So does win2k still make any sense at all with 4GB? Is there any argument to be made for it? Obviously I am leaning toward installing both a 32 bit and a 64 bit version of XP, but I am still hesitating.

Honestly, an Nlite-d XP running the "classic" interface is probably a better option than 2K. Not only that, but 2K is in extended support only, meaning bugs don't get fixed, only security updates. XP gives you the ability to run newer apps and drivers for newer hardware (and newer games too), and gives about the same footprint.

Also, make sure you read this sticky for gotchas with 4GB on x86 machines, as well as some more info on VA vs RAM.

Link to comment
Share on other sites

Probably one of the best posts I have seen a while. Nice post cluberti. I agree 100%. There is no way I would consider going the Windows 2000 route after having used the nLited XP 64 bit. Utterly brilliant. Espcially if you have the drivers for it.

Link to comment
Share on other sites

I want to thank you, cluberti, for your detailed reply to my question. I do appreciate it. So the /3G switch is a total non-issue. That changes things considerably. And win2k also has a compatibility mode (thanks Mijzelf). Those were my two primary reasons for moving to XP. So it actually makes 2K look a bit better.

I am curious as to how an nlited, xplited win2k would compare to an nlited, xplited XP in terms of HDD/mem footprint. I would guess that win2k would still be at least somewhat smaller. Probably the only way to find this out is to actually try it for myself. Comparing the HDD footprint is easy, but is there an accurate way of determining how much RAM the OS is using with no applications running? Maybe just running process explorer and closing all non-essential processes? Your recommendation is well taken. No more bugfixes in 2K. Better XP compatibility/support in both drivers and apps. That may be enough of a reason to switch. Is there any truth to the faster boot time?

As far as the limits of 32 bit addressing link, I have already read pretty widely on the topic. Mainly because I was looking into enabling PAE, but based on what I have read it is too much of a hack to be bothered with and could actually reduce performance instead of increasing it. And in any case it's not possible (without some kind of real hack I suppose) with the newest service packs of either XP or 2K (or Vista even).

I guess I could still consider running windows server 2003 for my 32 bit OS. I am just afraid that it will be difficult/impossible to find drivers for it and only server apps are really ever tested on it. So it may end up having reliability problems. I think what I'll do is compare the HDD and mem size of all 3 installations after they have been fullly patched, nlited, and XPlited.

So would it be fair to say that the only argument that can be made for running 2000 (with or without 4 gigs) at this time is its (presumably) slightly smaller HDD/mem footprint? And that the memory difference is too small to make a measurable difference in performance or memory management in general and that whatever HDD space could be saved would be insignificant especially when compared to modern HDD sizes (I will have 4 1TB drives in this system). I will do the mem/HDD footprint comparison before deciding. If the difference really is minimal I guess I will go with XP. Of course XP also has that PITA activation thing which I am not looking forward to. Yet another reason I have delayed 'upgrading'. Should I post the results of my test in this forum?

Link to comment
Share on other sites

is there an accurate way of determining how much RAM the OS is using with no applications running?

Yes, there is, to a point (it's still an estimate, albeit a close one). In perfmon (start > run > perfmon), you can add the "Working Set" counter under the "Process" object, and select the "_Total" instance. Then, add the "Cache Bytes", "Pool Nonpaged Bytes", and "Available Bytes" counters under the "Memory" object. These give you:

Working Set - Gives you the amount of memory pages that have been used recently by running processes, and as such are almost all going to have been mapped into physical RAM. This number will be larger than the actual total process memory utilization due to shared pages between processes being counted multiple times as a process working set.

Cache Bytes - This number gives you a real-time display of the value of the system cache, the system driver resident bytes, the system code resident bytes, and the kernel paged pool bytes that are cached in RAM. We will use this number in our math later.

Pool Nonpaged Bytes - This counter gives you the amount of the kernel nonpaged pool resource size - this pool is ALWAYS mapped into RAM (thus "nonpaged" pool - cannot be paged out to a paging file).

Available Bytes - This gives us the amount of physical RAM available for system use, and is equal to the total amount of memory assigned to the standby (cached), free, and zero page lists (I won't explain them here, it's too deep for this discussion - again, Windows Internals 4th Edition, chapter 7 :)).

Now, add up these 4 numbers (they're all in bytes) and subtract that from the amount of physical RAM installed in the machine, and you have an approximation of the actual physical RAM footprint of your machine - you'll know how much is *used*, and in general, to where. The "Available Bytes" counter is how many bytes in memory pages you have available for allocation, and the rest is used.

Is there any truth to the faster boot time?

On older hardware, probably not - but on a new machine, yes, XP boots a decent amount faster.

As far as the limits of 32 bit addressing link, I have already read pretty widely on the topic. Mainly because I was looking into enabling PAE...

You are correct - only server versions (and only Enterprise/Datacenter versions at that) of x86 W2K/2K3/2K8 support it - client OSes get no benefit from /PAE (other than the ability to create a single paging file larger than 4GB).

So would it be fair to say that the only argument that can be made for running 2000 (with or without 4 gigs) at this time is its (presumably) slightly smaller HDD/mem footprint? And that the memory difference is too small to make a measurable difference in performance or memory management in general and that whatever HDD space could be saved would be insignificant especially when compared to modern HDD sizes (I will have 4 1TB drives in this system).

I would say yes, the differences will be insignificant in RAM usage (although XP does have the prefetch cache, which will make it look slightly larger in RAM footprint), although disk usage will be a bit different as XP's binaries are larger and far numerous to 2000 - however, with a 250GB drive, is that really a problem anymore? ;)

And yes, please post your installation steps for both 2000 and XP, and the results of your testing - I'd love to see it, personally.

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