Windows 7 is basically Vista SP3.
They rebranded it after some heavy modifications. It's still the same kernal.
Anything from past Windows 9x are based on the same hybrid kernel. That means 2000, NT, XP, Server, Vista, and even the latest 7 is based off the same kernel.
Yeah, NTFS is pathetic. When you've got a filesystem that doesn't correct file fragmentation very well, combined with dynamically allocated virtual memory, it doesn't take too long for the whole system to bog down. We shouldn't have to defrag and reboot once a month just to keep the system running and files intact.
Regardless of any file system you use, as long as the OS utilizes paging memory and you do a lot of activity everyday, the machine is definitely bound to form huge amounts of fragmentations. When you manually de-fragment a hard drive, it just relocates the files to remove the unused fragments, it does not necessarily make your system run better or make your files intact, it does that so when you add newer files, the file system can easily decide where to insert those newer files. Also, it's not only the hard drive that de-fragments, the memory also does this. Even if you don't notice it, the main memory does some sort of compaction by itself.
Driver support? None is perfect. Plug and play? If I can run DX10 games directly out of windows generic graphic drivers instead of installing the graphic card driver, then I'm impressed.
The generic drivers will just ensure that the desktop environment will be rendered properly. It is not possible to install an all-in-one super video adapter drivers for an OS because devices are different all out and graphics card manufacturers want control as well -which is why they not only provide drivers, but also application suite that consumers can use to tweak the device.
make most applications self-contained (scattered DLLs everywhere = bad).
The reason why DLL files are created is for sharing program code and making the size of the executable smaller. It will also make the execution time faster because the OS will not need to load all those parts in the memory if it already exists. That said, it also saves memory space because functions stored in DLL files are only loaded once.
Linux, and any other Unix-Like operating systems, also uses the same type of files. Shared Objects are also scattered across the \root\bin subdirectory in many Linux Distributions.