What to select for Servers: Windows 2003 or UNIX?

In this article I will analyze the features and costs to select which is the best operating system for servers as well as the services that each one of them brings to us.

Note: I am not an english native, please excuse poor grammar and syntax.

They are groups of people in the world that defend free versions of OS
(Operating Systems) like Linux and FreeBSD and hate Windows. But those that
love Windows and Microsoft also exist and they hate the free software. Each one
of these parts has very strong reasons to affirm their approach… but… Who
are better?

Here we will demonstrate that none of the two groups
is right because Windows and UNIX (Linux, FreeBSD) have advantages
and disadvantages. The best solution is one that adapts to the necessities and
each client’s scenario. Let us begin to characterize each OS and for that reason
we will make it a chart of features. We will give values from 0 to 5 (worse
– better). This table has been made with values gathered from a
series of tests done with two kind of hardware: 1 – Professional Server
Hardware (Server with Intel Xeon 2 Processors 1.0Ghz, 40GB Disks SCSI, 1GB RAM,
100MBits Network Card). 2 – Standard PC (Pentium 4 1.6Ghz,
40GB IDE Disks, 512MB DDR266 RAM, 10MBits Network Card). And we do
that with Network Load. Of course, we fist use Hardware type 1 with FreeBSD
and Windows 2003 and later we try with Hardware type 2 with the same
Operating Systems. Optimization has not been made to any Operating System. We
use standard installation and with proceed with minimal configuration options. We use standard PC
hardware because we were curios about the  behavior of the OS in that kind
of hardware (there were rumors that Windows does run with low performance and a
lot of errors in PC Hardware. In our tests that didn’t happen). Well, let’s

FeatureLinux,FreebsdWindows 2003 SBS
Easy Deployment on a Network (Clients)35

– Installation and configuration of Windows on the Network was very easy. We use
a preconfigured version of this OS (using the Wizard that comes with the
Support Tools) and use Remote Installation. later with Active Directory, Group
Policy and Remote Configuration we did the final configuration.
– We put FreeBSD on a FTP Server and installed it with a boot diskette. We
had to configure each client manually but we didn’t make a lot of
configuration because we copy some files of the /etc directory and only
modify those that interest us. We could try to install FreeBSD remotely (there
is a way, ok?), but that wasn’t a standard option of the OS and needs manual

Easy Administration35

– Windows 2003: It has a lot of Wizards that guide you trough the process of
Installation, Configuration and Administration. Windows use MMC (Microsoft
Management Console) and has many technologies like Remote Desktop, Remote
Administrative Tools, and also has a lot of command tools that an expert can
– FreeBSD: Has SSH and the best command tools but that’s all… why
there is not any wizard? (We could use WebMin for instance, but WebMin is
not Stronger than Windows Administrative Tools or Remote Desktop) (XFree86 has
a remote desktop tool too but, we will use it to do what?)

Easy Adaptation to Changes35

– Active Directory: Is the key of the adaptation. Suppose that we want to merge
companies and we want to make a centralized control. With Active
Directory we can make it. We can distribute Policies and we can manage every
aspect of the clients.
– FreeBSD: We could do the merging too, but requires a lot of configuration and
that is not “Easy”.

Easy Client-Server Integration and Flexibility35
– Windows: Microsoft build XP and 2003, this OS communicates
perfectly using technologies like Active Directory, GPO, Exchange
Server-Outlook, Windows SharePoint-Office 2003, and so. (Remember that Exchange
and SharePoint comes with SBS version)
– FreeBSD: This OS has the problem that has other UNIX OSes. There is not
Integrability. It has a lot of tools and a lot of applications but there is a
mess. There is not Version Control (Each tool controls it’s version
separately) and there is a lot of version of the same thing. Of course the
network administrator can make a line of software and can force clients to use
it, but there is a “Easy” tool that do that Automatically?
Easy administration of LAN Networks35

– Windows: We have Active Directory to manage users, we have Group Policy
Objects to control all aspects of the Client OS (XP), we have Software
Update Services to patch Client OS, WMI, and other technologies. Behold, GPO is
the great feature of Windows also we can distribute software and force to use
it using GPO.

– FreeBSD: We have NIS to control users, but, how we control every aspect of
the os as centralized as Windows?

