TensorFlow生产级落地:从静态图编译到可审计ML流水线
2026/9/30 19:59:23
存储分配的对象与策略以及过程的活动记录是编译原理中运行时存储组织的核心内容,用于管理程序执行过程中内存的使用。以下是详细解析:
1. 存储分配的对象与策略
分配对象:
分配策略:
2. 过程的活动记录(Activation Record / Stack Frame)
过程的活动:指一个过程(函数)的一次执行实例,具有明确的开始和结束时间(生存期)。
活动记录:为每次过程调用在运行栈上分配的一块连续内存区域,保存该次调用所需的上下文信息,通常包含以下字段(从低地址到高地址排列):
栈的管理:
补充背景说明:
这部分知识属于编译原理中的“运行时系统”模块,重点解决如何将源程序中的变量、函数映射到实际内存空间的问题。它直接影响目标代码的生成效率与正确性,也是理解现代编程语言(如C的栈帧、Java的JVM栈、Python的函数调用机制)内存行为的基础。
例如,在C语言中,每个函数调用都会在调用栈上生成一个栈帧(即活动记录),若发生递归调用,则多个同名函数的实例各自拥有独立的局部变量空间——这正是栈式动态分配的体现。而malloc和free则对应堆式分配,供程序员灵活控制内存生命周期。