Что такое «среда выполнения»?

Я слышал о таких вещах, как «среда выполнения C», «среда выполнения Visual C ++ 2008», «среда выполнения общего языка .NET» и т. Д.

  • Что такое « среда выполнения » точно?
  • Из чего он сделан?
  • Как он взаимодействует с моим кодом? Или, может быть, точнее, как мой код управляется им?

При кодировании языка ассемблера в Linux я мог использовать инструкцию INT для выполнения системного вызова. Итак, является ли среда выполнения не чем иным, как набором готовых функций, которые превращают функцию низкого уровня в более абстрактные и высокоуровневые функции? Но разве это не похоже на определение библиотеки, а не среды выполнения?

Являются ли «среда выполнения» и « библиотека времени выполнения » двумя разными вещами?

ADD 1

Эти дни, Я думаю, что, возможно, Среда выполнения имеет что-то общее с так называемой виртуальной машиной , такой как JVM. Вот цитата, которая наводит на такую ​​мысль:

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

ДОБАВИТЬ 2

Книга Экспертное программирование на C: секреты Deep C . Полезную ссылку на этот вопрос можно найти в главе 6 «Структуры данных времени выполнения».

347
задан smwikipedia 23 April 2018 в 22:31
поделиться