Wednesday, March 7, 2007

Unix Or WindowsNT

Today I read a nearly 8 years old article about "which operating system is better?". The article was written by one of the famous and my favorite technologist, Mark Russinovich. Russinovich is the man behind the famous Sony Rootkit Controversy. He is the only man who wrote many tools for windows, which you can find on http://www.sysinternals.com/.
Even 8 years ago it was the fight that whether the Unix (Lets include Linux also here) or Windows is better operating system. Russinovich wrote in his article that the OS is all about the application availability, initial cost, cost of support and maintenance, compatibility with existing infrastructure, and ease of use. The things are clear now still today the windows has more than 60% of market penetration and now when Windows Vista has come into the market with better security and look & feel, there is no way that the *nix OS will come into the market in next 10 years.
I like to quote these two paragraph in this post which was written in the article…do not miss these

A major difference between UNIX's and NT's: architecture is that UNIX does not
incorporate its windowing system--the subsystem that manages GUI resources for
applications--into kernel mode, as does NT 4.0. Instead, the UNIX windowing
system is an add-on user-mode application that its developers wrote using
publicly defined UNIX APIs; consequently, third-party products can replace
UNIX's windowing system. However, the majority of the UNIX community has adopted
MIT's X-Windows as a de facto, if not official, graphical interface standard.
Before NT 4.0, the NT windowing system was a user-mode implementation, but
Microsoft found that the performance of graphics-intensive applications improved
when the windowing system operated in kernel mode.


Namespace and object management:
In the NT object model, device drivers can easily implement
objects in the namespace that represent nonstandard resources. For example, a
device driver can create an object called \Proc that, after an application reads
it, returns information about the active processes in the system.