运行时库(runtime library,又称运行期库),在计算机程序设计领域中,是指编程语言程序运行时(执行)所需要的一种特殊的计算机程序库编译器会调用运行时库至已编译的可执行二进制代码中。这种库一般包括基本的输入输出或是内存管理等支持。它是一群支持正在执行程序的函数,与操作系统合作提供诸如数学运算、输入输出等功能,让程序写作者不需要“重新发明轮子”,并善用操作系统提供的功能。

运行时库由编译器决定,以面向编程语言,提供其最基本的执行时需要。比如Visual Basic需要复杂的运行时库支持而C的运行时库则相对简单。当然这还是由编译器厂商决定的。运行时库中的函数可能对程序员透明,也可能不透明。这也是由编译器厂商忖度语言执行环境的需求而决定的。

早期的执行期库(例如Fortran)提供了数学运算的能力。其他语言增加了诸如垃圾回收的先进功能,通常用于支持对象数据结构。

许多近代语言设计了更大的执行环境并添加更多功能。很多面向对象语言也包含了分派器与类别读取器。Java虚拟机(JVM)便是此类的典型执行环境:它也在执行期直译或编译具可携性的二进制Java程序。而.NET架构也是另外一个执行期库的实例。

异常处理(Exception handling)是专门处理执行期错误的语言机制,使程序员可以完全捕捉非预期错误,或没有适当处理的错误结果。

动态链接库静态链接库与运行时库的分类角度不同,不得相提并论。

实例

编辑

一个以Java语言撰写的软件,可借由Java软件执行可预测的指令接收Java执行环境的服务功能。借由提供这些服务,Java执行环境可视为此程序的执行期环境。程序与Java环境都向操作系统提出请求并获取服务。而操作系统核心为它自己、所有行程与在它控制之下的软件提供服务。操作系统可视为自己提供自己执行期环境

参阅

编辑