Welcome Guest | Sign In

Got Linux? Add Proprietary Code

By Jack M. Germain
Jun 6, 2014 1:50 PM PT

Previous installment: Easing Linux Into the Enterprise

Got Linux? Add Proprietary Code

Migrating to the Linux platform is not an either/or proposition. Linux as a computing platform is so flexible that it offers users a have-it-your-way menu of software options.

One option is the Linux desktop. Individual users in home computing, SOHO and SMB operations can choose from a variety of enterprise-class Linux distributions. The Linux desktop OS offers a no-cost or low-cost alternative to the frustrations of Microsoft Windows or the limitations of Apple's Unix-based OS X platform for its relatively costly Mac hardware.

Another migration path is to forgo acclimating office staff to the Linux desktop. Instead, enterprises can opt to run their back-office and server operations on a Linux server. Linux servers have a rigorous giant footprint in the networking and cloud computing worlds. Linux servers are commonplace in many other enterprise settings.

A third migration choice is to run a full Linux shop. Standard office computing software is readily available in open source packages for office suites, Web browsing and graphic production tasks. Open source database applications connect famously with back-end software and servers. Plus, Linux does not need hardware-specific buy-in requirements.

Staff training to use the Linux desktop applications often is needed only in small amounts. Thanks to workers' familiarity with cross-platform software such as LibreOffice and OpenOffice productivity suites, as well as Google Chrome and Firefox Web browsers, front-office communications rarely miss a beat.

Linux is flexible. A new trend is to create third-party proprietary software to suit your own enterprise needs. Commercial software firms can recompile must-have Windows or any other platform's software. They also can create task-specific Linux applications that combine off-the-shelf open source components with their own proprietary code.

"I believe this is becoming a new trend. Enterprises are using third-party proprietary software developed to work on the Linux OS. One of the factors pushing enterprises into migrating to Linux with custom-made software is the financial burden of continuing to pay Microsoft licensing fees," Dayan Jeremiah, CEO of Icewarp Pacific, told LinuxInsider.

Linux Does Proprietary

One of the biggest hurdles a company faces in migrating to any operating system is overseeing application compatibility. In the case of moving into Linux, an enterprise has to make sure that whatever software it uses is compatible with the Linux OS, noted Jeremiah.

The Linux OS has an arsenal of software that runs across the numerous distributions and Linux desktop environments. Depending on the industry involved, the vast open source community may not have a specific replacement for every specialized computing task. In that case, it is often cost-effective to roll your own with the help of a third-party software developer.

"Using a third-party software vendor helps to ensure this compatibility. For example, we are able to mix and match the software components together so that the application works on Linux," said Jeremiah.

An Old Model Made New

A growing number of proprietary software firms, such as Icewarp, build specialized software to meet an enterprise's specific computing needs. They use many open source components in the mix.

The savings, compared to staying with the Microsoft infrastructure, involve not only licensing costs, but also reduced coding costs.

"We can build an entire software solution using readily available components for Linux. This entire solution is generally much more cost-effective, efficient and stable across the board," Jeremiah noted.

Icewarp does not develop the specialized software as free open source projects. It does not provide free versions and charge a fee for support. You order it and pay for it.

Porting Code Can Be Chaotic

One hurdle in making software ported from another computing platform compatible with the Linux OS is the vast majority of Linux flavors, according to Jacob Loveless, CEO of Lucera. The Linux OS has a common kernel, but it has a lot of flavors.

"The problem develops when software companies have to cross-compile for multiple Linux systems," Loveless told LinuxInsider. "With the exception of Microsoft Exchange Server, most databases run exceptionally well on Linux. MySQL and PostSQL are probably to two most prominent open source versions."

The majority of the hurdles in porting software to Linux require recompiling the code. Usually there are platform-specific things you have to do to make it work, he said.

For example, if you have proprietary code bases written in .Net or other languages for Windows, the open source compiler that runs on Linux is not always compatible. So you have a lot of application work you have to redo, Loveless explained.

