Is Linux really faster than MS Windows ?
Rob Miracle
rwm at photo-miracles.com
Sat Mar 5 17:28:38 UTC 2005
>On Sat, 05 Mar 2005 11:41:32 +0530, Parameshwara Bhat <pbhat at ongc.net> wrote:
>
>On my home computer and office computer, I have logged the time taken upto
>logging in, it turns out that Ms windows(XP) is faster than Linux. On both
>computers, dma is turned on.On my home computer, I have SUSE, Fedora and
>Knoppix (debian) installed and on office computer, only Fedora. I have
>measured with all the distros and while knoppix is faster of the distros,
>still it doesn't measure upto Windows in speed. Both fedora and SUSE take
>about one and a times longer time, evrything else remaining same.
>
> Any comments ? Or am I missing something ?
Lots of comments. First of all, as others have commented, there is a
difference between boot time and speed once its booted up, as well as
shutdown time (if you have like a laptop for instance.....).
Unix based Operating systems are designed to boot once and run for a long
time. Windows systems are meant to be started and shutdown with each
use. Many people don't shutdown Windows every day, but its really designed
to do that.
Boot speed is a "visible" but meaningless speed since it only impacts
startup. However Gates & Co want your experience to be a good one and that
means faster boot speeds. As such, some of the file system checks and
other maintenance operations have been pushed to shutdown time, the theory
being that once you hit shutdown and walk way, you don't care how long it
takes to shut down.
So measuring "boot speed" is a rather meaningless measure of performance.
The next major difference between Windows and Unix OS's is memory
management. This is where speed becomes very noticeable. Both systems
us a concept called "paging" to move unused programs and data out of memory
to make room for programs that are currently running. Windows pages
constantly. The system provides a smooth constant level of performance
because its always swapping. With Unix boxes, they don't start paging
until they run out of physical memory. The effect is that the machine
will run like a race horse as long as your don't run out of memory. When
you do run out of memory, you start "paging" and suddenly the system slows
way down.
With this fundamental difference the more memory you have the faster the
Unix box will be, where as with Windows, there is a limit to where memory
helps, but a faster hard drive will boost the overall speed. That said,
a Linux box (or any Unix OS, including the Mac OS X) is going to be
considerably faster at number crunching than the same speed Windows Box
since more of the CPU is being used for processing and less for paging.
Now we get into the next reason its hard to measure things,
graphics. Xwindows is slow, period. It is no where near as optimized
for graphic output as Windows is. Microsoft has worked very hard to get
its graphics rendering to be as efficient as possible. This is due in part
to Windows being able to directly address the hardware where as under Unix
the graphics drivers have to be a lot more portable and layered (Gnome
needs GTK+ which needs Xwindows which needs video drivers and then the
card. With windows its, Windows->Driver->Card. This is one reason
graphic artists like Macs. You get the OS efficiencies of Unix and a solid
window system that works with fewer layers. The reason this is the way it
is has to do with the nature of the two beasts. Microsoft being a single
company can build a very dedicated platform where as the Unix family has to
address openess and standards. Lets face it, there are a zillion different
Linux, (Free,Net,Open)BSD's, in addition to HPUX, Solaris, AT&T Sys V, etc.
that all have to be X compatiable and then you have choices of GNOME< KDE,
and a bunch of other Interfaces on top of that. Windows will always win
this one.
Finally, the last area of speed that needs addressed is what all is your
system's that you are comparing loading? With Windows, you are very
unlikely to have a sendmail daemon running, or a telnet/sshd daemon, or a
web server or SQL server running. Depending on your install options for
Linux, those may very well be running and unless you are looking for them,
you may not notice them.
So when Windows starts up, its loads its kernel and graphics system and
device drivers. When Linux starts up, not only does it load those, but
there is a bunch of other stuff firing off, like time sync (which your
system basically stops until it connects to the time server and gets the
time and sets your clock). So its really unfair, as I said above to even
consider power-on to prompt as a measure of anything meaningful.
So in conclusion, given two identical boxes with sufficient memory to avoid
swapping, the Linux box should smoke the Windows box in number crunching,
spitting out web pages, etc. Windows is going to win when Graphics are
involved or if memory is on the thin side.
Rob
--
Rob Miracle
Photographic Miracles
Cary, NC
http://www.photo-miracles.com
More information about the fedora-list
mailing list