Science Fair Project Encyclopedia
In computer science, runtime describes the operation of a computer program, the duration of its execution, from beginning to termination (compare compile time). The term is also used as a short form when referring to a runtime library, a program or library of basic code that is used by a particular computer language to manage a program written in that language while it is running.
In most cases, the operating system handles loading the program, doing basic memory setup and linking the program with any dynamically linked libraries it references. In some cases a language or implementation will have these tasks done by the language runtime instead, though this is unusual in mainstream languages on common consumer operating systems.
Some program debugging can only be performed (or are more efficient or accurate) when performed at runtime. Logical errors and array bounds checking are examples. For this reason, some programming bugs are not discovered until the program is tested in a "live" environment with real data, despite sophisticated compile-time checking and pre-release testing. In this case, the end user may encounter a runtime error message.
A runtime library is a collection of utility functions which support a program while it is running, working with the operating system to provide facilities such as mathematical functions, input and output. These make it unnecessary for programmers to continually rewrite basic capabilities specified in a programming language or provided by an operating system.
Early runtime libraries such as that of Fortran provided such features as mathematical operations. Later languages such as the C programming language added simple memory management for dynamic allocation of memory. More recently, object oriented languages add more sophisticated memory garbage collection, often in association with support for objects.
More recent languages tend to have considerably larger runtimes with considerably more functionality. Many object oriented languages also include a system known as the "dispatcher" and "classloader". The Java Virtual Machine (JVM) is an example of such a runtime: it also interprets the portable binary Java programs (bytecode) at runtime.
Exception handling is one language feature designed to handle runtime errors, providing a structured way to catch completely unexpected situations as well as predictable errors or unusual results without the amount of inline error checking required of languages without it.
- Apache Portable Runtime
- Netscape Portable Runtime
- Java Runtime Environment
The contents of this article is licensed from www.wikipedia.org under the GNU Free Documentation License. Click here to see the transparent copy and copyright details