ランタイムライブラリ
CおよびC++には言語仕様によってOSに依存しないフリースタンディング環境が定められている。Cにおけるフリースタンディング環境では標準ライブラリとして関数が一切存在しない。また、エントリーポイントもmainである必要がなく、グローバル変数等の初期化もいらない。Cにおけるフリースタンディング環境ではランタイムライブラリを必要としない。ただしC++についてはOSなしの環境でも最低限の言語機能を実現するためランタイムライブラリを必要とする。
ランタイムライブラリを除去する方法はフリースタンディング環境だけでなく、処理系のオプションによって強制的に実現することもできる。gccでは-nodefaultlibsを指定し、Microsoft Visual C++では/NODEFAULTLIBを指定する。標準のランタイムライブラリを除去することにより実行ファイルを軽量化したり、TinyCRTのような第三者提供のランタイムライブラリを使用することができるようになる。特に軽量化はメガデモとよばれるデモシーンにおいて必須の技術となっている。