Consumption of Resources50
Microsoft has made a very good job with Windows 2003 comparing with
NT and 2000, but FreeBSD won this battle.
Windows loads some unnecesary services and FreeBSD only loads those things that
you want to. Windows has a constant graphical interface and FreeBSD not.
Windows loads All Hardware in memory (You can deactivate someones) 
and FreeBSD only loads there ones that you want to use. FreeBSD has a better
(and configurable) memory management than Windows. To corroborate that
last idea, we did this test: We build a script that uses the “cp” command on
FreeBSD and the “copy” command on Windows (Bash vs Cmd). We create a file of
10GB and we begin to copy it from one location to other. Windows and FreeBSD
handled this (Performance in FreeBSD diminished a little). The Problem was
here: we create 15 000 files of one byte each one and guess what… We begin to
copy it from one location to other and Windows Performance diminished a lot
(You opened Explorer and it doest open, the mouse was blocked in
intervals, and the processors was 100% each one). How could it be possible?
Best performance (OS) in the same Hardware54
This is relative because performance has many aspects. There are
Official Comparisons between Samba vs Windows SMB, Apache vs IIS, PHP
vs ASP, Java vs .NET, Postfix vs Exchange and there are many others.
I gave one point more to FreeBSD because in my own scenario FreeBSD worked a
bit more quickly than Windows. I evaluate these protocols SMTP, POP3, DNS,
DHCP, SMB, HTTP (Using Postfix, Exchange, Apache, Samba, IIS) and
the behavior of System’s Performance in general, using benchmarking
software available on Internet. I didn’t keep in mind how fast Apache
vs IIS ran, i only saw the load of the system. Of course this is a
polemic thing so, i recommend that if you are interested to know what is better
(Apache vs IIS or other comparison) i recommend you that remit you to the
Official comparison available on Internet.
Cost of Licenses50
Windows costs, FreeBSD is Free.
Secure system53
The security is Relative. Windows has more holes than other
operating systems because most of the hackers attacks windows more that other
OSes. But perfectly, undiscovered holes of security can still exist in UNIX.
Let us also keep in mind that Windows has the best Technical Support, and when
being discovered a flaw they corrects it quickly.

However we give 5 to FreeBSD and 3 to Windows because historically FreeBSD
resists more attacks than Windows and of course there is a time that windows is
vulnerable, i refer to the time between the hole is discovered
and the Support corrects it. And we must notice something to… The is more
software, virus, programs, trojans, etc that runs in Windows than FreeBSD,
so this is a good thing for FreeBSD and something against Windows
Security that will exist ever.
We must declare too that Windows 2003 own many prizes of Security and there are
official sites that declares that Windows is the most secure operating system
in the world. I respect that. So if you have another opinion you can remit to
these official sites of security.

Professional administration (Command-Line Utils)52
– This is a real thing. FreeBSD like other UNIXes is a command line
OS build on the basis of the command line work and Windows is an OS build on
the basis of a Graphical Interface (Remember the first NT). Today are
improvements in Windows like in FreeBSD… but there are not a Windows
“Command-Line” Server so you depend on the GUI to do some administrative tings.
And notice that un FreeBSD you have a /etc that holds all configuration and you
can modify anything using a text editor. But in Windows the registry is a
mystery…. don’t you think?
System Maintenance25

– Windows: Software Upgrades, Patches, Service Packs and implementation of new
versions of application is an easy task. First we have Software Update
Services. This is a service that automatically distribute patches and
service packs into a network and helped with Active Directory it can install
automatically these patches on client machines making an Up-To-Date Network. We
have MSI (Microsoft System Installer) too, that takes charge
of controlling the installation of applications and the control of
software versions. With this technology (and with Software Shadow Copy and .NET
Framework) windows minimized the DLL Hell problem because has a copy of
different versions of the same library and dynamically manage wich
library is the most adequated to work with.
– FreeBSD: It has Ports. This is a great option to Update the OS and the
Software, but… it’s a bad idea because you must need to update ALL the
software on you server because if you don’t you will live a great DLL Hell
Problem. FreeBSD like other UNIXes work with Packages and these packages
are created and updated by third party programmers. And the problem is
that if you use for instance a program that use an older version of gtk and you
install a new program that use a new version of gtk maybe those programs work
but i have the experience working with program that doesn’t. Companies
that use FreeBSD or other UNIXes because that problem doenst UPGRADE the OS.
They are limited only to upgrade a little part of the code to correct security
problems. For instance Yahoo! Servers for a long time was on FreeBSD 2.0, and
upgrade it’s OS to version 4.x some years ago. FreeBSD is over version
5.3, do you think that Yahoo! will upgrade to 5.3? I don’t think so.

