Windows vs. Linux: A Comparative Study
Windows vs. Linux: A Comparative Study
Windows vs. Linux: A Comparative Study
Cost
The newest version of Windows server software, Windows Server 2008 Standard, retails in the United States at $999 and includes five Client Access Licenses (CALs). A Client Access License is a type of software license that allows client computers to connect to Microsoft server software. Windows Server 2008 and 2003 require one CAL form each concurrent connection. To illustrate this, take for example that a business network has computers that are used by 10 people. However of this computer network there are never more than five people using the server software at one time. Then the business would only need five CALs. CALs can be use by either users or devices; devices could include kiosks or shared computer systems. While this option may be affordable for small businesses with limited technical support, but it would become quite expensive for many large businesses and corporations. Windows also markets their more extensive Windows Server 2008 Enterprise edition to larger businesses in need of server software with larger scalability. The Enterprise edition also includes 25 CALs and is priced at $3,999, but also can handle more application demands than the Standard edition can. Linux on the other hand is completely free. It is licensed under the GNU General Public License which allows for the free distribution of the Linux source code. Anyone can modify the code to suit their specific needs as long as the code is never sold for a price. However it is also important to note that many companies provide subscription based support for Linux at a nominal fee. Red Hat, of the many companies that provide Linux support, offers Red Hat Enterprise Linux with a basic support subscription for $349 which includes Web support, 2 business day response, and unlimited incidents. The hidden cost in Linux lies in its support and maintenance. In an Analyst report by Hewitt Consulting, it is stated that Over time, it is generally agreed that Linux talent supply will increase and due to this not only will
Linux talent hiring be challenging, but Linux costs will rise. It is no surprise to note that this report was commissioned by Windows and is prominently displayed on their site comparing Linux servers to Windows servers. Windows also emphasizes that Windows Server reduces the Total Cost of Ownership (TOC). However once a Linux server is properly installed and tailored to your needs, it is significantly more cost efficient to maintain in the long run. The chief technology architect at Merrill Lynch & Co. is quoted in ComputerWorld for stating that the cost of running Linux is typically a tenth of the cost of Unix and Microsoft alternatives (Greene). The head technician at oil company Amerada Hess manages 400 Linux servers by himself.
Security
Windows servers are based off the Windows kernel and are thus susceptible to many of the same security threats as any normal Windows operating system. To understand this it is important to user stand some of the history of Windows. Windows was originally designed to be a single user operating system and when it was first released had no networking capabilities. Prior to the release of Windows NT, Windows only offered one category of users that could do anything. Prior to Windows Vista, the first user account created during the Windows setup process is automatically a member of the administrator group. Most users never changed to an account with fewer rights, thus giving malicious programs full access to the system. It was not until Windows Vista that Microsoft finally addresses this issue and created User Access Control (UAC). In Vista all logged in sessions including administrator users run with standard user privileges and actions that require administrator status to operate must use UAC. UAC picked up on the principle of least user access that UNIX has used since it was first created. The principle of least user access allows every module (user, process, or program) to only access resources that are necessary for its legitimate purposes. UAC assigns tokens to each user that logs on, but only assigns administrators tokens to members of the Administrator group. In the second half of 2005 alone there were 11,000 malware programs discovered for Windows. Windows has also become susceptible to botnets. Botnets are a network of infected computers that are controlled by malicious persons and have commonly been used to stage massive DoS attacks. Microsoft claims that its Windows Server 2008, just like did with Windows Server 2003, is
secure by design. Windows Server 2008 included many features for hardening all of its services including the use of Active Directory to authenticate users. Windowss closed source approach only allows Microsoft employed programmers to fix bugs. Microsoft continues to claim that closed source offers a faster and more effective response to security issues or bugs. However major fixes and patches are only released once a month after extensive programming and testing. It is common for specific bugs and security issues to go unpatched for several months. There are many flaws in the Microsoft design that make it more vulnerable to security attacks. Many people falsely believe that Windows is the primary target of security problems and viruses simply because it has the largest market share. However this reasoning is strongly defeated when According to the September 2004 Netcraft web site surveys, 68% of all websites run the Apache web server. Only 21% of web sites run Microsoft IIS. Using this logic one would concluded that Apache web server is more susceptible to attack, however this is not the case. The massive Code Red Worm that was released in 2001 targeted Microsofts IIS web server and defaced many servers worldwide. While both IIS and Apache are equally vulnerable to attack, it is important to understand that your web server is only as secure as the platform that is running. If an attacker can gain administrative privileges on an OS, it is relativity easy to take control of the web server it is running. With Windowss many underlying security flaws it is thus plain to see why IIS web servers are usually compromised with greater success. The Linux model for security traces its roots back directly to UNIX, which was the first multitasking and platform portable computer operating system. Here it is important to understand the history of the UNIX operating system to fully see the reason why UNIX and therefore Linux are very secure. When UNIX was created computers were only available in large institutions such as universities and key government research facilities. It was too expensive to maintain a personal computer and many of the early computers took up entire rooms and contained as much processing power as our modern day calculators. Most computers during this age contained vacuum tubes and data was stored on punch cards. Thus Ken Thompson and Dennis Ritch, creators of UNIX and the C language, developed the idea of time sharing and used it for their first operating system, UNIX. UNIX was created to harness the new found computational powers of the world first computers and divide its processing power equally between users. With the development of the modem it also allowed users to for the first time in history to remote connect to computers and access these resources from a home terminal. UNIX from the beginning separated administrator privileges
from those of the normal user, something that Windows did not implement until they realized that people would actually be using their operating system for more than one user. The UNIX operating system also utilized the first encryption methods to be used on computers and developed a system that allowed computers to secure communicate with each. Since the first computers networks linked these large computers together, it was necessary to ensure security across the network and ensure that data packets got to their intended destinations. The Linux operating system has inherited all of its security measures and design from UNIX and has even in many cases added to it. The UNIX operating system divides control between normal users and a one superuser, known as root. All users by default when they login onto the system begin as normal users and then can become the superuser if they know the correct password. This prevents a novice user from accidently making a system]wide change that could bring the system to a grinding halt. It also protects a normal user from making any destructive changes to the system that could jeopardize the use by other users on the system. In the UNIX system, every file and process belongs to a specific user and a specific group. Every file has specific permissions for the owner, group, and others that include read, write, and execute access. The root user can execute any file with execute permission and read, write, and modify any file on the filesystem. This model ensures that only the correct people have access to files and commands. Since major system changes can only be accomplished as superuser, it makes it very hard for anyone to cause destruction to a system without sufficient privileges. While it is still possible for an attacker to exploit a kernel security hole, with thousands of people worldwide contributing to the code it is possible to fix a security hole in a matter of usually hours. On the other hand, it might take several months to fix a security hole in Windows. With the case of the Code Red worm that attacked IIS, Microsoft released a fix to patch the hole, but many server operators were slow to patch the system and thus the next wave, Code Red II was also very successfully. Microsofts own servers were not immediately updated and thus Microsoft once again fell to the next round of the attack. Thus represents a case were the system administrators did not act quickly to patch the system when holes were known to exist and fix even existed. The modular design of the UNIX operating system makes it greatly more stable than Windows. UNIX is a text based system that does not require an additional GUI to function and thus will not fail if your computer has a bad graphics driver. Even though many Linux distributions included a GUI, Linux can always drop down a text based system if the GUI fails for some
reason. While Windows requires reboots after system, driver, and sometimes occasional program updates, Linux only needs to be restarted for kernel updates. Using a special system utility it is even possible to load a new kernel and execute it without a hardware reset. Linux relies on no specific web browser or email program and thus a flaw in a particular web browser will not cause damage to the entire system. While the kernel supports many modular drivers, the kernel for the most part is monolithic where services are tied closely together . However, Linux runs under the view that Whenever a task can be done outside the kernel, it must be done outside the kernel . This is in strongly contrast to Windows that forces graphic drivers to run in the kernel and thus one bad graphic driver can bring Windows to a screeching halt.ient
Pcess Server Process
Configurability
Windows systems are limited by the need to have a graphic face to properly maintain and configure the server. Instead of being able to easily add new security features and elements, Windows monolithic design makes it difficult to successfully add a new security module to the existing system without having to do a major system overhaul. All the security features that come with the release of a particular Windows Server software release are the only features that will be available to the system administrator. It terms of user authentication, Windows has Active directory and it is used to force users and client to prove their identity to the server. While Linux based authentication allows for authentication from Windows based clients, Active Directory on the other hand will only authenticate Windows based clients. Custom packet filtering is not something that is native to Windows and thus a Windows server that wants to implement custom packet filtering may need to turn to an IPSec implementation to serve their needs. Windows Server 2003 featured a very basic packet filter that would only block specific incoming packets based on source IP address and destination port. Windows Server 2008 expanded this to filter both incoming and outbound packets based on protocol, source IP address, destination IP address, source port, and destination port. However while Windows Server 2008 did finally introduce this feature, it is important that packet filtering not something that is native or even consistent in Windows.
Linux is designed to be tailored to the specific needs of the user. Since Linux is open source software anyone can download it, customize it and then recompile it to fit their specific needs. Also since Linux is not limited by the reliance on a graphical interface, the users can usually highly customize programs to do exactly what they need them to do and if they want more control, they can even delve into shell scripting to automate and further customize specific tasks. Due to Linuxs modular design it does not always have to rely on specific proprietary software to accomplish tasks. The Samba project has introduced a way for Linux servers to authenticate windows machines and has even developed a way to emulate Active Directory on a Linux machine. This makes it possible for a Linux server to be deployed on a network that serves both Linux and Windows machines. Rather than use a firewall program, the Netfilter program developed for Linux allows you to setup individuals rule chains that can control the filtering of incoming, outbound, and forwarding packets. These chain rules can filter packets based on protocol, source address, source port, destination port, interface, state, type of service (TOS), and even user on outbound packets . Since many Linux machines serve as common gateways, firewalls, and access points in is imperative that Netfilter allow users to configure rules for forwarding packets. Linux machines can be tweaked to meet the specific needs of each and every user. While it might take more time to configure and customize Linux to your needs the almost endless numbers of ways you can tailor Linux greatly outnumber the amount of time taken.
User friendliness
When it comes to user friendliness no other operating system comes closer than Windows. With its easy point and click atmosphere and beautiful GUI what more could you ask for. While Windows Server is not as secure as Linux right out of the box, it is definitely easier to setup and install out of the box. It is possible to setup, install, and configure Windows Server 2008 within a few hours. Most of the functionality of Windows Server can be discovered by simple point and click trial and error and the Windows help included in Windows Server does a good job of answering most trivial questions that the new server administrator would have. Every available customizable option in Windows Server is right at your fingertips. While Windows server is very user friendly it also means that practically and person with average computers could setup a Windows server and thus they
tend to be less secure, less maintained, and offer fewer services in comparison to Linux servers. On the other if you want a server that you will not have to hire a computer professional to manage or buy a manual to learn Linux than Windows Server might be your best bet. Linux on the other hand might seem a bit more daunting to average computer user and sometimes even computer administrators. While many Linux distributions these days come with a GUI either Gnome or KDE, an effective Linux server is best run using no GUI at all and simply relying on textbased commands. This places the user in a position that requires him to learn how to navigate and configure a Linux machine entirely using text]based commands. Linux includes a built in manual commonly known as the man pages to aid a user in understand all of the different opinion each program or command offers. This manual is quite extensive in provided not only shell commands but even commands for installed software and programming languages such as C. It can be expected that most Linux novices will require significant documentation and practice to successfully navigate on a Linux machine. This knowledge can be gained from online communities of Linux users, website, and books. Linux in many senses can be considered very user friendly to someone who is well experienced in Linux. It has also been that noted that usually Linux servers are more secure, better maintained, and offer more service than servers running Windows, simply because it takes a person that has above average computer skills to understand the Linux operating system in the first place.
Conclusion
Linux and Windows will both continue to complete from control of the server market. After comparing the key areas of both operating system that are most important to the operation of a good server, Linux is the choice if you are looking for a server that will be secure, cost efficient, stable and will allow for maximum configurability. Windows leads the way in the realm of user friendless and would be most appropriate for a server that is easy to manage and will not perform critical functions. Overall Linux offers more features and a more secure environment that are essential for a successfully server.
It is an operating system at the top. It acts as an interface between the user and the machine to perform specific task. The user performs some task in terms of input and this OS redirects the instruction to the machine in machine language. After performing the specific task it sends the computed task back to the user as an output. Well, all the operating system performs this task. Now, we shall study more about the LINUX operating system. LINUX means GNU/LINUX because LINUX is almost always used with the GNU tools. LINUX is very similar to other operating systems like windows and OS X. There are certain measures that categories this operating system among others. It is widely used operating system apart from Windows. This operating system is run over various platforms from Pcs to cellular phones. Even supercomputers runs on LINUX. The important thing under consideration of the LINUX is that it is open source operating system. Open source simply means that its source code is available to all the users and it can be modified. No one individually owns LINUX. The competition to impart much to this software adds much to this operating system. About 1,000 developers across 100 different companies contribute to different kernels of this software. Initially it was made for server as an operating system. But this feature of open source has made LINUX to be used in any of the device in modern time. It do not include executable (.exe) files hence it is all free from viruses and hacking free software. This is the only reason that it is used in all of the major companies where security of database is highly important. What is UNIX? The UNIX dates back to 1969. Since then, it has changed a lot and various versions are out till today. It has built its versions for many platforms and different environments. It is the previous version of LINUX. The full form of UNIX is UNiplexed Information Computing System (UNICS), which was later termed as UNIX. This name has been given because the UNIX was first developed in 1970s; it required the data and addresses buses to be uniplexed. They were not multiplexed, hence it was named so.
What are the differences between LINUX and UNIX? 1. The developers of UNIX have a specific target audience and platform for their operating system. They have a clear idea what applications they have to optimize to give users the best results. Commercial UNIX vendors can do anything since they can maintain consistency between different versions of UNIX. Whereas the development of GNU/LINUX, is more diverse as compared to UNIX. Here the developers come from different backgrounds and thus have different opinions and thinking. There are no specific tools and restrictions with the LINUX. The tools can be used on new editions without much testing. 2. Since the kernel is the most important part of any operating system. The source code is not freely available for any of the commercial version of UNIX. Whereas in the case of LINUX; it is freely available. Both the terms have a different compiling and patching kernels and drivers. With Linux and other open source operating systems, a patch can be released in source code form and end users can install it, or even verify and modify it if desired. These patches tend to be far less tested than patches from UNIX vendors. Since there is not a complete list of applications and environments that need to be tested on Linux, the Linux developers have to depend on the many eyes of end users and other developers to catch errors. Henceforth we can say that both these operating systems works fine in their fields and due to the lack of (.exe) executable files it becomes virus less platform to work with. The security issues are less in terms of hacking the database. Its open source code makes much difference for the development of the operating system in future and empowering it much times than before.