「Cランタイム」、「Visual C ++ 2008ランタイム」、「。NET共通言語ランタイム」などについて聞いたことがあります。
- 「ランタイム」とは正確には何ですか?
- それは何で出来ていますか?
- それは私のコードとどのように相互作用しますか?あるいはもっと正確に言えば、私のコードはどのように制御されますか?
Linuxでアセンブリ言語をコーディングするとき、INT命令を使用してシステムコールを作成できました。では、ランタイムとは、低レベルの関数をより抽象的で高レベルの関数にラップする一連のプレハブ関数にすぎないのでしょうか。しかし、これはランタイムの定義ではなく、ライブラリの定義のように見えませんか?
「ランタイム」と「ランタイムライブラリ」は異なるものですか?
追加1
最近、ランタイムはJVMなどのいわゆる仮想マシンと共通点があるのではないかと考えています。そのような考えにつながる引用は次のとおりです。
このコンパイルプロセスは、抽象化のいくつかの層に分割するのに十分に複雑であり、これらには通常、コンパイラー、仮想マシン実装、およびアセンブラーの3つのトランスレーターが含まれます。--- コンピューティングシステムの要素(はじめに、ハードウェアランドへの道)
追加2
「エキスパートCプログラミング:ディープCシークレット」という本。第6章ランタイムデータ構造は、この質問への参照として役立ちます。
runtime library
いくつかの制御コードといくつかの状態(OSによって提供)が含まれています。