DLL Hell: Problem that appears on Windows and UNIX. Suppose that you have
an application that use a specific version of a shared library and
you install other program that needs to use a newer version of
the same library. If you upgrade the library to the newer version
maybe your old program doesn run. What do you do?. This is the DLL
Hell problem.

Fast and Secure communications (TCP/IP)54
This is relative too, because there are many opinions
about that. I will put here my experience in my custom scenario. I have a
Server that is acting as a gateway between Internet and my Lan and of course
this requires extreme security because there are many Attacks on Internet. So i
decided to configure a FreeBSD Server with it’s integrated firewall and
Squid acting as Proxy and a Windows Server 2003 using ISA Server 2004. ISA
Server has more features than Squid+fw and seems to be more powerful so
why i gave 5 to FreeBSD? 
It’s a simply reason: the Kernel. We could configure (programmatically of
course) the Kernel to only do the functions that we need, and we eliminate
that functions that doesn’t interest us. Also we install FreeBSD in Secure
Mode, and only install the packages that basically we need. You can imagine
which were the results: FreeBSD was Fastest acting as a Proxy/Gateway!
Windows: Loads a lot of services that ISA Needs to run, and performance was
worse than FreeBSD.
But remember that in a real scenario maybe you will want to loss a bit of
performance and give more features, so there are not a big difference between
Windows and FreeBSD.
Driver and Hardware Support25
That is classical. Windows supports all kind of hardware because
all hardware makers build drivers for it. FreeBSD, and other UNIXes only
support drivers built for them and those that the community ports.
Amount of Services and commercial Applications25
This is the hard reality, there are more companies that build
hardware for Windows rather than build it for UNIXes.
Amount of Services and free Applications54
There are a big community that builds tools and applications for
UNIXes. But why windows got 4 and not 2 or 0? Because this tools can
be used in windows too. For instance, Apache runs on Windows too. Also exists
Windows Services for UNIX, exist UNIX Emulators and many tools that facilitate
the port of UNIX software to Windows. Of course software generally runs
better on the native host operating system.
We could say that from UNIX to Windows software can be ported too, but, WINE
(Tool to port from Windows) runs stable running a windows Program? mmm… i
don’t think so.
Technical Support25
Windows costs money… so it has the best technical support in the
world. We could notice Windows Update, TechNet, MSDN, etc.

DISCLAIMER! This table represents my own research and it is not extracted from
an official post so it is not an official comparison between OSes, this is only
an exposition of my experience.

The chart speaks for itselt. Each OS has favorable and unfavorable features. So our
recommendation is the following one:

If you or your company are not interested in Computer Services or it is not the main objective and you doesn’t want to spend time and money developing applications the best option is to pay the licenses of Windows 2003 Small Business Server for example. The primary cost will be quite big, but the maintenance is extremely cheap and the stability of the system will be good and it won’t need of a net administrator that makes configurations constantly and maintaining the server daily, because Windows offers many possibilities of Automation. However, if you use some version of UNIX, for example FreeBSD that is the one that I like, you will have to compile things, you will be upgrading the OS every week, and you will have to adapt each service to your necessities using programation or command line tools, thing that with Wizards in Windows can be made.

If you or your company is an ISP or they are devoted to the creation of
applications, or they offers some type of computer service in general, I
believe that the best option would be some free version of an OS (for example
FreeBSD) because they could reprogram the operating system completely and they
can eliminate the modules of the OS that they doesn’t need, as well as to
create new sections according to it’s necessities. Also for a programmer the
best option is this because it has all the freedom to create code and has many
utilities that it can use. The cost of the OS is free.

So I believe that this it is a point to think and to debate. And those that continue
discussing on that it is better after reading this article I tell him:
“Performance and security are not in the operating system. They are in the
maintenance and the net administrator’s dedication.”

About the author:
My Name is Alejandro Tamayo Castillo, I am an student of Mathematics and
Cybernetics of University of Havana Cuba. I have passed many courses of
Network’s Administrator,Windows Server, UNIX, C, C++, C#, .NET Programmer, and
others, and i am intrested on post my own experience. My natural languaje is
Spanish, but i know how to write English (i think).

