C++ Runtime and runtime-linking

I was installing boost and I came across an option named "runtime-link". After searching a bit, I came across yet another complex topic: "runtime system" that according to Wikipedia: The runtime system is the gateway by which a running program interacts with the runtime environment, which contains state values that are accessible during program execution, as well as active entities that can be interacted with during program execution. For example, environment variables are features of many operating systems, and are part of the runtime environment; a running program can access them via the runtime system. Likewise, hardware devices such as a DVD drive are active entities that a program can interact with via a runtime system. yet another topic " Runtime enviroment " comes up the runtime system of the C language is a particular set of instructions inserted into the executable image by the compiler. Among other things, these instructions manage the processor stack, create space for local variables, and copy function-call parameters onto the top of the stack Based on above statement, is it safe to say that "C++ runtime is basically an API to system-calls for cross platform implementation of C++ keywords and statements" and that "runtime environment is basically OS kernel" (please note that I'm only talking about c++)? And still I have no clue about runtime-linking and why it can be static or shared? Is it related to static and dynamic libraries? (I'm completely familiar with those, so you don't have to explain that, only relation if there is any) and most of all i am confused due to "runtime hierarchy".

May 5, 2025 - 02:42
 0

I was installing boost and I came across an option named "runtime-link". After searching a bit, I came across yet another complex topic: "runtime system"

that according to Wikipedia:

The runtime system is the gateway by which a running program interacts with the runtime environment, which contains state values that are accessible during program execution, as well as active entities that can be interacted with during program execution. For example, environment variables are features of many operating systems, and are part of the runtime environment; a running program can access them via the runtime system. Likewise, hardware devices such as a DVD drive are active entities that a program can interact with via a runtime system.

yet another topic " Runtime enviroment " comes up

the runtime system of the C language is a particular set of instructions inserted into the executable image by the compiler. Among other things, these instructions manage the processor stack, create space for local variables, and copy function-call parameters onto the top of the stack

Based on above statement, is it safe to say that "C++ runtime is basically an API to system-calls for cross platform implementation of C++ keywords and statements" and that "runtime environment is basically OS kernel" (please note that I'm only talking about c++)?

And still I have no clue about runtime-linking and why it can be static or shared? Is it related to static and dynamic libraries? (I'm completely familiar with those, so you don't have to explain that, only relation if there is any) and most of all i am confused due to "runtime hierarchy".