|This article needs additional citations for verification. (August 2010) (Learn how and when to remove this template message)|
Computing platform refers to, in general sense, the environment in which a piece of software is executed. It may be the hardware or the operating system (OS), even a web browser or other application, as long as the code is executed in it.
The term computing platform can refer to different abstraction levels, including a certain hardware architecture, an operating system (OS), and runtime libraries. In total it can be said to be the stage on which computer programs can run.
A platform can be seen both as a constraint on the application development process, in that different platforms provide different functionality and restrictions; and as an assistance to the development process, in that they provide low-level functionality ready-made. For example, an OS may be a platform that abstracts the underlying differences in hardware and provides a generic command for saving files or accessing the network.
Platforms may also include:
Some architectures have multiple layers, with each layer acting as a platform to the one above it. In general, a component only has to be adapted to the layer immediately beneath it. For instance, a Java program has to be written to use the Java virtual machine (JVM) and associated libraries as a platform, but does not have to be adapted to run for the Windows, Linux or Macintosh OS platforms. However, the JVM, the layer beneath the application, does have to be built separately for each OS.
Ordered roughly, from more common types to less common types:
|Wikidata has the property: platform (P400) (see uses)|