Common Language Runtime

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая 31.13.128.250 (обсуждение) в 06:26, 16 августа 2016 (Преамбула: CLR - это не интерпретатор, она компилирует код CIL во время выполнения в машинный код.). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску

Common Language Runtime (англ. CLR — общеязыковая исполняющая среда) — исполняющая среда для байт-кода CIL (MSIL), в который компилируются программы, написанные на .NET-совместимых языках программирования (C#, Managed C++, Visual Basic .NET, F# и прочие). CLR является одним из основных компонентов пакета Microsoft .NET Framework.

В отличие от переносимых виртуальных машин Java, абстрагирующихся от нижележащих операционных систем, CLR позиционируется как не «виртуализированная» платформа, тесно связанная с операционной системой Microsoft Windows (в том числе для целей сохранения инвестиций Microsoft в операционную систему)[1]

Среда CLR является реализацией спецификации CLI (англ. Common Language Infrastructure), спецификации общеязыковой инфраструктуры компании Microsoft.

Механизм работы

CLR компилирует код приложения на языке CIL (реализация компиляции которого компанией Microsoft называется MSIL) во время его исполнения, а также предоставляет MSIL-программам (а следовательно, и программам, написанным на языках высокого уровня, поддерживающих .NET Framework) доступ к библиотеке классов .NET Framework, или так называемой .NET FCL (англ. Framework Class Library).

См. также

  • Ngen — программа для компиляции сборок на CIL в машинный код

Примечания

  1. Скотт Хенселман, Миф о чистоте приложений .NET / Microsoft MSDN, 2004: "технологии .NET Common Language Runtime ... она крепко привязана к нижележащей операционной системе, то есть Windows. ... Если бы Майкрософт сделала CLR по-настоящему виртуализированной, это бы снизило полезность ранее сделанных инвестиций в платформу Windows."

Литература

  • Джеффри Рихтер. CLR via C#. Программирование на платформе .NET Framework 4.0 на языке C#. 3-е изд. = CLR via C#, 3 ed. — СПб.: Питер, 2011. — ISBN 978-5-459-00297-3.
  • Джеффри Рихтер. CLR via C#. Программирование на платформе .NET Framework 2.0 на языке C# = CLR via C#. — СПб.: Питер, 2008. — ISBN 978-5-7502-0348-2, 978-5-91180-303-2.