If you would like to see your thoughts or experiences with technology published, please consider writing an article for OSNews.


  1. 2004-10-20 7:03 pm
  2. 2004-10-20 7:05 pm
  3. 2004-10-20 7:06 pm
  4. 2004-10-20 7:10 pm
  5. 2004-10-20 7:31 pm
  6. 2004-10-20 7:32 pm
  7. 2004-10-20 7:36 pm
  8. 2004-10-20 7:38 pm
  9. 2004-10-20 7:39 pm
  10. 2004-10-20 7:42 pm
  11. 2004-10-20 7:50 pm
  12. 2004-10-20 7:51 pm
  13. 2004-10-20 7:54 pm
  14. 2004-10-20 8:00 pm
  15. 2004-10-20 8:01 pm
  16. 2004-10-20 8:02 pm
  17. 2004-10-20 8:09 pm
  18. 2004-10-20 8:09 pm
  19. 2004-10-20 8:12 pm
  20. 2004-10-20 8:12 pm
  21. 2004-10-20 8:19 pm
  22. 2004-10-20 8:21 pm
  23. 2004-10-20 8:23 pm
  24. 2004-10-20 8:27 pm
  25. 2004-10-20 8:32 pm
  26. 2004-10-20 8:40 pm
  27. 2004-10-20 8:45 pm
  28. 2004-10-20 8:48 pm
  29. 2004-10-20 8:56 pm
  30. 2004-10-20 9:21 pm
  31. 2004-10-20 9:28 pm
  32. 2004-10-20 9:40 pm
  33. 2004-10-20 9:52 pm
  34. 2004-10-20 9:56 pm
  35. 2004-10-20 10:14 pm
  36. 2004-10-20 10:19 pm
  37. 2004-10-20 10:22 pm
  38. 2004-10-20 10:32 pm
  39. 2004-10-20 10:39 pm
  40. 2004-10-20 10:44 pm
  41. 2004-10-20 10:52 pm
  42. 2004-10-20 11:02 pm
  43. 2004-10-20 11:09 pm
  44. 2004-10-20 11:26 pm
  45. 2004-10-20 11:30 pm
  46. 2004-10-20 11:53 pm
  47. 2004-10-21 12:04 am
  48. 2004-10-21 12:10 am
  49. 2004-10-21 12:11 am
  50. 2004-10-21 12:24 am
  51. 2004-10-21 12:26 am
  52. 2004-10-21 12:28 am
  53. 2004-10-21 12:29 am
  54. 2004-10-21 12:31 am
  55. 2004-10-21 12:50 am
  56. 2004-10-21 12:53 am
  57. 2004-10-21 1:06 am
  58. 2004-10-21 1:08 am
  59. 2004-10-21 1:18 am
  60. 2004-10-21 1:25 am
  61. 2004-10-21 1:26 am
  62. 2004-10-21 1:34 am
  63. 2004-10-21 1:34 am
  64. 2004-10-21 1:49 am
  65. 2004-10-21 1:51 am
  66. 2004-10-21 2:07 am
  67. 2004-10-21 2:14 am
  68. 2004-10-21 2:27 am
  69. 2004-10-21 2:28 am
  70. 2004-10-21 6:51 pm
  71. 2004-10-21 6:53 pm
  72. 2004-10-21 6:58 pm
  73. 2004-10-21 7:05 pm
  74. 2004-10-21 7:26 pm
  75. 2004-10-21 7:29 pm
  76. 2004-10-21 8:02 pm
  77. 2004-10-21 8:06 pm
  78. 2004-10-21 8:37 pm
  79. 2004-10-21 8:56 pm
  80. 2004-10-21 8:58 pm
  81. 2004-10-21 9:33 pm
  82. 2004-10-21 9:41 pm
  83. 2004-10-21 10:09 pm
  84. 2004-10-21 10:29 pm
  85. 2004-10-21 11:18 pm
  86. 2004-10-22 1:37 am
  87. 2004-10-22 1:54 am
  88. 2004-10-22 2:00 am
  89. 2004-10-22 2:25 am
  90. 2004-10-22 3:11 am
  91. 2004-10-22 3:28 am
  92. 2004-10-22 6:23 am
  93. 2004-10-22 7:07 am
  94. 2004-10-22 7:24 am
  95. 2004-10-22 8:00 am
  96. 2004-10-22 8:20 am
  97. 2004-10-22 12:08 pm
  98. 2004-10-22 12:44 pm
  99. 2004-10-22 1:06 pm
  100. 2004-10-22 2:56 pm