Fundamental Differences Between Linux and Windows
Anyone who has pondered the idea of migrating from Windows to Linux knows there are differences between the two operating systems. But just what are those differences? Many people considering this migration might be more apt to make the jump if they know just what the differences are. So I thought it would be a good idea, in the spirit of helping users make the leap, to outline some of the fundamental differences between Linux and Windows.
In the current state of the economy, cost is a factor that will drive more and more people away from costly solutions to free solutions. That is one area that Linux can not be denied. It is free. Linux has been free since its inception. Why is it free? Because it is created by a vast community of developers who do not work for a single company. Linux is not a company. Red Hat is a company and they package a distribution of Linux that has a pricetag, but they are not Linux.
The vast majority of the software created for Linux is also free. But does this lack of price tag make Linux (and other open source software) of any less quality? No. In some cases open source software is better than its proprietary counterpart. Back in the late '90s I did a cost comparison of a full Linux installation (at the time it was Red Hat) vs WIndows. To get a Windows-based system running with equivalent software that came with the Red Hat installation would cost the user over $4,000 USD.
I am not talking about freedom as it is applied to the open source metaphor. I am talking about freedom from how a single company thinks your computer should work. With Windows you are locked in to how Microsoft feels the operating system should work. Microsoft thinks a taskbar, a start menu, icons, and a system tray create the best desktop. For some that may be. But for many users it is not the best choice. Myself? I prefer a minimalist desktop without the standard desktop pieces. If I were using Microsoft I would be out of luck (unless I employ a third party, proprietary solution). With Linux I can make my computer do and act exactly how I want. I am only limited to my imagination and my time.
File system Hierarchy
First and foremost Linux uses a single hierarchical directory system. Everything in Linux begins in the root directory which is the "/" and drives will be labeled /dev/sda, /dev/sdb, etc. Windows, on the other hand, uses a multiple hierarchical directory system that depends upon the amount of drives in the system. When Windows boots, each drive will be assigned a letter which serves as a root. So in a Windows system that contains three drives there will be three roots (such as A:, E:, and F:). In a Linux system only one drive will hold the root directory. If other drives are mounted on that same system they will be mounted in /media/. But even if you have multiple drives on a Linux system, you will only have one root directory. The differences certainly do not end there, but for the sake of length, I will move on.
This is where things can get a little tricky. Because Microsoft is so embedded in the retail market, most hardware is created with Windows in mind. Because of this it is possible to get, with the right drivers, most hardware to work with Windows. With Linux hardware support is dependent upon the developers being able to either hack together a workable solution or get the hardware maker to work with them and hand over the specs. There are only a few instances where hardware simply won't work with Linux. In these cases it is a matter of hardware vendors not releasing specs. But in general you will find out of the box Linux support to be pretty fantastic.
In my case I find modern Linux distributions to be better at detecting hardware than Windows. But if you are one of the unlucky few that has hardware created by a less-than-cooperative vendor, you might have trouble. Google your hardware for Linux support in case you are unsure.
This is another area that will be hotly debated until the end of the operating system as we know it. Whether driven by market share, hatred, or vulnerability Windows simply has far more weaknesses than Linux. One of the primary differences is the root access metaphor. In order to do any serious damage to the Linux system one has to have access to the root user, which means the root password. Without that password, you're not getting very far. This does not mean there are not exploits to, say, Sendmail or Apache or MySQL. Another major difference is when a vulnerability or a bug is found the development community of the affected software is typically very fast at plugging the hole. Microsoft has a proven track record of taking far too long to patch similar holes.
There are plenty of other differences between Microsoft and Linux. Can you think of any? If you are a new user, what differences have you found to be most difficult to get beyond?