This is a discussion on sine curve representing Microsoft within the A Brief History of Cprogramming.com forums, part of the Community Boards category; Originally Posted by abachler Im positive. But still wrong. Win2k is NT 5, XP is 5.1. There isn't really anything ...
All the buzzt!
"There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
- Flon's Law
When I say "based on", I don't mena "a small part of the kernel", but rather that the majority of the kernel is identical or slightly "improved" version of. The kernel architecture of Win2K is the same architecture as NT4, which is dramatically different from the Win9x kernels.
For the most part, drivers are NOT written in Assembler. The reason there is fewer 64-bit drivers is simply that most machines don't use 64-bit OS, and thus the demand for 64-bit drivers is small.
If you do memcopy to a large extent in your driver, you probably do something a bit wrong - but if you can't avoid it, then you can still write a memcopy function that is faster, just use MASM - which IS supported for 64-bit too.
As to 2K being "more similar to 9X" is probably based on the fact that the 9X look'n'feel was (sort of) moved to 2K, along with Direct3D, which wasn't supported by NT4.
Last edited by matsp; 12-19-2007 at 05:35 AM. Reason: Misquoting and adding a bit of extra info.
Compilers can produce warnings - make the compiler programmers happy: Use them!
Please don't PM me for help - and no, I don't do help over instant messengers.
I'm not certain about the time base... any chance of getting the service packs in there too?
You'll also see that the product name for 2000 is NT5 and XP is 5.1.
For information on how to enable C++11 on your compiler, look here.