The Linux Conundrum

A large company, was taking over our smaller company and they were on a trend to replace Linux and Java with MS Windows  ®  and ASP.NET.

When the CIO was asked why not go the other way since arguably our smaller company was more advanced put plainly his answer “Linux and Java guys are so hard to find! (and expensive). MS Windows ® guys are all over the place … ”

I liked the proposition that Linux guys are not easy to find, is this really so ..? (feel free to comment) GOOD !!  🙂

So now I know Linux/ Unix is niche, and better paid, but I cannot but ask myself the question why is this so. Is MS Windows ® so much easier or is Linux still growing into a user OS ? and why in the server business is ease of use given importance over customize-ability and tweak-ability.

Also is Linux in any deep way better that MS Windows ®. In my opinion the differences are more in the approach and the attitude of trust towards a single focal point i.e. MS in this case or on a community led by the benevolent dictator  Linus Torvalds . (By the way this is how he pronounces Linux.  [Linux])

I think there is a whole discussion behind this but money affairs aside how did we end up where we are with Linux being so popular and still perceived as difficult.

In the school days the term Operating System was clear and easily understood.  There was a small set of functions the OS needed to perform:

  • POST (power on self test)  and Boot the machine.
  • Enumerate the devices on the system.
  • Expose the system via a set of instructions (usually as a user interface or what is now referred to as an API).
  • Monitor the performance of the system and keep tabs on the system.
  • Manage the devices and resources via drivers and kernel code.
  • Provide a platform for applications to run on usually supplying an HAL (hardware abstraction layer).

Even the anatomy of the OS was relatively simple:

Unix has the following basic structure :

 

Things have changed though massively in the last ten years.

The scope and anatomy of Operating Systems has shifted and became massively more complicated when compared to what they used to be.

Nowadays as anyone “knows” an Operating System is meant and assumed to have the capabilities of not only displaying text and the occasional graphic but to have fully fledged 3D graphic station, very fast and stable networking  capabilities.  It must have an intuitive and customize-able GUI ( graphic user interface) must run on literally millions of combinations of hardware. Just take a look at the debian pci compatibility list ( and that’s just PCI devices there are other type of interfaces out there ).

Origins of Linux place it in Helsinki where a student of  Andrew S. Tanenbaum author of the MINIX operating system, namely Linus Torvalds took up the task of writing what was later to be known as the  Linux kernel reasons for this were political in a way. Apparently young Mr. Torvalds in a visionary outlook thought that MINIX’ license being for educational use only was way too restrictive.

 

 

The History of Linux is only related to Minix.
The Linux Project was not as other OSes a spin off of a commercial work but of a research / educational one.

 

A Unix kernel — the core or key components of the operating system — consists of many kernel subsystems like process managementmemory management, file management, device management and network management.

Each of the subsystems has some features:

  • Concurrency: As Unix is a multiprocessing OS, many processes run concurrently to improve the performance of the system.
  • Virtual memory (VM): Memory management subsystem implements the virtual memory concept and a user need not worry about the executable program size and the RAM size.
  • Paging: It is a technique to minimize the internal as well as the external fragmentation in the physical memory.
  • Virtual file system (VFS): A VFS is a file system used to help the user to hide the different file systems complexities. A user can use the same standard file system related calls to access different file systems.

The kernel provides these and other basic services: interrupt and trap handling, separation between user and system space, system callsscheduling, timer and clock handling,file descriptor management.

 

 

4 comments to “The Linux Conundrum”

You can leave a reply or Trackback this post.
  1. Andrew De Bono says: -#1

    From a business point of view i think that having a Linux based infrastructure has many advantages, such as: Flexibility, reliability/stability, and cost effective. Now i say cost effective for the simple reason that while it is true that it is more expensive to employ Linux guys, you are saving large amounts of money on OS licenses and more importantly (for the majority) you are getting lots of free, open-source software that is constantly being updated and bugs are being ironed-out by a vast online community. this is beneficial because growth and stability of a piece of software is not only governed by one corporation and by one mind-set, but rather by hundreds of different people with different approaches, and different mind-sets, therefore ensuring the most stable and effective solutions.

    Also, since Linux is open source and community led, if you are in need of specialized customization and flexibility you are not at the mercy of money making corporations that lock everything up and overcharge you for updates and customization that sometimes don’t even work properly, but instead open to a community that will help you to find the best solution, and since everything is open, once you find a suitable programmer, whatever goal you envisioned will be possible.

    So in the end, i think Linux would be the wise choice for most businesses.

    • The way I see it, it is picking horses for courses. Desktops in MAC OS and Windows are still a cut ahead, but as far as infrastructure the opposite argument can be made.
      There is an advantage at having one company behind a product (like Solaris is) which is mind set and consistency.
      Linux is distraught with too many flavours and too many re-invented wheels. If only all those bright brains where teaming up instead of working in isolation i believe at heart Linux would have no contenders in all sectors.

      To ring your point what about those ridiculous vetting programms that vendors have to go through to get “Windows Approved” badge, which by the way have their drivers kicked out of the OS and replace with buggy legacy ones (Atheros L1 windows 7 anyone ….).

      Well I think Windows has its merits, it did afterall bring computers to the masses. If everything stayed in the days of DOS and Unix well, my wage would be three times as much 😛

      p.s. thanks for posting continue reading and passing comments..

      d.

  2. It’s really a nice and useful piece of information. I am happy that you simply shared this helpful info with us.
    Please stay us up to date like this. Thanks for sharing.

Write a Reply or Comment

Your email address will not be published.