Библиотека среды выполнения

Материал из Википедии — свободной энциклопедии
(перенаправлено с «Библиотека времени выполнения»)
Перейти к: навигация, поиск

Библиотека среды выполнения (также библиотека времени исполнения; англ. runtime library, RTL) — набор библиотек (модулей) той или иной системы программирования, поставляемых вместе с компилятором, операционной системой или средой разработки программ. Как следует из названия, RTL обеспечивает поддержку функций, предоставляемых системой программирования, во время выполнения[en] программы от начала до её завершения.

Современные RTL включают также и свою среду выполнения, где программы выполняются, своеобразную «виртуальную машину», в рамках которой и выполняется программа. Такая система обеспечивает безопасность — все, к чему программа имеет доступ, настраивается политиками безопасности RTL и переносимость — программы пишутся под RTL, а не операционную систему и тем более не под определенный процессор, а перенос RTL на разные платформы — забота разработчиков. Однако, программы при выполнении под RTL часто показывают отнюдь не высокие показатели быстродействия.

Принцип работы[править | править вики-текст]

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

Программа, написанная на управляемом языке программирования сначала транслируется в специальный байт-код, а потом выполняется в RTL.

Многие операционные системы имеют свои RTL.

Некоторые функциональные виды библиотек времени исполнения:

Современные RTL могут комбинировать эти виды, например, JRE и Apache Harmony — RTL для выполнения программ, написанных на языке Java, — обладают всеми вышеперечисленными функциями.