developer's diary

最近はc#のエントリが多いです

.NET FrameworkのCLRが提供するサービス

CLRは中間言語(MSIL)を実行する為のエンジン。
提供するサービスは以下

  • コード管理 (ロードと実行)
  • アプリケーション メモリの隔離*1
  • タイプ セーフティ*2の検証
  • IL*3 からネイティブ コードへの変換
  • メタデータ*4へのアクセス (拡張された型情報)
  • マネージド オブジェクトのメモリの管理*5
  • コード アクセス セキュリティの実施*6
  • クロス言語例外を含む例外処理
  • マネージド コード、COM オブジェクト*7、および既存の DLL (アンマネージドのコードとデータ) の間の相互運用
  • オブジェクト レイアウトのオートメーション
  • 開発者サービスのサポート (プロファイリング、デバッグなど)

参考:http://msdn.microsoft.com/ja-jp/library/ms973850.aspx#faq111700_term01

*1:隔離(かくり)とは、へだて離すことである。

*2:タイプ セーフなコードとは、適切に定義された、許可されている方法でだけ、型にアクセスするコード

*3:Intermediate Language(中間言語)

*4:.NET Frameworkにおいて、共通中間言語(CIL)コードについての情報を記録したコード

*5:ガベージコレクタ

*6:http://msdn.microsoft.com/ja-jp/library/fkytk30f(VS.80).aspx

*7:Component Object Model - Wikipedia(COM、コンポーネント・オブジェクト・モデル)とは、マイクロソフト が提唱するソフトウェアの再利用を目的とした技術のことである。ソフトウェア間での通信に用いられる。