「ランタイムライブラリ」の版間の差分

削除された内容 追加された内容
R28Bot (会話 | 投稿記録)
m Bot: テンプレートの差替え (WP:BOTREQ#スタブテンプレート修正依頼)
編集の要約なし
1行目:
{{正確性}}
 
'''ランタイムライブラリ'''(英:run-time library)は、[[プログラム (コンピュータ)|プログラム]]を実行するために必要な[[ライブラリ]]のこと。'''ランタイム'''とは「'''実行時'''」という意味である。単に'''ランタイム'''という場合もある。
 
== 概要 ==
簡単な機械語命令に置き換えられる文、例えば整数型変数の加算、比較等はプログラム中に現れる毎に[[オブジェクトファイル|オブジェクトコード]]の中に埋め込んでいけばいい。ところが、書式付入出力(Cでいえば'''[[printf|printf関数]]'''、Pascal/Modula-2等でいえば'''WRITE手続'''等)等のように複雑で、しかもプログラム中の複数の部分から呼び出される可能性の高い[[サブルーチン|ルーチン]]は、独立した[[ライブラリ]]として実装する方がプログラムをコンパクトにすることができる。このような実行時に必要なライブラリを'''実行時ライブラリ'''と呼ぶ。
 
実行時ライブラリは[[リンカ]]によって各プログラムに付け加えられることがある。この場合、予め各種ルーチンのプログラム中での相対的なアドレスが分かっているため、機能の呼び出しはきわめて簡単である('''静的リンク''')。また、実行時ライブラリは言語処理系依存の独立したファイルとして供給されることもある。この場合は特定の言語処理系で製作されたプログラム間で一つのライブラリファイルを共用することができるので、ディスク容量の節約になる。ランタイムライブラリ、ランタイムと呼ぶ場合、このような独立した実行時ライブラリファイルを指すことが多い。
 
たとえば、[[Microsoft Visual Basic|Visual Basic]]で書かれた[[プログラム (コンピュータ)|プログラム]]の場合、[[マイクロソフト|Microsoft]]社から無料で配布されているランタイムライブラリを[[パーソナルコンピュータ|パソコン]]に[[インストール]]していないと動かないことがある。
また、[[Microsoft Visual C++|Visual C++]]や[[C++ Builder]]といった他の言語でも大抵はランタイムライブラリがある。[[インストール]]が不要なものは[[Application Programming Interface|API]]や[[フレームワーク]]として[[オペレーティングシステム]]が持っているか、プログラム中に組み込んでしまっている。