Another example involves using databases. You often have to port to a different database and a different Web server.

"There is definitely work there," said Loveless.

A Lot Is Not Enough

Another compatibility issue in migrating to Linux is the type of open source software a company needs.

"There are not enough open source solutions for all of the specialized enterprise needs," maintained IceWarp's Jeremiah, "but whatever is available for Linux in general, we feel is sufficient. What is not provided by the communities for specialized business applications can be built by third-party software firms."

For example, IceWarp recently built a specialized Linux-compatible application that required no additional hardware purchase and no additional licensing fees.

The specialized software included a clustered set of load balancers, a cluster of database servers and a cluster set of IP servers. All of it runs on a standard Red Hat Enterprise Linux or CentOS Linux distro.

Follow the Money

In some cases, you can follow the money trail to the Linux OS. Sometimes it is the Linux server that has heavily populated an industry. Other times it is a particular Linux desktop application -- or it could be both.

Take, for example, the Wall Street crowd. In financial markets, time synchronization becomes critical. The financial networks rely on distributive networks where users have to work with time locks to complete transactions. Other applications require very precise timing before a transaction can be executed. These are functions that require precise time synchronization controls, explained Victor Yodaiken, president of FSMLabs.

When FSMLabs started developing its TimeKeeper time synchronization software, Yodaiken expected there soon would be a need to develop a Windows version.

However, "it turned out that everybody who is doing automated trading or low-latency trading or even collecting data at high precision is running Linux in this market," he told LinuxInsider.

Time Is Costly

FSMLabs uses proprietary code that runs on Linux. The Network Time Protocol built into Linux does not adequately synchronize time into nanoseconds for software that tracks stock and trade transactions. Windows falls short for another reason.

"I think Linux's popularity over Windows is that Windows does not have a standard API which lets you get time below a millisecond. So Windows does not really do you any good. You have to have specialized APIs. With Linux, you do not have to screw around with your application program," Yodaiken said.

The financial markets were one of the first to embrace Linux. Many of the early systems managers came up from Bell Labs in the 1980s, so it is a very established market, he added.

Filling a Need

For some industries, running proprietary software on an open source Linux distro is not the exception -- it's the rule of thumb.

"Ninety-nine percent of the applications on Wall Street depend on proprietary products. We are much like Oracle in that our product runs on Linux but has a proprietary license," said FSMLabs' Yodaiken.

Some markets that run Linux need more specialized software than what's available as open source products. Existing open source software just does not meet their requirements. That is why software developers provide commercial offerings for enterprise Linux operations, he added.

"That is pretty common. Open source is really best suited for big markets. That is why it has wide, general requirements. Not too many people would have to have a one microsecond correct time all the time -- and alarms if they can't get it," he pointed out.

Linux Purism Is Pointless

The concept of maintaining a totally free open source software infrastructure on the Linux OS may fall short when it comes to running specialized software. That reality holds true for any specialized business.

When a specialized computing need does not impact a wide user market, a third-party software developer can provide a proprietary, commercial or closed source software solution. Call it what you will. Open source purity might become a thing of the past as businesses continue to adopt the Linux OS.

"Having commercial software prominent on the Linux OS is fairly common," said Yodaiken. "People in business are not purists. They just want to solve problems."

Jack M. Germain has been writing about computer technology since the early days of the Apple II and the PC. He still has his original IBM PC-Jr and a few other legacy DOS and Windows boxes. He left shareware programs behind for the open source world of the Linux desktop. He runs several versions of Windows and Linux OSes and often cannot decide whether to grab his tablet, netbook or Android smartphone instead of using his desktop or laptop gear. You can connect with him on Google+.

Facebook Twitter LinkedIn Google+ RSS
How worried are you that you personally will be the victim of a cybercrime?
Very worried -- I've taken steps to protect myself.
Very worried -- but I don't think it's possible to protect myself.
I've already been a victim, and it was devastating.
I've already been a victim, but it was no big deal.
The risk is overblown. I don't consider myself a likely target.
The tech industry is doing a good job protecting me.