Syscall Speed On Linux And Windows
1010011010 writes: "IBM has tested the syscall speed of Linux 2.2.16, 2.4.2 and Windows 2000. As it turns out, Linux is a little more than twice as fast. This may be interesting to people who have been reading the LKML recently, as a debate has been doing on about syscall speed. Also, a method ("magic page") for further improving syscall speed is being developed by the kernel developers. The rate at which all aspects of Linux is improving -- kernel, GUIs, etc. -- is phenominal. I think Linux is pretty cool now; I can't wait to see it in 18 months."
Did you actually read the article? It does not by any means "test the syscall speed" of Linux vs. Windows! It introduces timing routines for Linux and Windows which will be used for future articles comparing various things between Linux and Windows. The point of the article is not to reveal that Windows QueryPerformanceCounter() takes 1.945 usec and is therefore less than half as fast as a Linux gettimeofday(), but rather to demonstrate that BOTH systems are capable of providing sub-2-microsecond timing resolution, and that therefore the benchmarks to be performed in future articles will be accurate!
Feel free to interpret this as "Linux r0x, Windoze suxx!!", but really, it's about as significant as saying "gettimeofday() is only 14 characters long, and only lower-case, and can therefore be typed faster that the Windows equivalent, QueryPerformanceCounter(), which is 25 characters and mixed-case! Therefore programming under Linux is quicker and easier!".
Anyway, both methods are a wank. They should just use some inline asm to query the performance counters directly. Same code for both OS then.. :-)