Имя Пароль
Зарегистрироваться


* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна! RSS



Компиляция и исполнение .NET-приложений
7 февраля 2009

Как уже говорилось, во время компиляции .NET-приложений вместо двоичных ма-
шинных кодов генерируется IL-код, который представляет собой набор низкоуров-
невых команд, интерпретируемых CLR. Приложения развертываются в виде одной
или нескольких сборок, которые состоят из исполняемых файлов и DLL, содержа-
щих IL-код. По крайней мере одна из этих сборок должна содержать исполняемый
файл, помеченный как входная точка приложения.
После запуска программы в память загружается первая сборка. Анализируя ее
декларацию, СLR определяет требования для работы программы. В частности, CLR
анализирует разрешения, запрашиваемые сборкой, и сравнивает их с системной
политикой безопасности. Если системная политика безопасности не дает програм-
ме запрошенные разрешения, приложение не запускается, в противном случае CLR
приступает к исполнению кода. Сначала CLR создает процесс, в котором будет ра-
ботать приложение, и начинает исполнять его код. При этом первая порция испол-
няемого кода (в виде команд языка IL) загружается в память и компилируется JIT-
компилятором (Just-In-Time compiler) в машинные коды, специфичные для данно-
го компьютера. Машинный код исполняется и остается в памяти, поэтому каждый
фрагмент кода компилируется не более одного раза во время исполнения приложе-
ния. Каждый раз, когда программа вызывает новую часть кода, которая не испол-
нялась ранее, ЛТ-компилятор заблаговременно компилирует ее и сохраняет полу-
ченный двоичный код в памяти. Такой подход позволяет достичь максимальной
производительности приложения, поскольку компилируются только те части про-
граммы, которые исполняются.

Инфраструктура .NET Framework представляет собой основу для разработки
программного обеспечения. Она состоит из общеязыковой исполняющей среды
(CLR), поддерживающей основные сервисы, необходимые для исполнения про-
грамм, и библиотеки базовых классов .NET со множеством готовых классов, что
значительно облегчает разработку программ. Общеязыковая спецификация
(CLS) определяет минимальный набор правил, которых должны придерживать-
ся все языки, использующие .NET Framework, а общая система типов (CTS) га-
рантирует совместимость типов в компонентах, написанных на разных языках.
• Основной единицей .NET-приложений считается сборка, непременным компо-
нентом которой является декларация. Декларация описывает сборку, а также
один или несколько модулей с исходным кодом приложения.
• Исполняемые файлы в .NET содержат команды языка IL. При загрузке сборки
запрошенные ею разрешения проверяются на соответствие системной политике
безопасности локального компьютера. Если исполнение приложения разреша-
ется, первая сборка загружается в память и компилируется .ЦТ-компилятором в
двоичный код, непосредственно для данного компьютера; этот код остается в
памяти до окончания исполнения программы.

Теги: .NET

Статьи по теме:

Установка порядка передачи фокуса при нажатии клавиши Tab
Работа в редакторе кода
Наборы
Реализация полиморфизма через наследование
Переменные методов
Сборки
Применение методов формы
Работа с фокусом ввода
Конструирование меню во время разработки
Управление лицензированием элементов управления
Реализация специальных возможностей на этапе проектирования
Применение трассировочных переключателей
CBitmapEx – C++-класс для работы с BMP
Использование отладочных инструментов
Конструкторы и деструкторы
| .NET | Pavel |
 


Пн Вт Ср Чт Пт Сб Вс
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31


     



Rambler's Top100

Данный сайт или домен продается ICQ: 403-353-727

© 2009 Seoliga.ru | .NET | Компиляция и исполнение .NET-приложений. Регион сайта: Москва и Санкт-Петербург