Здравствуйте, pilgrim_, Вы писали:
_>Здравствуйте, Serginio1, Вы писали:
S>>Здравствуйте, tranzit, Вы писали:
S>> Что CLR эмулирует? Он просто компилирует код. Там никакого понятия эмуляции не существут.
_>..
S>> Так объясни мне где в .Net эмуляция, Весь код перед выполнением компилируется.
_>..
S>> Вот это и есть виртуальные машины, который выполняет код предназначенный для других Осей,процессоров.
S>> В VS полно таких эмуляторо и бот они как раз и являются VM.
S>> При этом код компилируется под определенную ось и процессор.
_>..
S>> Вот CLR это как раз среда выполнения, но в ней никакой эмуляции не происходит. Все компилируется в машинный код.
_>Для кругозора:
_>Например есть вот такой CLR для .NET Micro Framework
_>https://github.com/NETMF/netmf-interpreter
_>Вот тут есть обсуждение по поводу AOT и JIT, + AOT для MSIL -> IR (intermediate represenation) — https://github.com/NETMF/llilum
Спасибо я знаю. Изначально речь шлп про .Net. Когда сказали, что .Net включает в себя .Net Native, то стали говорить, что имели ввиду CLR/
Кстати CLR для микрофреймворка называется TinyCLR
Runtime Component Layer
Этот слой состоит из 3-х компонентов:
• .NET Micro Framework common language runtime (CLR);
• Hardware abstraction layer (HAL);
• Platform abstraction layer (PAL).
CLR
Среда исполнения .NET Micro Framework CLR (TinyCLR) является подмножеством .NET Framework CLR. TinyCLR отличается от «большой» CLR тем, что она была специально переработана для использования в небольших встраиваемых устройствах.
.Net Micro Framework Porting Kit поставляется вместе с исходными кодами TinyCLR. Данные коды представляют собой аппаратно-независимую библиотеку, которая может быть скомпилирована разными компиляторами для разных архитектур.
https://geektimes.ru/post/253688/
Вот TinyCLR представляет собой VM.