Преобразование CIL-кода в набор инструкций, соответствующих платформе

Преобразование CIL-кода в набор инструкций, соответствующих платформе

Ввиду того, что компоновочные блоки содержат CIL-инструкции, а не инструкции для конкретной платформы, программный код CIL перед использованием приходится в фоновом режиме компилировать. Объект, который компилирует программный код CIL в инструкции, понятные процессору машины, называется JIT-компилятором (just-in-time – точно к нужному моменту), который иногда "по-дружески" также называют Jitter. Среда выполнения .NET использует JIT-компилятор, соответствующий конкретному процессору и оптимизированный для соответствующей платформы.

Например, если ваше .NET-приложение предназначено для выполнения на "компактном" устройстве (таком, как, например, КПК), то соответствующий JIT-компилятор будет иметь специальные средства для учета условий ограниченности памяти. Если это компоновочный блок для серверной системы (где объем памяти редко оказывается проблемой), то соответствующий JIT-компилятор будет оптимизирован для работы в условиях достаточного объема памяти. Таким образом разработчики получают возможность создавать только один блок программного кода, который с помощью JIT-компиляции можно выполнять на машинах с разной архитектурой.

К тому же, при компиляции CIL-инструкций в соответствующий машинный код JIT-компилятор поместит результаты компиляции в кэш в соответствии с тем, как этого требует соответствующая операционная система. Так, при первом вызове метода с именем PrintDocument() соответствующие CIL-инструкции компилируются в конкретные инструкции платформы и сохраняются в памяти для использования в дальнейшем. Поэтому при следующих вызовах PrintDocument () необходимости в повторной компиляции CIL не возникает.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Преобразование WSDL-кода в серверный программный код Web-сервиса

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

Преобразование WSDL-кода в серверный программный код Web-сервиса Одним из интересных вариантов использования утилиты wsdl.exe является генерирование серверного программного кода на основе WSDL-документа (с помощью опции /serverInterfасе). Очевидно, если вы начинаете разработку


Преобразование WSDL-кода в программный код агента для клиента

Из книги Обработка баз данных на Visual Basic®.NET автора Мак-Манус Джеффри П

Преобразование WSDL-кода в программный код агента для клиента Хотя это и нежелательно, но вполне возможно построить базовый программный код клиента, которым будет вручную открывать HTTP-соединение, строить SOAP-сообщения, вызывать Web-методы и выполнять обратную трансляцию


Классы XML на платформе .NET

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

Классы XML на платформе .NET На платформе .NET язык XML применяется для повышения производительности, совместимости с открытыми стандартами и интеграции с ADO.NET. Для этого предусмотрены специализированные классы и пространства имен. Для перечисления всех имеющихся пространств


19.2.5.2. Публикация в соответствующих группах новостей

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

19.2.5.2. Публикация в соответствующих группах новостей Найдите группу новостей Usenet, непосредственно относящуюся к разработанному приложению, и анонсируйте в ней проект. Анонсировать проект следует только там, где функция кода будет уместной, и проявлять при этом


19.2.5.2. Публикация в соответствующих группах новостей

Из книги XSLT автора Хольцнер Стивен

19.2.5.2. Публикация в соответствующих группах новостей Найдите группу новостей Usenet, непосредственно относящуюся к разработанному приложению, и анонсируйте в ней проект. Анонсировать проект следует только там, где функция кода будет уместной, и проявлять при этом


Выбор инструкций обработки

Из книги Технология XSLT автора Валиков Алексей Николаевич

Выбор инструкций обработки Для выбора инструкций обработки используйте образец processing-instruction():<xsl:template match="/processing-instruction()"> <I>  Found a processing instruction. </I></xsl:template>Можно также указать, какую именно инструкцию обработки вы хотите выбрать, задав имя инструкции (исключая


Элемент : создание инструкций обработки

Из книги VBA для чайников автора Каммингс Стив

Элемент <xsl:processing-instruction>: создание инструкций обработки При помощи элемента <xsl:processing-instruction> можно создавать новые инструкции обработки. У этого элемента один атрибут:• name (обязательный). Задает имя инструкции обработки. Принимает значение шаблона значений


Узлы инструкций по обработке

Из книги Linux и UNIX: программирование в shell. Руководство разработчика. автора Тейнсли Дэвид

Узлы инструкций по обработке Каждой инструкции по обработке соответствует свой узел. В дерево не включаются узлы инструкций, которые были приведены в декларации типа документа (DTD). Кроме этого, поскольку декларация XML не является инструкцией по обработке, ей не будет


Преобразование как набор правил

Из книги C++ для начинающих автора Липпман Стенли

Преобразование как набор правил В предыдущих главах мы уже упомянули о том, что преобразование в XSLT состоит не из последовательности действий, а из набора шаблонных правил, каждое из которых обрабатывает свою часть XML-документа. Эта глава целиком посвящена вопросам


Создание узлов комментариев и инструкций по обработке

Из книги автора

Создание узлов комментариев и инструкций по обработке Элемент xsl:comment Этот элемент задается конструкцией вида:<xsl:comment><!-- Содержимое: шаблон --></xsl:comment>Элемент xsl:comment создает в результирующем дереве узел комментария. Текстом комментария становится результат


Вставка инструкций SQL в VBA-код

Из книги автора

Вставка инструкций SQL в VBA-код Фрагменты кола, приведенные раньше в настоящей главе, должны были проиллюстрировать, как добавлять инструкции SQL в код, написанный на VBA. Здесь очень важно не забывать о том, что VBA обрабатывает инструкции SQL как текстовые строки, а не как часть


Написание инструкций SELECT

Из книги автора

Написание инструкций SELECT Процесс создания объектов Recordset модели ADO я подробно рассмотрел раньше в настоящей главе. В этом разделе основной акцент будет сделан именно на коде SQL, необходимом для определения того, какие записи относятся к набору. Вам необходимо выполнить


8.1.6. Поиск строк, не соответствующих шаблону

Из книги автора

8.1.6. Поиск строк, не соответствующих шаблону Благодаря опции -v можно отобрать те строки, которые не соответствуют шаблону. Следующая команда извлекает из файла data.f строки, не содержащие последовательность символов "48":$ grep -v "48"


1.2.1. Порядок выполнения инструкций

Из книги автора

1.2.1. Порядок выполнения инструкций По умолчанию инструкции программы выполняются одна за другой, последовательно. В программеint main(){readIn();sort();compact();print();return 0;}первой будет выполнена инструкция readIn(), за ней sort(), compact() и наконец print().Однако представим себе ситуацию, когда