Linux also has its bugs, that are: there is no perfect operating system
There is no perfect operating system that can best respond to any situation. It all depends on what needs to be done and here is the only possible reading key in the choice of the operating system.
The perfect operating system doesn’t exist. What seems almost trivial hides a reality often underestimated by users of operating systems, that is, behind each software, there are different design and implementation approaches, with different assumptions and purposes. The provocative title stems from the writer’s personal experience leads to all-round reasoning about the world of operating systems.
Operating systems: which is the best?
Often one wonders: which is the best operating system? Some say Windows, some macOS, some Linux, some FreeBSD, Android, iOS, QNX, Plan9 or Syllable, or maybe SkyOS or Haiku. The offer of operating systems is extremely varied, even in the pure consumer sector; in business and embedded; it is even more varied. But what makes one operating system better than another?
The answer is… there is no answer. At least not a single one. The writer prefers to use Linux on his computers because of its lightness, modularity, and possibility of customization.
But these elements may not be shared by others, who prefer instead to have the boundless Windows software park or the macOS user experience. All these positions are equally valid and meritorious because they start from different assumptions and respond to different needs.
To answer the previous question more correctly, you should ask for a return: what should you do with the computer (be it desktop, server, or smartphone) on which the operating system is used?
If you need to pilot a robotic arm with poor computing power, Linux is probably preferable. At the same time, for a music workstation, macOS is preferable, and to manage a large number of computers with clear and centrally defined policies, Windows is better. These are then general indications, which do not necessarily correspond to what is used.
Each platform has its strengths, but also its flaws. The personal experience I referred to at the outset is that of a bug in a Linux kernel module that causes the touchpads of some laptops to stop working when you insert a USB device into any port.
In my specific case, it is an HP EliteBook 745 G5 equipped with an AMD Ryzen 5 2500U processor, which is connected with the touchpad via i2c protocol. A malfunction in the i2c controller driver causes a conflict with the USB ports, which causes the kernel to disable both the touchpad and the USB ports.
A situation far from ideal if you do not have the skills to analyze the cause of the problem and understand how to solve it (in this case, the only solution is still the restart).
However, problems like this are widespread on all systems and lead to malfunctions whose cause is not always easily identifiable. There are countless cases of software or hardware not working even on Windows or macOS for the most disparate causes.
An evaluation of the operating system to be chosen cannot ignore an all-round analysis of the situation, especially in the business context: it is necessary to take into account the skills present in the company, the needs of users, the software that must be run, compatibility with the hardware.
The required level of security, the possible integration between various platforms, the compatibility with software already purchased, the control that it is necessary to have on the various machines, license costs. The variables to consider don’t stop there, but this shortlist gives an idea of the main ones.
In any case, it will be necessary to make compromises, be they cost, functionality, or ease of management. It is always good to keep in mind that there are no operating systems – or software, more generally – better than any other—still, only a better operating system to perform a certain task in a given situation.