Knowledge is freedom


A legacy system is an old method, technology, computer system, or application program that continues to be used, typically because it still functions for the users’ needs, even though newer technology or more efficient methods of performing a task are now available. A legacy system may include procedures or terminology which are no longer relevant in the current context, and may hinder or confuse understanding of the methods or technologies used.

The term “legacy” may have little to do with the size or age of the system as mainframes run 64-bit Linux and Java alongside 1960s vintage code.  Although the term is most commonly used to describe computers and software, it may also be used to describe human behaviors, methods, and tools.

A legacy platform, also called a legacy operating system, is an operating system (OS) no longer in widespread use (abandonware), or that has been superseded by an updated version of earlier technology. Many enterprises that use computers have legacy platforms, as well as legacy applications, that serve critical business needs. With the release of Windows XP, for example, Windows 9x became a legacy platform. Earlier, Windows 9x had made Windows 3.x a legacy. Similar evolution has taken place, and will doubtless continue, with the Mac OS, Linux, and other platforms.  In modern computing this is over come by use of virtualization software which is now wide spread and distributed as freeware.

It can be difficult or impossible to run new applications on legacy platforms. In some cases, a new version of a program will work with an older OS, but this cannot be taken for granted. It is not uncommon for a new release of an “old reliable” program to function partially, marginally, or not at all on a computer with a legacy OS. The computer might even crash when the new version of the program is launched. The likelihood of encountering such problems becomes greater, in general, as the age difference between the application and the OS increases.

Historically, applications have been written for specific manufacturers’ operating systems. Currently, many companies are migrating their applications to new programming languages and operating systems that follow open or standard programming interfaces. The intent is to make it easier in the future to update programs without having to rewrite them entirely, and ultimately to allow any enterprise to use its applications on any operating system.