LINFO

Platform Definition



The term platform as used in a computer context can refer to (1) the type of processor and/or other hardware on which a given operating system or application program runs, (2) the type of operating system on a computer or (3) the combination of the type of hardware and the type of operating system running on it.

The first meaning, also called the hardware platform, can refer to the the type of system in general (such as mainframe, workstation, desktop, handheld or embedded) and/or the specific type of processor (such as x86, SPARC, PowerPC or Alpha). For example, the statement, "Linux can run on many platforms," can refer to the fact that Linux runs on everything from mainframes to embedded systems and/or to the fact that it runs on a variety of processors.

Hundreds of operating systems have been developed, among the most commonly used of which are the Microsoft Windows systems and some of the many Unix-like systems (e.g., Linux, Solaris, FreeBSD and QNX). Unix-like operating systems are those that incorporate the main features of both the original versions of UNIX as developed at Bell Labs beginning in 1969 and the Berkeley extensions, which were developed at the University of California at Berkeley (UCB).

The processor, also referred to as the central processing unit (CPU), is the main logic unit of a computer. It is a single chip (i.e., a single piece of highly processed silicon) that typically contains the control unit, which extracts instructions and data from memory and executes those instructions, an arithmetic logic unit (ALU) and a very small amount of high-speed memory.

By far the most widely used processor type is the x86, which is also commonly referred to as the i386 or Intel-compatible processor. These are 32-bit chips that are manufactured by Intel Corporation or clones thereof, most notably those made by Advanced Micro Devices, Inc. (AMD). The Intel-produced chips, which include the i386, i486, i586 (Pentium) and others, first appeared in 1982 with the introduction of the 80286. A major factor in their great popularity was their adoption by IBM for use in the first personal computers.

There has been a trend in recent years towards the production of fewer and fewer truly distinctive processor architectures (i.e., designs). This has been a result of a consolidation in the processor industry, which, in turn, is largely due to the soaring costs of developing new generations of processors and of establishing production facilities capable of producing them in volumes sufficiently large to attain a low cost per chip. However, some computer experts think that it is beneficial to have a diversity of processors, just as they are convinced that it is better for there to be a variety of operating systems.

The terms cross-platform, platform-independent and portable are frequently used to describe operating systems and application programs that can run on more than one platform, particularly with regard to processors for operating systems and with regard to operating systems for application programs. Such portability across multiple platforms is an important goal for many developers of free software (i.e., software which is both available at no cost and for which there are virtually no restrictions with regard to its use).

The verb to port is used to describe the development of a version of a program or an operating system for use on another platform. For example, statements such as the following are commonly heard: "There is much interest in porting OpenOffice to the Mac OS X," and "This program has been ported to several platforms."

The Internet and the web are clearly among the greatest success stories of platform independence. The fact that they are compatible with virtually every type of computer (and even some devices which do not resemble conventional computers) is a result of the platform independence of TCP/IP (transmission control protocol/Internet protocol), the suite of protocols on which the Internet is based. TCP/IP is a completely open and free set of standards that is not owned or controlled by any company or government.

Some programming and scripting languages are also described as being platform-independent because they can be used to write programs both on and for a wide range of hardware types and operating systems. They include C, Java, Perl, PHP and Python. In contrast, Visual Basic is clearly not platform independent, because it can only be used with the Microsoft Windows operating systems.

One of the many advantages of Linux is that it is well suited for use on a wide range of platforms. In fact, it has been ported to virtually the entire spectrum of computing devices, including personal computers, workstations, hand-held devices (e.g., PDAs and cell phones), Internet appliances, industrial robots, communications infrastructure equipment, mainframe computers, supercomputers, and even a wristwatch. Among the processor types on which Linux runs are x86, Alpha, Itanium, m68k, PowerPC and SPARC. The BSD operating systems, which are also free Unix-like systems, likewise have been ported to a large number of processor types (more than 50 in the case of NetBSD!).

In contrast, the Microsoft Windows operating systems have been designed mainly for just a single processor type, the x86. Likewise, most proprietary (i.e., commercial) Unix-like operating systems are limited mainly to a single processor type.






Created March 8, 2004. Updated February 18, 2006.
Copyright © 2004 - 2006 The Linux Information Project. All Rights Reserved.