A runtime system is an engine that translates a given programming language or languages into machine code. Often used as a vague term, runtime systems can be used to refer to the collected managed hardware resources and software needed for program execution and operation.
A runtime system’s main function is to implement parts of an execution model for a given programing language. Interfacing both with low level functions such as processor and memory management, runtime systems communicate with the software framework and libraries and may also debug, optimize and generate code while also preventing execution of flawed code through type checking as high-level functions.
Sometimes a runtime system is a part of an operating system (OS), but it may be installed along with a runtime environment such as Java (JRE). RTEs may also be part of an executable file as encoded by a compiler as in the case of C languages.
See also: runtime