Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the difference between a runtime environment, a runtime engine, and a runtime library?

Tags:

terminology

I'd like to make sure I have the definitions of a few terms associated with runtime correct.

Does the following make sense?

A runtime system (aka runtime engine) is software that is designed to aid the execution of a computer program while it is running. The runtime system acts as the gateway for the runtime environment, which is an abstraction of the underlying system a program is running on.

Is this correct?

Also: How is do you distinguish between a runtime system and a runtime library? What exactly does "runtime" by itself refer to? E.g. "node.js is a Javascript runtime"

Thanks!

like image 261
Douglas Holmes Avatar asked Nov 06 '25 06:11

Douglas Holmes


1 Answers

Since all software programs should run at least once, 'runtime' is an abused term in IT.

A runtime library is an old term, with a more precise meaning attached to it. Usually it is the hidden routines that will make your program run in a particular environment and/or operating system. For instance, when you receive your program arguments in the pair argc and argv in a C program, it was the runtime library that has gotten them from the OS and passed to your C program.

According to Wikipedia, a Runtime system is a partial implementation of the execution model. And the latter is the conceptual model that describes how a program will run. For instance, one could consider the JVM the runtime system of every Java program.

Some authors seem to consider equivalent the expressions "runtime system" and "runtime engine", but maybe that could be avoided. Maybe "engine" should be reserved for frameworks a little higher in the software stack, closer to the application layer. For instance, a game engine. Or maybe a database engine.

like image 95
Hilton Fernandes Avatar answered Nov 09 '25 01:11

Hilton Fernandes



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!