![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| DjoNIK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 320 Регистрация: 28.9.2006 Где: Питер/Георгиевск Репутация: нет Всего: 5 |
Доброго времени суток!
Начал изучать .NET, сразу столкнулся с проблемой недопонимания процесса компиляции. Как я понял все происходит так: 1) Исходный код на любом из CLI-языков компилиться в набор инструций IL. 2) Компилятор создает файл со стандартным PE-заголовком, точкой входа назначается метод Main(). 3) Так как дальше идут не машинные команды, а IL-инструкции, то ставиться заглушка, вызывающая функцию jCorExeMain из mscoree.dll. ----Формирование OUT.exe/OUT.dll файла (это называется сборкой) завершено как я понимаю. 4) При вызове сборки из ОС инструкции доходят до вызова jCorExeMain и эта функция с помощью JITer-а компилирует IL-инструкций в машинные команды и сохраняется в ОП (и это происходит каждый раз, если машинных инструкций не находится в ОП). Поправьте меня пожалуйста, если я что-то не так понимаю... или если я все понимаю не так... или если я, вдруг, все правильно понял сообщите об этом. -------------------- - Плесни-ка мне холодного кипятку. - Как кипяток может быть холодным?! Ты, верно, хочешь кипяченой воды? - Какая ещё кипяченая вода? Не пудри мне мозги - налейхолодного кипятку. (разговор петербуржца и москвича) |
|||
|
||||
| tol05 |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
В принципе ты понял практически правильно, за исключением следующих моментов:
Заголовок включает в себя (в дополнение к стандартному PE-заголовку OC) заголовок CLR. Рихтера почитай, он все более-менее популярно описывает
а также это и это -------------------- На хорошей работе и сны хорошие снятся. |
||||||
|
|||||||
| DjoNIK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 320 Регистрация: 28.9.2006 Где: Питер/Георгиевск Репутация: нет Всего: 5 |
tol05, сапсибо!
-------------------- - Плесни-ка мне холодного кипятку. - Как кипяток может быть холодным?! Ты, верно, хочешь кипяченой воды? - Какая ещё кипяченая вода? Не пудри мне мозги - налейхолодного кипятку. (разговор петербуржца и москвича) |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |