Okay, cite: http://basepath.com/aup/
I don't know, if you find that easy then I'm afraid to see what that's supposed to simplify.
Nah...they're really not competitive with C/C++. I know you've probably read this in places, but whatever C/C++ code they benchmarked against is probably poorly written (as is characteristic of high level programmers).
I'm sure I'll take your word for it. Except I won't.
If you really believe Java and C# actually compete with C/C++ you must be brain dead. I mean take for example a matrix...say you want to do something like the Jacobian-method with it. In Java, you have to allocate a jagged matrix. What does this mean? It means each row points to a different location in memory (and likely not contiguous)...this does
NOT preserve locality of reference...this causes cache and possibly TLB misses. In C/C++ you get 2d<->1d mapping row major array...this preserves locality of reference quite well...and actually, you get a couple orders of magnitude speed up over a Java implementation. This is just one simple example where languages like C# and Java aren't competitive with C/C++. Many C/C++ compilers can even take direct advantage of processor features like SSE...some can vectorize and parallelize code too. And all aside, with tools like OpenMP...Java and C# couldn't hope to get speed comparable to C/C++...it's not even funny how Java and C# aren't competitive with C/C++.
So to summarize:
1) Java is quasi-interpreted
2) Java's memory management does not preserve locality of reference well
3) Java probably can't take advantage of prefetching (because references can change...this problem is in C pointers too, unless you use ISO C99's 'restrict' keyword)
I'm sure similar can be said of C#.
C/C++
1) Can be optimized by the compiler all the way down to the processor level (e.g. vectorization)
2) Use of references or restrict pointers allow the compiler to make more aggressive optimizations (e.g. prefetching)
3) C/C++ support static multi dimensional arrays that are contiguous in memory, thus preserving locality of reference and reducing misses
4) OpenMP makes parallel programming on C/C++ child's play...its totally transparent (i.e. no working with threads/locks).
And more can be said than just those 4 points.
I think this should make my point more obvious. I think you were originally correct...C# and Java aren't high performance. I have no idea why you decided to state that they are competitive with C/C++. They aren't.
But yet so many good historical development tools and languages are still used today. That Ritchie fellow...what a genius.
And? My statement is still true.
Let's remember, C has been around for 30+ years, C++ has been around for 20+ years...these languages are still in demand. It means attempts to one-up these languages has failed. I don't see them ever being replaced. Oh sure, languages like C# will come and go...but these will persist.
And how long has Vista been out now? Besides, the code base for Vista is so much larger than XP...I'd really expect there to be tons of problems with it.
One year in five days, now you can compare it to the first year drops of Windows XP and alternatives. You'll see it's obvious which is more secure.
And because Vista has been out "one year and five days", I don't think its fair to compare Windows XP with Windows Vista...XP has been out since 2001. No, it's not obvious which is more secure...I swear you never learn your lesson. The same was said about XP when it came out.
The fact is, that Vista is rock solid from a security standpoint. The attack surface has been greatly minimized, and viruses have been reduced to user mode threats (Which UAC locks down anyhow).
That's great that Windows has finally adopted control over loadable kernel modules (drivers)...operating systems like *BSD have had this capability since their inception in the early 90s.
XP, the Windows OS of choice for nearly a decade. I don't know anything about OS X security, but I can tell you Linux security, like anything else, is largely dependent on what its running. There are a good many 'comes-with-everything' distributions that bundle all kinds of crap that can be exploited...this is really no surprise at all.
So do you think Windows is an exception to this rule? It's security is decided by faulty drivers, bad programs, etc.
You totally missed the pont of the very first sentence. I'm emphasizing that XP has been used for a half decade+...and you automatically compare its track record to a very new Windows operating system. Well, I don't know if you've noticed...at every windows release, the same crowd (i.e. people like you) all make claims about how secure it is...well it took 2 service packs and 5 years to lock XP down!
The improvements in Vista are how the kernel handles these sometimes malicious programs/drivers. With large portions of driver frameworks/stacks being moved to User Mode, the chance they had to crash the Kernel is eliminated.
And I'd like to this moment to emphasize how other OS have had this capability decades ago. The original BSD had a lot of its kernel in userspace, Linux has a lot of its kernel services in userspace (e.g. udev).
This goes hand in hand with what I mentioned about minimizing the attack surface.
It's a problem when you want to use this figure to show Vista is somehow popular. Oh my God! They'd have to pop a CD in...oh those poor souls.
And wait for the Operating System to install, and configure packages/programs, and locate drivers, and setup firewall rules, and ...
You see where it gets tedious? Not everyone is computer literate, people want to buy a computer, plug it in, and surf the web.
There are OEM Linux distributions as well, so it's fair game.
Not only have I installed every other Windows system all the way back to Windows 3.1...I've even installed Windows Vista. And I gotta say...its pretty easy. I think the hardest thing you have to do is specify that your language is English! Firewall rules? Computer illiterate people care about firewalls? Doesn't Vista enable all that junk for you anyhow? I guess drivers with Vista would be a problem!
And honestly...admit it, its not tedious. I'm sorry, I like Unix, but Linux is not as easy as that...even in Ubuntu you'll likely have to open the scary terminal.
It'll be the dominant Windows operating system when XP reaches its EOL in 2010...most likely not before then.
I highly doubt that, people said the same thing about Windows 2000 when Windows XP dropped. Same exact complaints.
What happened there? Didn't exactly pan out as you're saying there either.
It's not that people said this...it's just a fact of life. Windows licenses cost! New Windows releases are also notorious for having bugs and security problems that many just want to wait it out. Companies like IBM...my university even, waited years after XP's release to begin using it. They probably waited for the EOL on Windows 2000 to justify spending the money for XP.