There are various different types of computing platform, both software and hardware based. The term platform refers to any software framework or hardware architecture from which a software application can be launched. Computing platforms can include graphical user interfaces (GUI) and operating systems (OS) such as Windows or Macintosh OS and OSX, programming languages, or the actual computer hardware architecture itself.
In software development, the platform can be utilized as a means of ensuring the constant performance of a product when the platform is running. This can result in a software application that can be executed independently of the operating system installed on the hardware. Examples of these types of software applications include Java and QuickTime-based packages. Some Internet-based software companies utilize these platforms to allow online gaming to take place without the restriction of installed operating system affecting the operation of the software. By using a computing platform to emulate an older operating system, these services allow games to be played on modern hardware that would normally be incompatible with the software.
Some software houses have used built-in soft platforms to allow their software to be compatible with two operating systems from one storage media. An example of this would be a software application or game that the user is able to install both on a personal computer (PC) running the Microsoft Windows operating system and on an Apple Macintosh computer. This is referred to as a cross-platform application.
The level of compatibility demonstrated by a cross-platform application is achieved by the programming language also acting as the platform. By utilizing this built-in computing platform, software applications can be programmed to launch on hardware without a working operating system. This is used to provide a graphical user interface during the installation of operating systems on an otherwise empty drive. As an example of platform independence, the programming language Java acts as both the programming language and as the computing platform. Applications programmed in this language will successfully launch on any operating system or hardware.
Software-based types of computing platform are common and include computer and mobile-based operating systems such as Linux and Unix-based systems, Google Chrome, Android, and Palm OS. Hardware-based platforms include large mainframe systems and supercomputers all the way down to home video game consoles. Hardware-based forms of computing platform also incorporate advanced reduced instruction set computer machine (Advanced RISC Machine or ARM) for mobile system architectures, Unix systems, and Intel x86-based systems.